Ходячие мертвецы. COBOL

Актуальный язык из 50-х.
28 марта 2017326451Илья Бубнов2653620

Вы возможно удивитесь, но в наше время актуальными и востребованными остаются языки, разработанные ещё на заре общедоступного компьютеростроения. О некоторых из них, таких как язык Ассемблера или Фортран, мы уже говорили, о других наверняка поговорим еще в будущем.

Сегодняшний герой — COBOL. Этот язык изучался в ВУЗах по всему миру несколько десятилетий, и даже сегодня, почти 60 лет спустя вы можете найти 20-30-летних гиков, которые аргументировано докажут, что COBOL ничуть не устарел, а специалисты по этому языку будут востребованы еще очень долго.

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

Краткая справка

COBOL (аббревиатура от COmmon Business-Oriented Language) — императивный процедурный язык, созданный в 1959 году для разработки бизнес приложений. Одной из главных его особенностей является максимальная приближенность к английскому языку, что в конечном счёте привело к громоздкости каждого отдельного кода, а в 2006 году даже обнаружилось, что COBOL — абсолютный лидер по количеству написанных строк кода. Вот пример базовой программы:

$ SET SOURCEFORMAT"FREE"
IDENTIFICATION DIVISION.
PROGRAM-ID.  ShortestProgram.


PROCEDURE DIVISION.
DisplayPrompt.
   DISPLAY "I did it".
   STOP RUN.

Долгое время COBOL был не только базовым языком программирования в англоязычных странах из-за его удобочитаемости, но и главным инструментов различных финансовых систем. Вызвано, впрочем, это было во многом по той же причине.

Популярность

Вопреки мнению о неудобности и допотопности языка COBOL, он по-прежнему сохраняет уверенные позиции, как в сводных рейтингах, так и на рынке. Так, например, в мартовском рейтинге TIOBE он занял 25 место, причём летом прошлого года он находился на 6 позиций выше.

Здесь, конечно, стоит оговориться, что популярность COBOL в основном касается западных стран, в частности, США и Великобритании, где, как уже было сказано, во многих ВУЗах до сих пор его преподают, что в конечном счете накручивает счетчик поисковиков.

Самый сокрушительный удар по сомнениям относительно этого языка нанесли, как и положено, его нынешние разработчики — компания MicroFocus. Согласно отчёту, опубликованному в 2013 году, стало известно, что 90% из списка компаний Fortune 500 до сих используют COBOL, а ещё на этом языке проводится 85% транзакций. Да, эти цифры неизбежно снижаются, но говорить о том, что лучшие дни COBOL далеко позади, пока рано.

Причина жить

Сказать, чем COBOL настолько хорош, что его невозможно заменить, смогут действительно лишь преданные фанаты этого языка. Да, он удобочитаем, он надёжен (теоретически) и проверен временем, но всё же главная причина его сохраняющейся актуальности абсолютно в другом. Дело в том, что структура кода, его размеры, БД, вся система, заточенная под COBOL, просто физически не позволяют перевести все накопленные годами данные в какой-нибудь более удобоваримый язык, вроде Java, за относительно короткий промежуток времени. Соответственно, стоит задача — или искать человека, знающего COBOL, или нанимать штат классических программистов, которые всё переделают, но результат не гарантируют.

Но есть и приятная сторона COBOL. Было бы странно предполагать, что за 58 лет язык абсолютно не изменился и не появилось удобных сред разработки, которые бы не позволяли закрыть глаза на некоторые неудобства. Тот же MicroFocus создал для COBOL вполне удобные инструменты.

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

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

Есть что почитать?

Конечно, загоревшись идеей выучить язык, с помощью которого можно зарабатывать в разы больше, чем будучи разработчиком на Python, вы в первую очередь озадачитесь списком хорошей литературы. Много хорошей информации, как и положено, есть на . Хабре. Официальный сайт языка cobol.com тоже игнорировать не стоит. Ну а книгу прочитайте вот эту, если позволяет знание языка. Ну а если нет, остаётся только жалеть об упущенной возможности, так как достойной литературы по COBOL на русском лично мне найти не удалось (если знаете вы — оставляйте ссылки в комментариях).

Ну а напоследок я очень рекомендую почитать вот эту историю, которая очень наглядно показывает, что творится в мире языка COBOL.