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


Начинающие программисты часто задаются вопросом: «А с чего начать, какой язык учить первым?». На эту тему уже есть много статей. Но в них очень много текста, который, конечно, относится к теме выбора языка, но начинающего программиста может только запутать.

В этой статье я постараюсь ответить на этот вопрос кратко и по делу.

Подбирать язык я буду по 3 критериям:

  • Простой синтаксис  — для простого изучения.
  • Похожий на другие языки  — чтобы можно было перейти потом на другой.
  • Функциональный  — чтобы сразу начать программировать реальные вещи.

Выбирал я из 6 вариантов:

  • Java
  • Java script — в двух словах
  • С#
  • С++
  • Python
  • Языки наподобие КуМира

И еще языки, которые стоит отметить, но которые по каким-то причинам не попали в этот список:

  • PHP  — узко направленный
  • Objective-C  — узко направленный
  • Swift  — узко направленный
  • TypeScript  — только скриптовый, редко используется
  • Lua  — только скриптовый, редко используется
  • Basic  — не актуально
  • Pascal  — не актуально
  • Ruby



Итак, начнем:


Java:


На мой взгляд, «Java» — довольно хороший вариант для первого языка программирования, по моему мнению, это единственный по настоящему кроссплатформенный язык программирования.

За счет этого в будущем легко будет перейти с одной платформы на другую, одна и та же программа сможет запуститься и на MacOS, и Linux, и на Windows, на нем легко писать под «Android».

Он несложен в обучении и удобен в использовании.

Но есть некоторые нюансы из за его синтаксиса и кроссплатформенности, из за которых это не лучший, но, надо отдать должное, — хороший вариант для изучения.

Цитаты о языке «Java»:

Java — это C++, из которого убрали все пистолеты, ножи и дубинки.
James Gosling
Если бы в Java действительно работала сборка мусора, большинство программ бы удаляли сами себя при первом же запуске.
Robert Sewell

Пример программы, выводящей «Hello, World!» на языке «Java»:


public static void main(String[] args) {
    System.out.println("Hello, World!");
}



Java script:


Java script похож на Java, только скриптовый.

На мой взгляд, учить скриптовый язык в качестве первого не очень правильно, т.к. не зная программирования, мне кажется, писать скрипты немного странно. (Но если вы знаете html и css, тогда Java script — это именно то, что нужно). Поэтому я не буду рассматривать его подробно.

Пример программы, выводящей «Hello, World!» на языке «Java script»:


</script>
    alert( 'Hello, World!' );
</script>



С#:


C# — это прекрасный язык для начала: он прост в изучении, он популярен, он похож на другие популярные языки, например, вы легко сможете с C# перейти на C++ или Java, он многофункционален (игры — unity, мобильные телефоны — xamarin...)

Разумеется, есть и недочеты, но в для данной ситуации они не значительны.

Цитата:

Я думаю, что Microsoft назвал технологию .Net для того, чтобы она не показывалась в списках директорий Unix.
Oktal

Пример программы, выводящей «Hello, World!» на языке «С#»:


static void Main(){
    Console.WriteLine("Hello, World!");
}



С++:


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

Но есть одно большое «НО» — обычно начинающим программистам он кажется сложным, в нем очень легко что-то напутать и много времени потратить на дебаг.

Но если вы этого не боитесь, тогда это то, что нужно.

Цитаты о «C++»:

Писать на C или C++ — это как работать с бензопилой без какой-либо защиты.
Bob Gray
Я изобрел понятие «объектно-ориентированный», но могу заявить, что не имел в виду C++ при этом.
Alan Kay

Пример программы, выводящей «Hello, World!» на языке «C++»:


int main(){
    cout << "Hello, world!" << endl;
}



Python:


Сейчас часто предлагают учить «Python» в качестве первого языка, на мой взгляд, это в корне не правильно, здесь я это очень кратко обосновываю, вот статья с полным объяснением"Почему не нужно учить python первым языком".

По моему, «Python» — это «детский» язык программирования. Если вам надо быстро написать программу, выводящую числа от 1 до 100 (такого типа программы иногда нужны), то это — то, что нужно. В нем простой синтаксис. Все, на этом плюсы закончились.

В остальном его мало где используют по сравнению с остальными «претендентами», кроме «КуМира» конечно же.

В Питоне странный синтаксис, и, если его учить как первый, переход на новый язык может вызвать затруднение.

Пример программы, выводящей «Hello, World!» на языке «Python»:


print("Hello, World!")



Языки на подобие КуМира:


Я добавил «КуМир» в этот список, только чтобы объяснить, почему на нем не надо писать.

  1. нельзя использовать для чего-то реального.
  2. синтаксис совершенно не похож на другие и будет очень затруднительно перейти с него на реальный язык программирования (Я никогда не писал на «КуМире», посмотрел код, чтобы написать эту статью, и у меня реально заболели глаза, т.к. я привык к программированию на английском и перестроить свой мозг на что-то еще мне было сложно).
  3. сложность синтаксиса не знаю, т.к. ничего не понял.

(Примера с «Hello, World!» нету, т.к. я нечего в КуМире не понял)



Итоги:


По-моему, распределить места надо так:

  1. «C#»
  2. «Java»
  3. «C++»
  4. с большим отставанием «Python»

Язык «Java script» не вставил, т.к. он скриптовый, а «КуМир» т.к. не считаю его полноценным языком программирования.
-->


К сожалению, не доступен сервер mySQL