COBOL: Почему древний язык программирования живёт в банках и правительствах

Спрос на специалистов по COBOL настолько высок, что в скором времени компании могут начать искать опытных разработчиков буквально в домах престарелых. Этот феномен объясняется уникальной ролью языка в мировой инфраструктуре.

Что такое COBOL и его историческое наследие

Изображение: кадр из четвёртого эпизода серии «Звёздные войны»

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

Изначально COBOL был процедурным и императивным языком высокого уровня, а с 2002 года приобрёл поддержку объектно-ориентированного программирования. Многие эксперты также классифицируют его как предметно-ориентированный язык (DSL), специально созданный для бизнес-приложений, финансовых операций и обработки данных.

Ключевые преимущества, обеспечивающие долголетие COBOL

Точность финансовых вычислений. Главное преимущество COBOL — работа с десятичными числами с фиксированной точкой. В отличие от современных языков, использующих числа с плавающей точкой, которые могут давать погрешности при округлении, COBOL гарантирует абсолютную точность в финансовых операциях. Это критически важно для банков, где ошибка даже на одну сотую копейки недопустима.

Высокая производительность и переносимость. Арифметические операции в COBOL выполняются с использованием специальных инструкций процессора для работы с целыми числами, что делает их невероятно быстрыми. Кроме того, язык обеспечивает полную независимость от архитектуры: размер памяти для переменных строго определён и не меняется в зависимости от системы (8-, 32- или 64-битной). Это выгодно отличает его, например, от C++, где размер типа данных может варьироваться.

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

Особенности синтаксиса: читаемость vs. многословность

COBOL известен своим обширным словарём: в нём около 100 зарезервированных слов (для сравнения, в Java 20 их 53).

Обратите внимание: Почему на самом деле королева Елизавета наказывала придворных за браки.

Однако эта многословность — не недостаток, а осознанная философия.

Одна из создательниц языка, Грейс Хоппер, считала, что код должен быть понятен не только программистам, но и менеджерам, бухгалтерам и бизнес-аналитикам. Сравним два фрагмента кода для расчёта социальных выплат:

Программа для подсчёта социальных выплат на FortranПрограмма для подсчёта социальных выплат на COBOL

Неподготовленному человеку код на Fortran скажет мало, в то время как в COBOL можно разглядеть ключевые слова, указывающие на вычисление выплат и округление до центов. Обратная сторона такой читаемости — большой объём кода. Наглядный пример — сравнение программы «Hello, world!»:

«Привет, мир!» на COBOL«Привет, мир!» на Python

Критика COBOL и причины его живучести

Архаичность. COBOL часто критикуют за возраст. Его называли устаревшим ещё в 80-х годах прошлого века. Известный компьютерный учёный Эдсгер Дейкстра даже заявлял, что «COBOL калечит ум, и его преподавание должно считаться уголовным преступлением». Язык действительно лишён многих современных удобств: динамического управления памятью, развитых библиотек для работы с ОС, а многие его реализации не поддерживают рекурсию.

Непреодолимая инерция legacy-систем. Несмотря на недостатки, главная причина живучести COBOL — колоссальная стоимость и риск миграции. Переписывание отлаженных десятилетиями систем, обрабатывающих триллионы долларов, — авантюра. Например, Австралийский банк Содружества потратил на такую миграцию 750 миллионов долларов и пять лет работы.

Философия «работает — не трогай» здесь преобладает над технологическим перфекционизмом. Стабильность, проверенная временем, для финансовых институтов и государственных органов важнее современных тенденций. Пока эти системы продолжают исправно выполнять свою работу, COBOL будет оставаться востребованным, обеспечивая карьеру для программистов, которые понимают его уникальную логику.

***

Чтобы не пропустить другие материалы о программировании, истории IT и искусственном интеллекте, подпишитесь в раздел. Ставьте лайки, чтобы видеть больше таких статей у себя в ленте. Если вы хотите, чтобы мы написали о каком-то факте или технологии, предложите свою тему в комментариях к этой или другим статьям.

#люди_и_код #язык программирования #IT #история IT #программирование

Еще по теме здесь: История.

Источник: Бессмертный cobol: почему язык программирования из 50-х никак не умрёт.