Язык программирования cobol как был назван

Что такое COBOL, и почему так много учреждений полагаются на него

wsi imageoptim

Возможно Вы слышали о COBOL — 60-летнем языке программирования. Что именно это? И почему он все еще является стержнем финансового мира, несмотря на то, что мало кто все еще знает, как его использовать?

Происхождение COBOL

Грейс Хоппер была феноменом. Она получила докторскую степень по математике в Йельском университете, была профессором в Вассаре и покинула военно-морской флот США в звании контр-адмирала. Ее вклад в области вычислительной техники можно судить по количеству фондов и программ, которые были созданы. Национальный научно-исследовательский вычислительный центр энергетики назвал ее суперкомпьютер Cray XE6. Военно-морской флот также назвал свой ракетный эсминец, USS Hopper, в ее честь. Девиз корабля «Aude et Effice» («Дерзай и делай») вполне мог быть придуман Хоппер.

Стремясь создать язык программирования, Хоппер разработала первый компилятор. Это открыло двери для первых скомпилированных языков, таких как FLOW-MATIC. Это принесло ей место в Конференции по языкам систем данных (CODASYL) 1959 года.

Она также сыграла важную роль в спецификации и разработке общего бизнес-ориентированного языка (COBOL). Первая встреча состоялась 23 июня 1959 года, а ее доклад и спецификация языка COBOL последовали в апреле 1960 года.

Кобол был радикальным

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

Язык был сложным и предоставлял почти английский словарь для работы программистов. Он был разработан для обработки огромных объемов данных и был исключительно математически точным.

Его словарь зарезервированных слов (слов, составляющих язык) приближается к 400. Программист связывает эти зарезервированные слова вместе, чтобы они имели синтаксический смысл и создавал программу.

Любой программист, который знаком с другими языками, скажет Вам, что 400 — это невероятное количество зарезервированных слов. Для сравнения, язык C имеет 32, а Python — 33.

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

КОБОЛ — это настоящий хит

Как бы неуклюже ни казалось сегодня, КОБОЛ был революционным. Он нашел пользу в финансовом секторе, федеральном правительстве и крупных корпорациях и организациях. Это было связано с его масштабируемостью, возможностями обработки пакетов и математической точностью. Он был установлен на мэйнфреймах по всему миру, укоренился и процветал.

Зависимость от систем, которые все еще работают на COBOL, удивительна. Reuters предоставила отчет за 2017 год со следующей статистикой:

Кобол это проблема

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

Это такая проблема, что Билл Хиншоу, ветеран COBOL, был вынужден уйти на пенсию, чтобы основать COBOL Cowboys. Эта частная консалтинговая фирма обслуживает отчаявшихся корпоративных клиентов, которые нигде не могут найти подкованных на COBOL кодеров. «Молодым» в COBOL Cowboys уже за 50. Они считают, что 90 процентов бизнес-систем Fortune 500 работают на COBOL.

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

Почему бы не мигрировать и не обновиться

Обновление этих устаревших систем не так просто, как кажется. Системы являются жизненно важными, работающие 24/7, на которых вращаются финансовый, правительственный и деловой мир. Код старый, многослойный и, часто, плохо или полностью недокументированный. Перспектива сравнивалась с тем, чтобы снять пропеллеры с самолета и попытаться оснастить его реактивными двигателями — в воздухе.

Помимо риска, экономический аргумент для перехода на современные системы также является жестким. Деньги, которые были потрачены на поддержание работоспособности этих мэйнфреймов и приложений COBOL, поразительны. Должны ли учреждения выбрасывать все это и начинать заново, пока этот код COBOL все еще работает и функционирует? Миграция с COBOL не будет ни дешевой, ни быстрой.

Все меняется, но перспектива сделать что-то с этим вряд ли привлекательна. Тем не менее, единственный способ улучшить ситуацию — это провести контролируемую, осторожную миграцию на современные программные и аппаратные средства.

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

Источник

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

Сегодняшний герой — 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 в основном касается западных стран, в частности, США и Великобритании, где, как уже было сказано, во многих ВУЗах до сих пор его преподают, что в конечном счете накручивает счетчик поисковиков.

Причина жить

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

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

content 650583 1

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

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

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

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

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

Сегодняшний герой — 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 в основном касается западных стран, в частности, США и Великобритании, где, как уже было сказано, во многих ВУЗах до сих пор его преподают, что в конечном счете накручивает счетчик поисковиков.

Причина жить

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

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

Читайте также:  Как покраситься чтоб не было седины

content 650583 1

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

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

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

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

Источник

КОБОЛ — Краткое руководство

Эволюция Кобола

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

В 1959 COBOL был разработан CODASYL (Конференция по языку систем данных).

Следующая версия, COBOL-61, была выпущена в 1961 году с некоторыми изменениями.

В 1968 году COBOL был утвержден ANSI в качестве стандартного языка для коммерческого использования (COBOL-68).

