Учебник COBOL для начинающих
COBOL создан в 1959 году и до сих пор держит мировую банковскую систему — разберёмся, как он устроен и почему жив.
Курс «COBOL: язык банков и мейнфреймов» состоит из 6 разделов и 15 уроков: Зачем жив COBOL, Структура программы, Данные и переменные, Управляющие конструкции, Файлы и таблицы и Практика: бизнес-расчёты. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.
Программа курса
1 Зачем жив COBOL
- История COBOL и где он работает сегодня
Почему COBOL, созданный в 1959 году, до сих пор обрабатывает банковские транзакции и госреестры. Разбираем историю языка и что такое мейнфрейм.
- Особенности COBOL: язык, похожий на английский
Почему код на COBOL читается почти как обычный английский текст. Разбираем философию языка, структуру программы и синтаксис на реальных примерах.
- История COBOL и где он работает сегодня
2 Структура программы
- Четыре DIVISION программы COBOL
IDENTIFICATION, ENVIRONMENT, DATA и PROCEDURE DIVISION — из чего состоит любая программа на COBOL и что пишут в каждой части.
- IDENTIFICATION и ENVIRONMENT DIVISION
Как называется программа на COBOL, кто её автор и какие настройки окружения задаются — минимальный скелет любой программы.
- Первая программа: Hello World по-COBOL-овски
Разбираем построчно классическую первую программу на COBOL — вывод текста на экран через DISPLAY.
- Четыре DIVISION программы COBOL
3 Данные и переменные
- DATA DIVISION и WORKING-STORAGE SECTION
Где в COBOL-программе объявляются переменные: раздел DATA DIVISION, секция WORKING-STORAGE SECTION, и чем это отличается от переменных в Python или Java.
- PIC-клаузы: типы данных COBOL
Как клаузы PIC 9(5) и PIC X(20) задают типы данных фиксированной длины в COBOL: числа, текст и почему размер поля важен для мейнфрейм-программ.
- Уровни записей: 01, 05, 88
Иерархия данных в COBOL через уровни записей: как 01 и 05 строят структуру из вложенных полей и как уровень 88 создаёт condition-name — именованное условие.
- DATA DIVISION и WORKING-STORAGE SECTION
4 Управляющие конструкции
- IF ... ELSE ... END-IF
Как в COBOL работает условная конструкция IF...ELSE...END-IF: сравнение чисел, строк фиксированной длины и типичные ошибки новичков.
- PERFORM: как в COBOL устроены циклы
PERFORM VARYING и PERFORM UNTIL в COBOL — аналоги for и while из других языков, с разбором на примере и частыми ошибками начинающих.
- PERFORM для вызова именованных блоков
Как в COBOL оператор PERFORM вызывает именованный параграф вместо функции — разбор синтаксиса, THRU и практический пример разбиения программы на блоки.
- IF ... ELSE ... END-IF
5 Файлы и таблицы
- FILE SECTION: чтение и запись файлов
Как COBOL-программа открывает, читает, пишет и закрывает файлы записей: OPEN, READ, WRITE, CLOSE — базовый цикл обработки данных в банковских системах.
- OCCURS: таблицы (массивы) в COBOL
Как объявить массив фиксированного размера в COBOL через OCCURS и перебрать его в цикле PERFORM VARYING — с примером расчёта суммы и среднего.
- FILE SECTION: чтение и запись файлов
6 Практика: бизнес-расчёты
- Расчёт процентов по вкладу
Учимся считать проценты по банковскому вкладу на COBOL: PIC-описания денежных полей, COMPUTE и округление — классическая задача, с которой начинают все COBOL-программисты в банках.
- Обработка пакета транзакций
Учебный пример пакетной обработки транзакций на COBOL: PERFORM UNTIL, флаг конца файла и накопление итогов — так работают ночные банковские расчёты на мейнфреймах.
- Расчёт процентов по вкладу