С чего начать изучение программирования, какой язык выбрать, что востребовано, как учиться?

Stepan Mikulov

Administrator
Команда форума
Итак, вы решили, что вам нравится программирование, сели за комп, и.. впали в ступор, потому что не знаете, с чего начать.
Первое главное правило: если хотите стать программистом(вообще, любым специалистом), научитесь добывать, фильтровать и усваивать информацию. То есть вашим первым шагом должен быть запрос к дяде Гуглу (Яндексу, Рамблеру и т.п.) должен быть "с чего начать программирование". Поисковик вам выдаст миллионы страниц с ответами. Разумеется, все вы никогда в жизни не прочитаете. Выберите оттуда 10-15 статей и 5-10 форумных тем с большим количеством ответов и прочитайте их - там все разжевано и расписано. Если вам это лень делать, можете включать любимую игрушку и забыть о программировании, потому что вы просто не сможете работать программистом, не умея работать с информацией.

Если же вы прочитали все это, то должны были себе взять на заметку, что для того, чтобы начать программировать, нужно:
1)
поставить себе цель (для чего вы хотите научиться? вы хотите написать какую-то игрушку или сайт? Или хотите программировать микроконтроллеры? Или вы еще не можете выбрать отрасль программирования, которая вам интересна?). Игрушка(самая распространенная причина у подростков стать программистами) - это вещь достаточно сложная и долгая (вы же хотите не тетрис создать, а супер-пупер онлайн проект, в который играют миллионы) - так что забудьте о ней на время. В ЛЮБОМ случае, чем бы вы ни захотели заняться, вам придется изучать самые азы программирования.

2) выбрать язык программирования. Так как мы с вами выяснили, что вам придется изучать самые азы программирования, то язык не столь важен. Можете выбирать любой. Но не зря в школах, колледжах, ВУЗах и других учебных заведениях первыми преподают Паскаль или Си. Паскаль изначально создавался для обучения студентов программирования, а посему он, ИМХО, весьма хорош для начала. Также можно начать с Си - для того, чтобы потом не переучиваться на другой синтаксис, потому что очень много языков программирования Си-подобные. Не надо в панических поисках, какой же язык лучше, плодить еще более бесполезные, к тому же холиварные темы, "один язык vs другой язык". Каждый будет хвалить свой любимый язык или спрашивать, с какой целью вы хотите научиться программированию, потому что разные языки являются лишь инструментом, и заточены под определенные задачи. Но вы-то ответите, что хотите написать игру, и вас поймут неправильно, начнут вам советовать DirectX или еще какую-нибудь штуку, до которой вам учиться и учиться. Запомните: вы хотите изучить АЗЫ ПРОГРАММИРОВАНИЯ!

3) после выбора языка вам нужно скачать IDE - среду разработки. Не нужно снова лезть на форумы с вопросом "какая IDE лучше?". Скачайте любую подходящую под ваш язык. Потом вы поймете ее недостатки и, возможно, измените свой выбор. Но это потом, когда вы уже начнете понимать, что вы делаете. Почему я советую именно так? Да потому что в подобных поисках "а какая IDE(язык, книга) лучше?" все на этом и останавливается. Потом вы сами поймете что лучше. На своем опыте. Потому что это не тот случай, где нужно учиться на чужом. Одному нравится это, другому - другое. Не факт, что вам это подойдет. И вы разочаруетесь.

4) теперь ищем книги по теме. Книги по языкам есть в каждом разделе данного форума (думаю, на других тоже есть). Не нужно качать миллион книг. Скачайте одну. Не "Программирование за 21 день" и не "Программирование для чайников". Остальное катит. Ну, в разумных пределах, конечно. Не нужно сразу брать книги, типа "Нестандартные алгоритмы" или "Углубленное изучение такого-то языка" или "Сокеты на таком-то языке". Нет. Вам нужны книги с названиями "Программирования на таком-то языке" или им подобные. (Не стоит брать Страуструпа, если вы хотите изучить С++. Для человека, который шарит хоть в одном языке, эта книга незаменима. Для новичка - это просто темный лес, поэтому если не хотите мучаться, берите кого-то подружелюбнее).

5) итак, книга у вас есть. Не знаю, почему, но сколько мне приходилось читать книг, они все по своей структуре отличаются от структуры преподавания языка в учебных заведениях. Но я рекомендую именно ее. Не нужно начинать с ООП (объектно-ориентированного программирования). Структура такова:
а) объявление, ввод, вывод переменных
б) операторы ветвления
в) циклы
г) массивы
д) структуры
е) работа с файлами
ж) ООП (классы)
 
Сверху