поисковик

Хочу стать программистом. Какой лучше учить язык, какой из них имеет будущее?

Ответить
Ответить
Комментировать
1
Подписаться
9
5 ответов
Поделиться

Программисту важно уметь быстро освоить язык и технологии при надобности, а чтобы это уметь надо хоть какой-нибудь язык выучить.
Я бы советовал начать с Си или паскаля. Си классический язык без принудительного ООП (это хорошо, когда программа большая, но  это усложняет жизнь при обучении) и он является дедушкой почти всех современных языков программирования. После него вы изучите ООП (объектно ориентированное программирование) и вы сможете быстро освоить другие. Познаете Си, познаете силу работы с памятью. Паскаль язык малоиспользуемый нынче, но он простой, проще, чем Си, он хорош для обучения и по нему можно найти много литературы на русском языке.
Какой язык имеет будущее тяжело сказать, поскольку прогнозирование дело не благодарное. Языки программирования зависят от сферы, где вы будете программировать - станете Дата Саентистом - вам потребуется Питон, R и возможно SQL, пойдёте в веб разработчики, потребуется HTML,CSS, Javascript, PHP/Python или даже Go. Захотите игрушки разрабатывать C++/C#. Захотите железки программировать (микроконтроллеры) - вам потребуется си и ассемблер.

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

Программист должен владеть различными языками. Не надо спрашивать, просто учите всё подряд, пока возраст позволяет. Чем больше разных подходов к программированию складируется в голове, тем лучше.

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

Я бы учил парочку языков - что-то из мейнстрима, для работы и что-то из экзотики, для души и на случай что это выстрелит в будущем.

Мейнстрим

Для старта python идеален, простейший синтаксис, отсутствие глюков, достаточно вакансий.

JavaScript похож на Python, но похуже, посложнее, больше непонятностей, но в плане реальных вакансий у него большой отрыв.

Ruby, Perl - похожи на python, но, судя по всему умирают потихоньку

Java и C# - более тяжёлый и громоздкий синтаксис, непонятная новичку стадия компиляции и сопровождающие её трудности, потихоньку стагнируют, но в плане денег самые интересные.

Я бы НЕ советовал начинать с C и Pascal и уж тем более C++.

Паскаль вообще мертвый язык, C и C++ имеют свои ниши надолго, но имеют свои трудности затрудняющие понимание. Некоторые люди не способны полностью изучить их никогда вообще из-за этих особенностей.

Это был мейнстрим, далее пошла экзотика.

Если уж очень хочется быть ближе к железу, то возможно стоит начать вообще с ассемблера, например, с игровых версий - Human Resource Machine, Tis-100, Czhenzhen.io

Так называемые новые си - Rust и Golang

весьма интересные, но рискованные - это лотерея либо будут бурно расти либо угаснут, вакансии вроде бы есть но маловато.

Функциональные языки - Haskell,Scala,Erlang,F# - с одной стороны их даже проще изучить чем Python и C++, с другой стороны очень сложно и вакансии есть только у Scala более-менее

Узкоспециальные языки - R, 1C не очень понятно что с ними будет

возможно в будущем будут популярны другие компьютеры, построенные на другом принципе - квантовые, тогда нужно учить языки для квантовых компьютеров - Q# например.

3
0

Я бы не сказал, дельфи еще пилится, ну и вакансии есть. Но язык явно не популярный, но он прост в освоении. Главное не сидеть на паскале долго

0
Ответить

Я бы не сказал что Java стагнирует (среди всех языков ответственно могу говорить только про этот). Порог входа выше, но это не блокер.

0
Ответить

Готов поспорить по поводу того, что первым языком нежелателен С. На мой взгляд, именно с него следует начинать, тк синтаксис схож с большинством языков, наглядно и детально покажет как что работает и что для чего нужно. Но это смотря что учитывать. Согласен, что язык весьма особенный и может быть непонятен, но если это преодолеть, то будет найс. Пайтон я бы не посоветовал, тк он как раз не даёт понимания работы важных понятий (например, работа с памятью и всё в этом духе). Язык очень хорош, но я бы порекомендовал его тем, кто уже имеет хоть какой-то опыт. Для меня у змеюки есть 2 преимущества. 1 - синтаксис, который читается почти как английский. 2 - комьюнити. Оно у языка реально огромное. Язык приспособлен для много и так же много библиотек. Хочешь веб? Пожалуйста. Хочешь программку быстро написать? Запросто! Но я бы не доверил ему что-то ответственное и высоконагруженное. Возможно, многие не согласятся со мной. Сам начинал с С, а потом на плюсах. Слишком уж сильно эти 2 языка запали мне в душу)

+2
Ответить
Ещё 1 комментарий

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

+2
Ответить
Прокомментировать

Зависит от специальности. Сперва выберете, что хотите разрабатывать, а потом уже углите стек технологий для этого. Как варианты, и то не все: веб-разработка, прикладная под любую из ОС, системная (т.е. драйверы и мельчайшие части высоконагруженных программ), видеоигры, скрипты, на какое устройство....

5
-2
Прокомментировать

Разные области программирования требуют разного уровня навыков. Если вы  хотите думать поменьше и просто приходить на работу, садиться, что-то  печатать-печатать-печатать не сильно напрягаясь и получать за это  деньги, то сейчас лучший вариант - это фронт-енд. Тогда учить нужно  HTML, CSS, JavaScript и разные инструменты, которые вертятся вокруг  этого всего. Если хорошо устроетесь по работе, то будете делать  однотипную работу (программировать внешний вид сайтов) и получать вполне неплохую зарплату.

Если вы хотите более высокий уровень, то наилучший вариант на данный момент - это начать программировать на C# (читается как "си-шарп").

Почему не JavaScript? Потому что это убогий язык,  работа с которым убивает правильный подход к программированию и очень  сильно подталкивает к тому, чтобы быть недо-программистом.

Почему не PHP? Потому что бэкенд-программирование - это специфический опыт со специфическими  требованиями (REST, stateless). Программирование на PHP содаст  искажённое представление о структуре и архитектуре программы  (собственно, архитектуры там, можно сказать, почти что нет). Примерно аналогично и с Python.

Почему не C++? Потому что это очень обширный и требовательный язык. Работая с ним вы гораздо больше будете мучаться с нюансами языка, нежели учиться самому программированию.

Почему именно C#? Потому что C# позволяет  разрабатывать полноценные программы практически в любой сфере  деятельности (десктоп, сервер, андроид, айфон), это достаточно хороший  современный язык. Программирование на C# развивает навыки "правильного"  программирования, которые в дальнейшем пригодятся, если вы захотите  стать специалистом в серверном, прикладном или (в меньшей степени) системном программировании. C# проще, чем C++; C# позволяет  концентрироваться на программе, вместо того, чтобы думать о памяти и  указателях. Если в дальнейшем вам потребуется C++, предварительный опыт C# всё равно не будет лишним.

3
-1

Примерно аналогично и с Python

Почему тогда он стабильно в тройке рейтингов TIOBE и IEEE Spectrum?

0
Ответить

Видимо, потому что он хорошо справляется со своими задачами.

То, что язык востребованный - не означает, что нужно на его примере учиться программированию. В топах также и C и (несколько пониже) JavaScript. Тем не менее, это не лучшие языки для ученика.

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