Вы новичок в программировании и хотите сделать следующий шаг? Вот некоторые из лучших привычек, которые я принял, и как они сделали меня не только лучшим программистом, но и более профессиональным специалистом.
7 Начните с прочной основы
Когда я только начинал программировать, я попал в ловушку спешки и сразу перешел к более интересным вещам, таким как фреймворки и сложные инструменты. Мне хотелось создавать крутые приложения и блестящие веб-сайты прямо с начала. Поэтому я старался как можно больше пропустить скучного материала.
Однако в какой-то момент я осознал: я мог копировать и вставлять код, чтобы он работал. Но это был просто «спагетти-код», хаотично собранный, едва функционирующий без какой-либо оптимизации. Я не мог самостоятельно решать возникающие проблемы. В итоге мне приходилось снова и снова возвращаться к основам.
Один из способов построить эту основу — это ставить перед собой простые задачи, прежде чем переходить к более крупным проектам. Платформы, такие как HackerRank и CSES, отлично подходят для этого. Еще одним важным аспектом создания основы является глубокое изучение одного языка программирования, прежде чем переходить к другим.
6 Больше думайте, чем пишите код
Когда вы хотите что-то создать, вы, вероятно, открываете редактор кода и начинаете писать код. Мы делаем это, чтобы быстро увидеть ощутимый результат. Однако из моего опыта я заметил, что это часто приводит к неаккуратным, незавершенным или даже полностью неправильным решениям.
Одна из проблем, с которой я постоянно сталкивался, заключалась в том, что в какой-то момент я понимал, что не учел тот или иной случай при написании решения. Мне приходилось начинать все заново. Если бы у меня была общая высокоуровневая схема, прежде чем я написал код, этого не произошло бы.
Программирование — это не только написание кода. Это создание решения для проблемы, часто с учетом определенных ограничений. Как и в любом сложном вопросе, лучшее решение приходит от четкого, продуманного анализа. Из одной из моих любимых книг, «Прагматичный программист»:
Чтобы быть прагматичным программистом, мы бросаем вам вызов: думайте о том, что вы делаете, пока вы это делаете... Никогда не работайте на автопилоте. Постоянно думайте, критикуйте свою работу в реальном времени.
Одним из способов, который сделал меня более умелым в решении задач, стало написание псевдокода перед тем, как приступить к написанию настоящего кода. Например, при разработке сложного алгоритма я быстро набрасываю логический план на простом языке.
5 Учитесь по официальной документации
Когда я только начинал программировать, я избегал официальной документации как чумы. Она казалась мне слишком сложной, полной жаргона и откровенно скучной. Я предпочитал интересоваться туториалами и видео на YouTube. Но когда я начал работать над реальными проектами, я понял, что туториалы лишь касаются поверхности. Если я хотел в полной мере понять язык, фреймворк или инструмент, то официальная документация была моим наилучшим ресурсом.
Официальная документация — это руководство пользователя, написанное людьми, создавшими изучаемый язык или инструмент. Туториалы обычно сосредоточены на конкретных случаях использования, а документация показывает вам все возможности технологии, включая функции, о которых вы, возможно, не знали.
Например, когда я впервые изучал Python, я сильно полагался на туториалы для понимания основ. Но когда я начал использовать библиотеки, такие как pandas, я обнаружил, что мне нужно больше, чем просто примеры. Документация по pandas стала для меня настоящей опорой.
4 Пишите чистый код
В сообществе программистов существует шутка. Если ваша программа работает, не трогайте ее. На самом деле это просто шутка.
Когда я начинал заниматься программированием, я попробовал свои силы в конкурсном программировании. Хотя мне это нравилось, я перенял много плохих привычек. В большинстве случаев сделать так, чтобы программа заработала, было единственным важным моментом. Если код работал без ошибок, я считал это успехом, даже если это был запутанный клубок переменных и «волшебных» чисел. Но когда я начал работать над реальными проектами, я понял, насколько важен чистый код.
Чистый код делает ваши программы легкими для чтения, отладки и сопровождения. Существует множество лучших методов, принципов и конвенций, которые этому способствуют. Например, описательные названия для переменных и функций, хорошая документация, последовательный стиль кодирования и многое другое. Посмотрим на пример неаккуратного кода.
Он работает. Но можете ли вы что-то с ним сделать? Вероятно, нет. А теперь взгляните на более чистую версию:
Эта версия намного более понятна. Именно так написание чистого кода может полностью преобразить ваши проекты.
3 Развивайте навыки отладки
Независимо от того, сколько опыта вы приобрели как программист, отладка является неотъемлемой частью процесса. Я потратил множество часов на поиски скрытых ошибок, которые казались явными. В начале отладка казалась мне раздражающей. Со временем я научился подходить к этому стратегически.
Первый шаг к отладке — замедлиться и внимательно посмотреть. Раньше я спешил в свой код, слепо изменяя строки, надеясь, что что-то сработает. Это редко срабатывало. Вместо этого начните с вопросов. Какую задачу должна решать программа? Что она делает? Где поведение отклоняется?
Существует несколько инструментов и техник, которые делают отладку менее пугающей. Вызов print() часто является первой линией защиты. Еще одной полезной техникой является отладка с помощью «резинки», когда вы шаг за шагом объясняете свой код неживому предмету или человеку. Часто простое формулирование проблемы вслух открывает решение. Я решал ошибки, просто объясняя их самому себе.
2 Общайтесь с другими программистами
Когда я только начинал программировать, я считал этот путь одиночным. Хотя программирование часто требует сосредоточенности в одиночку, моменты, когда я больше всего развивался, пришли от общения с другими программистами.
Я присоединился к множеству групп программистов в Facebook, серверов Discord и сабреддитов (рекомендуется r/learnprogramming). Когда я сталкиваюсь с проблемами, я могу попросить о помощи. В свободное время я также стараюсь вносить свой вклад в сообщество, чтобы начинающие могли получать помощь, как это было со мной.
Однажды я получил предложение о работе в программировании исключительно через нетворкинг. Это был один из крупнейших проектов, над которыми я работал, и я многому научился в процессе. Я также встретил замечательных программистов на хакатонах и перенял у них новые знания и стратегии.
1 Создайте что-то, что решает реальную задачу
Одним из самых важных аспектов программирования является возможность превращать идеи в инструменты, которые облегчают жизнь. Вы можете бесконечно смотреть туториалы или читать книги, но ничто не сравнится с тем опытом, который вы приобретаете, решая реальную проблему. Именно тогда теории, синтаксис и алгоритмы действительно оживают.
Вы можете найти реальные проекты разными способами. Какие проблемы беспокоят вас? Можете ли вы решить их, создав приложение? Спросите своих друзей и родственников об их неудобствах. Вы также можете зайти на GitHub и найти проекты с открытым исходным кодом.
Когда я начал изучать Java-бэкэнд с использованием Spring Boot, я решил создать аграрную систему для автоматизации множества задач. Я узнал много всего, чего не узнал бы из туториалов.
Когда вы новичок в программировании, легко попасть в ловушки и допустить ошибки. Приняв хорошие привычки и извлекая уроки из опыта, вы получите ощутимое преимущество. Это сделает вас лучшим программистом.
Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!
Любите активный отдых на природе? Подписывайтесь на канал Поход лайфхак в Яндекс Дзен — кладезь полезных советов для любителей активного отдыха!
Вы также можете читать наши материалы в:
- Telegram: https://t.me/gergenshin
- Яндекс Дзен: https://dzen.ru/gergen
- Официальный сайт: https://www-genshin.ru