Найти тему
Войти в IT

ТОП-10 ошибок начинающих программистов. Как писать работающий код с первого раза?

Оглавление

Сегодня короткая статья на тему классических ошибок начинающих программистов. В принципе, все программисты в процессе своего обучения наступают на одни и те же грабли, проходя похожий путь. Но не все готовы делать выводы, и не все готовы расти как специалисты - кому-то проще продолжать делать странные вещи, потому что это просто привычно. Ну и как сказал один мой знакомый: "умные учатся на чужих ошибках, а дураки - на своих". Так не будем же дураками (и правда, кому от этого будет лучше?).

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

Чрезмерное усложнение кода 🤯

Начинающий программист часто стремится проявить себя, написав сложный код, который, типа выглядит круто. К сожалению, легко забыть, что слишком сложный код трудно тестировать и ещё труднее поддерживать. Сложный код менее эффективен, менее предсказуем, менее гибок и менее универсален. Длинный код-лапша плох абсолютно во всём, кроме заигрывания с чувством собственного величия. Сказать больше - грех!

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

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

Написание кода без плана 😱

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

Сегодня всё чаше звучат заманчивые лозунги о том, что надо поскорее выпускать MVP - и тестировать всё новые и новые гипотезы. Но даже это не должно быть отправной точкой в написание треш-кода. Попробуй сначала нарисовать на листе А4 то, что ты хочешь запрограммировать - а потом начинать фактическое программирование. В конечном итоге, если ты не знаешь, куда должен приплыть твой корабль - как он сможет попасть туда куда ему надо?

Плохое комментирование кода 🤪

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

Игнорирование тестирования 😤

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

Использование сложной IDE 😲

Начинающие программисты часто склонны выбирать сложные IDE с множеством ненужных функций, руководствуясь принципом "сложнее - значит лучше". Новичку может хватить и простого редактора вроде Sublime Text или VS Code. С личной точки зрения, начинать надо вообще с блокнота.

Не нужно думать, что чем более навороченную среду разработки ты выберешь - тем более качественным будет твой код. Скорее, наоборот. Искусство программирования предполагает первоначальное рождение алгоритма и концепции внутри твоей головы, и только потом перенос этой концепции в текстовый файл кода. Смотри не перепутай!

Копирование кода из Stack Overflow 🤓

Хотя Stack Overflow - бесценный ресурс для разработчиков, бездумно копировать оттуда код - не лучшая практика по целому ряду причин. Во-первых, представленные фрагменты кода могут не вполне соответствовать твоим конкретным потребностям или быть не самым эффективным решением твоей проблемы.

Бездумное копирование кода со StackOverflow мешает твоему обучению и способности решать проблемы, делая тебя зависимым от заранее написанных кодов. Чем больше кода ты копируешь не думая над его содержимым - тем большее количество практического опыта ты упускаешь как специалист.

Ну и конечно же, скопированный код может иметь уязвимости, вызывать неожиданное поведение или содержать баги. Очень важно понимать, что именно ты внедряешь, чтобы впоследствии это действительно работало так как тебе нужно, а не так как "как-нибудь как-то так".

Неспособность обратиться за советом 😵‍💫

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

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

Недостаточное знание основ 🥴

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

Это не значит, что надо утопать в бесконечной теории и зачитываться олдскулл-книгами (по крайне мере, я так не считаю). Но всё-таки, программировать при полном отсутствии базовых знаний - не очень-то хорошая идея.

Отсутствие внимания к деталям 🙄

Программы состоят из множества частей, включая синтаксис и семантику. Невнимание к деталям может вызвать серьезные проблемы, которые приведут к поломке программы. Пожалуйста, постарайся хотя бы не называть переменные вроде a,b,c,d - давай осознанные имена методам и функциям. Помни, что твою программу рано или поздно увидят другие люди.

Игнорирование документации 😴

Да кто вообще читает инструкции? А вот и нет - поверь, это нужно делать. Перед тем, как впиливать очередную библиотеку в свой проект, или запускать продукт на базе новомодного фреймворка - потрудись почитать техническую документацию и особенности данного продукта. Бездумное вливание в проект бесконечного кода стороннего производства, без понимание зачем этот код нужен, и как он работает - верный путь вникуда.

---

В заключение хочу сказать, что программирование - это обширная область с бесконечными возможностями. Будучи начинающим программистом, крайне важно избегать распространенных ошибок, которые поглощают твоё время и скукоживают качество конечного продукта. Чем меньшее количество банальных ошибок ты совершаешь, тем лучше становится мир вокруг тебя.

Начинающий программист зачастую бывает удивлён ошибкам в своём коде - или неочевидной логике работы своих программ. Но не стоит отчаиваться - обучение это путь. Рано или поздно твои программы будут быстры, точны и стабильны.
Начинающий программист зачастую бывает удивлён ошибкам в своём коде - или неочевидной логике работы своих программ. Но не стоит отчаиваться - обучение это путь. Рано или поздно твои программы будут быстры, точны и стабильны.

🔥 Понравилось? Подпишись! Победим восстание роботов вместе! 🔥

-2

🚀 P.S. Ты можешь круто поддержать меня и проект "Войти в IT" на boosty! Я публикую там более эксклюзивный и профессиональный, иногда немного личный контент. Хочешь посмотреть как я выгляжу в реальной жизни? Тогда жми: Ссылка 🚀

P.S.2 У меня ещё есть Telegram-канал. Там посты чуть попроще, и чуть повеселей. Ссылка