Языки программирования. Обзор-ликбез.
The Hound Of Winter (thow@ireland.com)
Зачастую человек, который хочет научиться программировать, не
может выбрать, с какого именно языка ему стоит начать обучение.
Он мечется в поисках простого и понятного, но практически везде
наталкивается на почти непреодолимую для непосвященного преграду
из непонятных терминов, классификаций, структур. И обычно самому
разобраться в них не представляется возможным. Так и появляются
клянчащие ламеры в ньюс-конференциях, которые в поисках помощи,
исходят криком на продукты жизнедеятельности человека, доставая
окружающих своими криками, вроде: "НаУЧИте МЕня ПРАГРОМИРАВАТЬ!".
Можно попытаться помочь таким людям, но в большинстве своем они
хотят всего и быстро, а не понемногу и постепенно, как это происходит
на самом деле. Как говорит мой знакомый: "Халявы на халяву не
бывает". И он абсолютно прав. ;-) Чтобы иметь халяву, нужно учиться
ее иметь! ;-) Нельзя стать крутым программистом а-ля Ромеро (который
есть автор DOOM'а и еще пары знаменитых игровых движков от ID
Software) просто так, "за нефиг делать" в течение недели. Но даже
если ты учился кодингу десять лет, знать о нем абсолютно все тоже
не получится. А потому надо разобраться, какие вообще языки программирования
существуют и какие наиболее популярны, а какие просты в освоении
и легче в понимании. Поделюсь собственными знаниями и опытом более
шести лет кодинга. Принимать за правила или руководство к действию
эту статью может и не стоит, но - информация к размышлению, как
говорят. ;-)
Дело было давно
На данный момент языков программирования насчитывается наверняка
уже гораздо больше сотни. Полный их список с короткими комментариями
можно было бы напечатать брошюрой, вроде мемуаров отставного полковника.
Первые языки программирования появились еще в середине 40-х годов!
Похоже, не удастся установить, кто же все-таки был самым первым,
но из них сейчас известны забугорный "Plan.Calcul" и отечественный
"Краткий код" для малых вычислительных систем. Затем произошло
что-то вроде взрыва активности по созданию языков автоматизации
всяческих процессов, и этих самых языков стало больше, чем грибов
после дождичка в четверг. Самыми первыми, конечно, были языки,
программы на которых выглядели "плоско". Не было ветвлений и всяческих
переходов. Условные переходы - это уже следующая ступень развития,
которая принесла намного больше функциональности и позволила делать
нечто большее, чем сложение двух-трех чисел и вычисление логарифма
от двойки. Постепенно новые (в то время) языки программирования
становились все больше и больше непохожими друг на друга, появлялись
целые направления в программировании со своими концепциями и методами
написания программ. Многие языки появлялись исключительно благодаря
операционным системам, в состав которых они входили, другие были
очень удобны для написания программ на конкретном аппаратном обеспечении.
Многие принятые сейчас стандарты в период с конца 60-х до начала
70-х попросту не существовали, и каждый создавал железки по своему
образу и подобию. Без каких-либо пожеланий быть совместимым с
кем-то еще. Таким образом, под каждую железяку свое программное
обеспечение (утилиты, драйвера, прикладные программы) создавалось
каждый раз с нуля. Происходило это, в общем-то, от того, что не
было создано более-менее универсального языка (или нескольких
языков), подходящего для каждого конкретного круга задач. Вот
и вынуждены были стараться кто во что горазд.