Он был снова пересмотрен в 1974 и 1985 годах для разработки последующих версий, названных COBOL-74 и COBOL-85 соответственно.

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

В 1959 COBOL был разработан CODASYL (Конференция по языку систем данных).

Следующая версия, COBOL-61, была выпущена в 1961 году с некоторыми изменениями.

В 1968 году COBOL был утвержден ANSI в качестве стандартного языка для коммерческого использования (COBOL-68).

Он был снова пересмотрен в 1974 и 1985 годах для разработки последующих версий, названных COBOL-74 и COBOL-85 соответственно.

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

Важность кобола

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

Кобол также используется в качестве самодокументируемого языка.

COBOL может обрабатывать огромные данные.

COBOL совместим с его предыдущими версиями.

COBOL имеет эффективные сообщения об ошибках, поэтому устранение ошибок проще.

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

Кобол также используется в качестве самодокументируемого языка.

COBOL может обрабатывать огромные данные.

COBOL совместим с его предыдущими версиями.

COBOL имеет эффективные сообщения об ошибках, поэтому устранение ошибок проще.

Особенности КОБОЛ

Стандартный язык

COBOL — это стандартный язык, который можно скомпилировать и выполнить на таких машинах, как IBM AS / 400, персональные компьютеры и т. Д.

Бизнес ориентированный

COBOL был разработан для бизнес-ориентированных приложений, связанных с финансовой областью, областью защиты и т. Д. Он может обрабатывать огромные объемы данных благодаря своим расширенным возможностям обработки файлов.

Надежный язык

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

Структурированный язык

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

COBOL — Настройка среды

Установка COBOL в Windows / Linux

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

Одним из таких эмуляторов является Hercules, который можно легко установить в Windows, выполнив несколько простых шагов, приведенных ниже —

Загрузите и установите эмулятор Hercules, который доступен на домашнем сайте Hercules: www.hercules-390.eu.

Запустите командную строку (CMD) и перейдите в каталог C: / hercules / mvs / cobol на CMD.

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

Загрузите и установите эмулятор Hercules, который доступен на домашнем сайте Hercules: www.hercules-390.eu.

Запустите командную строку (CMD) и перейдите в каталог C: / hercules / mvs / cobol на CMD.

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

Hercules — это программная реализация с открытым исходным кодом для архитектур мэйнфреймов System / 370 и ESA / 390 в дополнение к новейшей 64-битной архитектуре z / Architecture. Hercules работает под Linux, Windows, Solaris, FreeBSD и Mac OS X.

Пользователь может подключиться к серверу мэйнфреймов несколькими способами, такими как тонкий клиент, фиктивный терминал, система виртуального клиента (VCS) или система виртуального рабочего стола (VDS). Каждому действительному пользователю предоставляется логин для входа в интерфейс Z / OS (TSO / E или ISPF).

Компиляция программ COBOL

IGYCRCTL — это утилита компилятора IBM COBOL. Параметры компилятора передаются с использованием параметра PARM. В приведенном выше примере RMODE указывает компилятору использовать в программе режим относительной адресации. Программа COBOL передается с использованием параметра SYSIN. Тетрадь — это библиотека, используемая программой в SYSLIB.

Выполнение программ COBOL

Ниже приведен пример JCL, где программа MYPROG выполняется с использованием входного файла MYDATA.URMI.INPUT и создает два выходных файла, записанных в спул.

Загрузочный модуль MYPROG находится в MYDATA.URMI.LOADLIB. Важно отметить, что вышеуказанный JCL можно использовать только для модуля COBOL, отличного от DB2.

Выполнение программ COBOL-DB2

Для запуска программы на языке COBOL-DB2 в JCL и программе используется специализированная утилита IBM; Регион DB2 и необходимые параметры передаются в качестве входных данных утилите.

Шаги, выполняемые при запуске программы COBOL-DB2, следующие:

Когда программа на языке COBOL-DB2 компилируется, DBRM (модуль запроса базы данных) создается вместе с модулем загрузки. DBRM содержит операторы SQL программ на языке COBOL, синтаксис которых проверен на корректность.

Читайте также:  Я врываюсь как ракета для меня есть вся планета

DBRM привязан к региону DB2 (среде), в которой будет работать COBOL. Это можно сделать с помощью утилиты IKJEFT01 в JCL.

После шага связывания программа COBOL-DB2 запускается с использованием IKJEFT01 (снова) с библиотекой загрузки и библиотекой DBRM в качестве входных данных для JCL.

Когда программа на языке COBOL-DB2 компилируется, DBRM (модуль запроса базы данных) создается вместе с модулем загрузки. DBRM содержит операторы SQL программ на языке COBOL, синтаксис которых проверен на корректность.

DBRM привязан к региону DB2 (среде), в которой будет работать COBOL. Это можно сделать с помощью утилиты IKJEFT01 в JCL.

