Хватит пропускать мелкие детали - PullRequest
12 голосов
/ 10 октября 2008

По сравнению с большинством людей на этом сайте я, по общему признанию, новичок. Я хотел получить совет от профессионалов, как избежать глупых ошибок в вашем коде.

Есть ли еще кто-нибудь, у кого была проблема, когда они впервые начинали пропускать некоторые детали, которые вызывают большие проблемы? Существуют ли какие-либо привычки или поведение, которые помогли вам преодолеть это?

Ответы [ 26 ]

34 голосов
/ 10 октября 2008

Вот список распространенных ошибок и / или предложений, чтобы их избежать:

  1. Опыт, лучший способ избежать ошибок - это уже случиться с вами.
  2. Просмотр кода других людей
  3. Попросите других людей просмотреть ваш код
  4. Используйте систему контроля версий, даже если вы являетесь единственным разработчиком
  5. Просмотрите все ваши изменения перед выполнением фиксации управления исходным кодом
  6. Подумайте об использовании более современного языка, чтобы вам было труднее совершать ошибки
  7. Комментируйте свой код экстенсивно
  8. Рефакторинг вашего кода рано и часто
  9. Исправление ошибок перед добавлением функций
  10. Создавайте обширные тестовые случаи, потому что знание ваших ошибок поможет вам быстрее избежать будущих ошибок.
  11. Изучайте и используйте шаблоны проектирования.
  12. Избегайте дублирования кода любой ценой, старайтесь никогда не копировать / вставлять блоки кода
  13. Прочитайте о конкретных распространенных ошибках на языке программирования, который вы используете
11 голосов
/ 10 октября 2008

Я нашел написание кода или алгоритмов на бумаге или, по крайней мере, в своей голове, прежде чем приступить к кодированию. Это немного проясняет проблему, и вы не просто запускаетесь и начинаете кодировать, когда, возможно, допустите глупые ошибки, будучи слишком нетерпеливыми.

10 голосов
/ 10 октября 2008

Я обнаружил, что если я прочитал различия на всем моем коде непосредственно перед тем, как передать его на контроль версий, я почти гарантировал на обнаружение некоторых ошибок. Удвойте этот эффект (по крайней мере), если кто-то еще просматривает код перед проверкой.

5 голосов
/ 10 октября 2008

Рецензирование кода и модульное тестирование. Только опыт поможет вам перестать делать ошибки, но эти вещи помогут вам узнать об ошибках, которые вы делаете рано.

5 голосов
/ 10 октября 2008

Это похоже на все остальное, что вы будете делать в жизни. От сжигания на фритюрнице в местном магазине быстрого питания до предпринимателя в его / ее третьем стартапе.

Делайте ошибки , учитесь у них и лучше сами - не игнорируйте их .

4 голосов
/ 10 октября 2008

Я обнаружил, что если у меня возникнут какие-то особые проблемы с попыткой исправить ошибку или обдумать проблему, я возьму 5-минутную передышку. К тому времени, когда я что-нибудь выпиваю или просто расслабляюсь и возвращаюсь к проблеме, я склонен быть более сосредоточенным и менее напряженным.

4 голосов
/ 10 октября 2008

Я добавлю еще один голос к «практика совершенствуется», но с небольшой поправкой:

совершенство практика совершенствует - родственное изречение «практика делает постоянным», поэтому, другими словами, убедитесь, что то, что вы практикуете, это хорошие навыки кодирования, которые сокращают количество ошибок:

  • модульное тестирование
  • удобочитаемое форматирование кода
  • полезные имена переменных
  • управление исходным кодом для истории изменений

и так далее. Я также настоятельно рекомендую взглянуть на хорошие проекты с открытым исходным кодом и посмотреть, как они организуют и управляют кодом. Хорошие примеры еще важнее учиться, чем видеть ошибки других людей: -)

4 голосов
/ 10 октября 2008

Как и большинство других приобретенных навыков, практика совершенствует. Продолжайте тренироваться.

2 голосов
/ 10 октября 2008

Вы делаете хорошее начало - понимая, что вы не поняли все это. Никто из нас не делает.

Убедитесь, что вы понимаете домен - это сразу устранит некоторые ошибки. Знайте, что вы решаете, и затем попытайтесь разработать решение.

Есть подход к развитию. Я использую тестовый подход, но это не единственный способ. Это дает мне встроенную проверку, что я все еще в курсе. Я использую своих сверстников, чтобы отразить идеи, я раньше использовал парное программирование и нашел ценность в этом.

Если вы разработаете систему для минимизации «глупых» ошибок, вы обнаружите, что они исчезнут. Может быть, контрольный список будет работать. Персональный процесс программного обеспечения поощряет такой подход. Попробуйте и посмотрите, работает ли он.

Мне нравится записывать свои мысли перед тем, как передать их в код. Мне нравится, что мои сверстники вначале показывают мне, почему я не прав в своих мыслях. Если они не могут, я вполне уверен, что устранил некоторые возможные препятствия.

МНОГО этого будет происходить из опыта, в основном из-за того, что вы делаете то, что делаете, и учитесь на своих ошибках!

2 голосов
/ 10 октября 2008

Избегайте побуждения начать писать код, прежде чем вы полностью поймете проблему. Если вы понимаете только часть проблемы, вы, вероятно, потратите время на доработку дизайна позже. Получите ясную картину в уме или на бумаге, затем начните кодировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...