У некоторых из нас приходит в голову мысль, а откуда берутся все эти программы для мобильного телефона, планшета, компьютера, XboX и Smart TV? Ответ мы частично узнаем здесь:
Любая программа - это набор команд, которые выполняет очень шустрый, но чрезвычайно глупый (с нашей точки зрения) Процессор. Когда компьютерные технологии только начинали развиваться, то человек писал команды на машинном языке. Все команды было тяжело держать в голове и человек стал использовать простейшие команды, которые заменялись на машинные коды автоматически. Так появился Assembler. Этот язык до сих пор используется при создании драйверов для материнских плат, процессоров и видеокарт благодаря огромной скорости работы таких команд. Однако создание программ на таком языке требовало кропотливой работы и подробнейшего описания всех действий процессора.
Для не столь требовательных к скорости работы программ было решено разработать более простые для программистов языки. В зависимости от решаемых задач были разработаны соответствующие парадигмы программирования. Например языки C, Pascal, Basic - являются Процедурными языками. То есть они представляют собой последовательность команд в виде исполняемых рецептов (процедур).
Однако и такие языки в условиях конкуренции сильно замедляли разработку программ. В приоритете стала не скорость программ, а скорость разработки таких программ. К нам пришли высокоуровневые языки программирования: Java, C++, C#, Python и другие.
Отдельно живут специальные функциональные языки для математических исследований (F#, Lisp). Однако они в последние годы стали привносить в современные языки программирования. Например, лямбда-выражения в Java и C#.
Неполноценными языками считаются учебные языки: Scratch, SmallBasic. На них нельзя решать сложные задачи, но они отлично подходят для начала изучения принципов программирования.
Итак! Ты решил(a) начать программировать. С чего же начать?
Scratch
SmallBasic
Java
C#
Python
PHP
JavaScript
C
C++
Assembler
F#
Pascal
Basic
Кумир..