После шага связывания программа COBOL-DB2 запускается с использованием IKJEFT01 (снова) с библиотекой загрузки и библиотекой DBRM в качестве входных данных для JCL.

В приведенном выше примере MYCOBB — это программа COBOL-DB2, запущенная с использованием IKJEFT01. Обратите внимание, что имя программы, идентификатор подсистемы DB2 (SSID) и имя плана DB2 передаются в операторе SYSTSIN DD. Библиотека DBRM указана в STEPLIB.

КОБОЛ — Структура программы

Структура программы COBOL состоит из подразделений, как показано на следующем рисунке —

program structure 1

Краткое введение этих разделов дано ниже —

Разделы являются логическим подразделением логики программы. Раздел представляет собой набор абзацев.

Абзацы являются подразделением раздела или подразделения. Это либо пользовательское, либо предварительно определенное имя, за которым следует точка, и состоит из нуля или более предложений / записей.

Предложения являются комбинацией одного или нескольких утверждений. Предложения появляются только в разделе «Процедура». Предложение должно заканчиваться точкой.

Утверждения являются осмысленными операторами COBOL, которые выполняют некоторую обработку.

Символы являются самыми низкими в иерархии и не могут быть делимыми.

Разделы являются логическим подразделением логики программы. Раздел представляет собой набор абзацев.

Абзацы являются подразделением раздела или подразделения. Это либо пользовательское, либо предварительно определенное имя, за которым следует точка, и состоит из нуля или более предложений / записей.

Предложения являются комбинацией одного или нескольких утверждений. Предложения появляются только в разделе «Процедура». Предложение должно заканчиваться точкой.

Утверждения являются осмысленными операторами COBOL, которые выполняют некоторую обработку.

Символы являются самыми низкими в иерархии и не могут быть делимыми.

Вы можете связать вышеупомянутые термины с программой COBOL в следующем примере —

Разделы

Программа COBOL состоит из четырех отделов.

Отдел идентификации

Это первое и единственное обязательное разделение каждой программы COBOL. Программист и компилятор используют это разделение для идентификации программы. В этом разделе PROGRAM-ID является единственным обязательным пунктом. PROGRAM-ID указывает имя программы, которое может содержать от 1 до 30 символов.

Попробуйте следующий пример, используя опцию Live Demo онлайн.

Ниже приведен JCL для выполнения вышеуказанной программы COBOL.

Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —

Отдел окружающей среды

Разделение среды используется для указания входных и выходных файлов программы. Он состоит из двух разделов —

Раздел конфигурации предоставляет информацию о системе, в которой написана и выполнена программа. Он состоит из двух параграфов —

Исходный компьютер — система, используемая для компиляции программы.

Объектный компьютер — система, используемая для выполнения программы.

Раздел ввода-вывода предоставляет информацию о файлах, которые будут использоваться в программе. Он состоит из двух параграфов —

Управление файлами — предоставляет информацию о внешних наборах данных, используемых в программе.

IO control — предоставляет информацию о файлах, используемых в программе.

Раздел конфигурации предоставляет информацию о системе, в которой написана и выполнена программа. Он состоит из двух параграфов —

Исходный компьютер — система, используемая для компиляции программы.

Объектный компьютер — система, используемая для выполнения программы.

Раздел ввода-вывода предоставляет информацию о файлах, которые будут использоваться в программе. Он состоит из двух параграфов —

Управление файлами — предоставляет информацию о внешних наборах данных, используемых в программе.

IO control — предоставляет информацию о файлах, используемых в программе.

Отдел данных

Разделение данных используется для определения переменных, используемых в программе. Он состоит из четырех разделов —

Раздел File используется для определения структуры записи файла.

Раздел Working-Storage используется для объявления временных переменных и файловых структур, которые используются в программе.

Раздел Local-Storage аналогичен разделу Working-Storage. Единственное отличие состоит в том, что переменные будут выделяться и инициализироваться каждый раз, когда программа начинает выполнение.

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

Раздел File используется для определения структуры записи файла.

Раздел Working-Storage используется для объявления временных переменных и файловых структур, которые используются в программе.

Раздел Local-Storage аналогичен разделу Working-Storage. Единственное отличие состоит в том, что переменные будут выделяться и инициализироваться каждый раз, когда программа начинает выполнение.

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

JCL для выполнения вышеуказанной программы COBOL выглядит следующим образом:

Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —

Процедурный отдел

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

В разделении процедуры должен быть хотя бы один оператор. Последним оператором, завершающим выполнение в этом разделе, является либо STOP RUN, который используется в вызывающих программах, либо EXIT PROGRAM, который используется в вызываемых программах.

JCL для выполнения вышеуказанной программы COBOL —

Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —

КОБОЛ — Базовый Синтаксис

Набор символов

«Персонажи» — самые низкие в иерархии, и их нельзя разделить дальше. Набор символов COBOL включает 78 символов, которые показаны ниже —

Источник

Adblock
detector