Евгений Муравьев
февраль 2016.
4048

Как начать программировать? С какого языка программирования начать? Какой язык выбрать для профессионального программирования?

Ответить
Ответить
Комментировать
0
Подписаться
13
4 ответа
Поделиться
АВТОР ВОПРОСА ОДОБРИЛ ЭТОТ ОТВЕТ
Парабола

Прогресс становления разработчика имеет «параболический характер». А опыта — «гиперболический».

A: Сначала энтузиазм находится на вершине параболы: вы написали hello world на нескольких языках и поняли насколько программирование просто. Вы продолжаете играться, накапливая знания. Теперь вы ищете «боевой опыт».

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

C: Вам очень трудно, вы уже жалеете что ввязались в это. Крайне высок риск забить на идею, бросить разработку и вступить во Французский Иностранный легион — дабы не видеть компьютеры хотя бы четыре года.

D: Добро пожаловать в долину отчаяния! Здесь вы без шуток близки к смене рода деятельности, но и как никогда близки к «просветлению», однако еще не видите этого.

D1: Если вы преодолели «долину», ваш опыт (гипербола) наконец-то встретился с энтузиазмом (парабола). Вам все ещё трудно, но вы уже понимаете что неразрешимых задач не существует.

С1: Вы написали Фибоначчи.

B1: Вы научились читать код, а не только писать. И поняли зачем нужны тесты, возможно даже поняли чем интеграционные отличаются от юнит-тестов.

A1: Ваш опыт и энтузиазм уже давно идут вместе. Вы работаете программистом днём, а вечером читаете СИКП. Поздравляю, вы — разработчик!

А если серьёзно, не имеет абсолютно никакого значения какой язык вы выберете. В сущности они очень похожи (есть два больших семейства: потомки ALGOL–Assembler — C подобные, и S-exp–лямбда исчисление — Haskel, Lisp). На старте, порог вхождения, что в С++, что в JS — примерно одинаков, разве что более сложный язык принесёт больше дивидендов в будущем.

Просто выберите предметную область в которой хотите работать (web, бизнес, gamedev), а языки за вас уже выбрало сообщество; в каком-то смысле надо выбрать сообщество, а не язык.

И, да. Виктор Павлов очень прав когда говорит об SQL. Но я добавлю, что лучше учить не SQL, а принципы структурирования данных, одним способов работы с которыми является SQL.

17
-3
Прокомментировать

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

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

Просто для развлечения можно попробовать JavaScript. Он простой, по нему много информации, и не нужно заморачиваться с средами разработки.

3
0
Прокомментировать

Стандартные советы делятся на 2 категории. Одни предлагают начать с PHP потому, что он достаточно легко даётся новичкам. Другие предложат C, C++ - это намного серьёзнее. В реальности лучше начать с SQL. Это язык запросов к базам данных. Например все ответы и вопросы на этом сайте хранятся в базе данных mysql. На этом сайте обращение к базе данных и их обработка лежит на плечах PHP. В приложении для андроида это будет Java. В приложении для IOS этим языком будет Swift (опустим за скобки то, что приложения скорее всего не обращаются напрямую к БД). В конечном итоге любая программа делает, что то с данными. SQL даст вам ключ к пониманию того, где данные а где программа.

8
-6
Прокомментировать

Начать программировать легко. Сначала стоит определиться с тем, какие задачи вы хотите решать своим кодом. 

Если это программирование микроконтроллеров, то однозначно Assembler/Cи. 

Если хотите писать операционные системы, драйвера и прочее низкоуровневое ПО, то Си/С++ (Assembler тоже не помешает). 

Если не хотите зависеть от операционной системы при написании своих программ, которые будут решать более высокоуровневые задачи, то подойдет С++, и, если не важна скорость - Python, Dart, C#. 

Если хотите писать чисто клиентский софт, то С# (Windows, Linux, MacOS) или Dart (Windows, Linux, MacOS, Android, iOS).

Если хотите разрабатывать сайты и веб-приложения, советую  C#, Python, JavaScript. 

Из всей этой кучи я советую выбрать только C#, Python и Dart. Низкий уровень входа, много документации, и почти полное покрытие всех платформ.

0
0
Прокомментировать
Ответить
Читайте также на Яндекс.Кью
Читайте также на Яндекс.Кью