По каким признакам можно отличить код профессионала от кода новичка

22 февраля, 13:15 Работа 4992 4
По каким признакам можно отличить код профессионала от кода новичка?
4 комментариев
Сортировка:
Добавить комментарий
Viktor Kravchenko
Viktor Kravchenko 2019, 22 февраля, 21:40
0
В первую очередь по его объёму, чем опытнее разработчик, тем изящнее решения. У нас в компании есть такое сравнение с искусством: если какую-то сложную задачу удаётся решить в 2–3 строчки, это можно сравнить с чёрным квадратом ? Следующий и более понятный критерий — повторение. Если в коде есть повторяющиеся фрагменты, то разработчик, скорее всего, неверно спроектировал решение.
Taras Lihun
Taras Lihun 2019, 22 февраля, 20:48
0
1) Внешне — лаконичностью. Профессионал заботится о тех, кто будет читать код. Поэтому классы не превращаются в портянки на 100500 строк, а методы по высоте помещаются на экран. Все именования, начиная с параметров, продолжая переменными и методами, заканчивая классами и пространствами имён, складываются в увлекательное чтение. Такому написанию даже Пушкин бы позавидовал. Сразу понимаешь: как и что делает этот код, какие требования реализует. 2) Код профессионала очень скучный, потому что очень предсказуемый. В нём нет внезапных и невероятных вещей. Например, если при сохранении чека покупки в БД отображаемый список товаров вдруг становится пустым — это весело… но не профессионально. 3) Код профессионала прост и не содержит в себе лишнего. Но не всегда, иногда у профессионала лапки. 4) Профессионал за время работы уже успел написать супер оптимизированный, но неподдерживаемый код, поэтому знает, что преждевременная оптимизация — это зло.
Viktor Kravchenko
Viktor Kravchenko 2019, 22 февраля, 20:14
0
Существует немало книг и методик о том, что такое хороший и правильный код, однако, чёткого определения до сих пор нет. Безусловно, профессионалы выделяются именно красотой и стройностью кода, но как же на глаз различить код опытного программиста и новичка? Есть несколько признаков. Настоящий профи знает, что впоследствии его код будут не раз читать (возможно, даже он сам), править и дополнять, поэтому он всегда оставляет чёткие и понятные комментарии по тем или иным важным аспектам. Почему код грамотного специалиста так точен? Потому что профессионалы последовательны, а новички не стремятся к систематизации и любят всё сваливать, что называется, в одну кучу. А ведь в программировании фраза «разделяй и властвуй» как нельзя более точна. «Каша» из кода может быть даже вполне работоспособной, но только до первой попытки внести изменения или первой нестандартной ситуации. Ещё одно критическое отличие заключается в том, что код искусного программиста легко тестируется. Доступность для тестирования — это важнейший элемент обеспечения качества кода. К примеру, жёсткая связка компонент может отрицательно сказаться на стоимости тестирования. Если компонент отвечает за вычисление заработной платы и напрямую связан с конкретной базой данных, то для его тестирования придётся поднимать всю базу данных. Такое действие потребует большого объёма ресурсов, что может быть неудобно или даже невозможно. Код мастера легко поддерживать, масштабировать и оптимизировать. Новички любят тратить колоссальное количество сил и времени на преждевременную оптимизацию — уже в процессе написания кода. Профессионал же делает это только тогда и там, где это действительно необходимо. Иными словами, «здание» вашего кода можно украшать только после того, как вы возвели добротный фундамент, стены и крышу.
Seroga Proga
Seroga Proga 2019, 22 февраля, 19:21
0
На разных этапах развития программист ставит перед собой определённые цели, и это находит отражение в том, как он использует инструментарий. На самом первом этапе цель одна: решить задачу любыми способами, используя имеющиеся знания. Основные характеристики кода этого периода — часто запутан и примитивен, не соблюдён кодстайл. Также его отличает скудное именование переменных, не отражающее сути. На втором этапе появляется жажда развития: программист изучает новые инструменты, совершенствует старые. И все новшества проявляются, естественно, в рабочем продукте. В этот период код становится более грамотным, иногда даже чересчур, что увеличивает сложность восприятия другими членами команды. Кроме того, код отличает соблюдение принятого в команде кодстайла и наличие пометок-комментариев для сложных участков. Однако, специалист демонстрирует нестабильность подхода к решению задач, так называемый «зоопарк технологий».

IT Новости

Смотреть все