Как научиться программировать в 2019 году? Best practices
Если ты ступил на путь программирования, то первые шаги могут испугать. Перестаем бояться и стремимся только вперёд – к захватывающим вершинам!
Перед началом имей в виду – первые несколько месяцев тебе будет казаться, что ты пытаешься подняться на непреодолимую вершину. Наберись терпения и успокойся, все проходят через это.
Почему ты хочешь программировать?
Потрать некоторое время, чтобы подумать о реальных причинах изучения языка программирования. Будь честен с собой. Ты пытаешься узнать минимум, чтобы получить повышение на работе? Ты хочешь больших изменений в карьере? Или мечтаешь создать крутое приложение?
Ответ на вопрос может помочь определить, какой ЯП нужно освоить. Например, если ты мечтаешь создать новую ОС или альтернативу PhotoShop, выбирай формальное компьютерное образование, которое научит тебя C++ (более сложным темам: структурам данных, алгоритмам и распределению памяти).
Если ты хочешь просто сменить род деятельности, то курсы или буткемп принесет больше плодов, чем получение второго образования. А если все, что тебе нужно, – это написать пару сайтов или поиграться с Raspberry Pi, то будет достаточно комбинации туториалов и бесплатных онлайн-курсов.
Выбери язык программирования
Хоть и не существует одного универсального языка для изучения, есть языки, которые “даются” юзеру быстрее.
HTML и CSS считаются самыми легкими точками входа в мир прогерства, но они полезны только для разработки сайтиков.
Для сайтов с интерактивностью, платежными системами или базами данных тебе придется знать JavaScript, PHP, SQL и Python, чтобы заставить все компоненты работать. Мобильные разработчики используют Swift или C для создания приложений на iOS и Java/Kotlin – на Android. Видеоигры создаются на Unity или C#.
Все еще не определился? Большинство профессионалов рекомендует начать с изучения Python, C# или JavaScript, поскольку они самые универсальные и гибкие. Основная идея – нужно просто начать чему-то учиться. Как только дело пойдет, ты сможешь подобрать следующий ЯП, быстрее и удобнее.
Развивай логику
Программирование = логика, будь то написание программы с нуля или поиск спрятавшейся в коде ошибки.
Да, мы могли бы порекомендовать развивающие настольные игры или компьютерные стратегии, но это очевидно и так. Здесь мы поделимся подборкой наших материалов с задачами, которые позволят держать мозг в тонусе:
- Разомни мозг: 5 логико-математических задач
- Логика в программировании: логические задачи с собеседований
- Логические и математические задачи с собеседований
Обзаведись литературой
Многие разработчики утверждают, что именно бумажная версия очень помогла им на старте карьеры.
Роберт Мартин "Чистый код"
Книга научит писать код, который будет легко поддерживать и развивать. Тебя ждет много примеров, изучив которые, ты сможешь отличить плохо написанный код от написанного хорошо и узнаешь, как первый переделать во второй.
Кормен Томас «Алгоритмы. Построение и анализ»
Книга написана понятным языком, так что любой сможет найти именно тот материал, который его интересует. Описание алгоритмов дополняется псевдокодом для реализации на используемом ЯП.
Кормен Томас – Алгоритмы. Построение и анализ
Дональд Кнут «Искусство программирования»
Отличительной особенностью книги является обилие упражнений для самостоятельной работы разной степени сложности, начиная от простых задачек «для разогрева» и заканчивая задачами по актуальными вопросам по разработке.
Дональд Кнут – Искусство программирования
Обучающие видео
Многим легче наблюдать за процессом создания кода: им это приносит больше пользы. Может, и ты относишься к числу таких учеников. В настоящее время ты сможешь найти видосы почти на любую тему: гугловцы делятся опытом, стримеры транслируют свои марафоны по программированию, а некоторые даже обучают устранению конкретной ошибки на любом языке.
Например, этот плейлист поможет вам настроить React для MacOS:
А здесь настоящий кладезь знаний из 165 уроков для тех, кто только начинает изучать Python:
Самый понятный набор роликов по C#:
"Уроки Java" помогут быстро разобраться в одном из самых популярных языков программирования:
Для фронтенд-разработчиков уроки по работе с CSS подойдут как нельзя лучше:
Вот такой гайд на несколько ближайших месяцев. Усердно трудясь и следуя изложенному маршруту, у тебя обязательно появится прогресс.