Почему язык программирования вторичен для новичка
Выбор языка программирования — вторичная задача для начинающего программиста. Сейчас в моде Python и JS, но всё не так однозначно.
10К открытий10К показов
Интерес к программированию в тренде. Спрос подогревается разномастными предложениями об изучении востребованных языков. Сейчас в моде Python и JS, но если посмотреть чуть глубже, то всё не так однозначно. Выбор языка — второй вопрос. Первая задача — принять принципы программирования в целом.
Если честно, то чтобы двинуться в сторону разработки, начинать надо с Айзека Азимова и трёх законов робототехники:
- Робот не может причинить вред человеку или своим бездействием допустить, чтобы человеку был причинён вред.
- Робот должен повиноваться всем приказам, которые даёт человек, кроме тех случаев, когда эти приказы противоречат Первому Закону.
- Робот должен заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам.
Вместо робота подставляем название своей блистательной софтины и кода, добродетельные свойства оставляем.
Hello world
Мало кто реально сравнивает изучение языков программирования с лингвистикой, хотя правила те же. Есть логика, семантика, синтаксис, возвышающиеся над всеми языками. Нужно понять, что и зачем следует, научиться мыслить алгоритмами, а потом уже подставлять терминологию, то есть, использовать синтаксис выбранного языка.
Если выучить 100 слов на английском языке, то худо-бедно выпросить еду и ночлег в англоговорящей среде получится. Запустить программу с помощью пары команд без логики не получится. Лучше подойдёт иллюстрация с механической коробкой передач в автомобиле.
Можно яростно бросать педаль сцепления в попытке поехать, глохнуть и расстраиваться, а можно — как в старом мультфильме — меееееедленно отпускать педаль, пока не почувствуешь ключевой момент. Дальше нога привыкнет к нужному углу, где сцепление происходит и движение начинается как по маслу. Знание основ и есть этот ключевой момент сцепления.
А от смены модели авто умение трогаться не растеряется. ?
Все современные языки программирования строятся на единой базе, которую неизбежно придётся принять, чтобы код заработал. Умение писать: log(’Hello, World! ’);
сгодится не везде. ?
Какая бы ни была задача при погружении в кодинг, начинайте с понимания конструирования в целом. Это числа, функции, константы, структура, выражения, модули и неизбежная математика. А потом уже выбор языка, который больше нравится и отвечает требованиям.
Неоднозначный выбор
Подходя к выбору языка программирования, лучше исходить из своих интересов и задач. Если вам нужно сменить профессию, быстро войти в разработку и трудоустроиться, смотрите на требования в вакансиях для джунов.
Динамические языки вроде Python, PHP, JavaScript активно используются в разработке совершенно разных продуктов. Их особенность в гибкости: тип данных и компиляция возможны в процессе исполнения программы.
Правда, не получится выучить какой-нибудь JavaScript и состояться навсегда. Языки меняются, расширяются, разрастаются. Программирование ограничено только вашими возможностями к обучению. =)
Если же задача — изучить кодинг без спешки и на перспективу, то семейство языков Lisp идеально подходит. Синтаксис отсутствует, упор идёт на развитие алгоритмического мышления, построения структур и обработки больших данных. Концептуально осознать программирование помогут именно они. Кстати Лисп создавался для развития искусственного интеллекта и как инструмент востребован в этой области.
С чего начать?
Лучше с базовых знаний о программировании и концептуальных понятий. Любой язык накладывает свои ограничения, поэтому картина может исказиться и сузится.
Затем, исходя из своих задач по входу в профессию, стоит выбирать конкретный язык и нырять в семантику и синтаксис. Если нужно поскорей влиться в работу, то динамические языки из востребованных в вакансиях вашего региона. Если более широко и глубоко взглянуть на программирования, то Lisp-семейство. И пусть ваши роботы соблюдают законодательство. =)
10К открытий10К показов