COBOL — бизнес-ориентиран език за програмиране: история и функции
COBOL: история и функции на бизнес-ориентирания език — от 1959 до модерни разширения, съвместимост, примери и значението му за бизнес приложения.
COBOL е език за програмиране, който е разработен през 1959 г. Името COBOL означава COmmon Business-Oriented Language (общ бизнес ориентиран език). Създаден е с цел да позволи описване на бизнес проблеми по начин, независим от хардуера, и да бъде четим за хора, запознати с предметната област. Подобно на SQL, COBOL използва синтаксис, който е близък до естествения език — например ADD YEARS TO AGE (Добави години към възрастта) е валиден израз в COBOL.
Кратка история
COBOL е резултат от усилията на правителствени и индустриални групи в края на 50-те години, включително работни групи, свързани с Министерството на отбраната на САЩ и комитета CODASYL. Първите стандарти и спецификации бързо наложиха COBOL за обработка на големи обеми бизнес данни и финансови приложения. През годините езикът преминава през няколко основни ревизии, които добавят нови възможности и изчистват синтаксиса.
Основни характеристики
- Четимост: синтаксис, близък до английския, улеснява документацията и поддръжката.
- Ориентация към бизнес приложения: богата поддръжка за обработка на записни файлове, отчети, таблични данни и точно десетично аритметично пресмятане.
- Структура на програмата: традиционно COBOL програмите са разделени на дивизии: IDENTIFICATION, ENVIRONMENT, DATA и PROCEDURE.
- Описание на данни: мощен механизъм за дефиниране на записи и полета чрез PIC (picture) клаузи, различни формати за съхранение (COMP, COMP-3 и др.).
- Съвместимост и стандарти: езикът има официални стандарти (ANSI/ISO) и много имплементации, включително за големи мейнфрейм системи (например IBM z/OS).
Стандарти и версии
През годините COBOL преминава през няколко големи ревизии. Версиите преди 1985 г. често не са напълно съвместими с по-новите стандарти от 1985 г. и след това. По-новите стандарти добавят структурирано програмиране, модули, файлови подобрения и други средства за подобряване на качеството на кода. В началото на 2000-те в стандарта (COBOL 2002) са въведени обектно-ориентирани възможности; по-късните ревизии (включително стандартите от 2014 г.) съдържат допълнителни разширения и корекции, които поддържат съвременните изисквания за интеграция и безопасност.
Силни и слаби страни
Силни: надеждност при обработка на големи обеми транзакции, точност при финансови изчисления, голяма база от вече работещи бизнес приложения и доказана стабилност.
Слаби: традиционната вербалност и формалност на кода могат да изглеждат остарели; програми, написани без структурирани практики, лесно стават трудни за поддръжка. Това доведе до известна критика от водещи компютърни учени.
Критика и защита
В писмото си до редактора през 1975 г., озаглавено "Как да казваме истини, които могат да навредят?", компютърният учен и носител на наградата "Тюринг" Едсгер Дийкстра отбелязва, че "използването на COBOL осакатява ума; следователно преподаването му трябва да се счита за криминално престъпление". В това писмо Дийкстра критикува и няколко други езика, използвани по онова време.
От своя страна компютърният учен, който се казваше Хауърд Е. Томпкинс, защитава структурирания COBOL: "Програмите на COBOL със заплетен поток на управление наистина са склонни да 'осакатяват ума', но това е така, защото 'има твърде много такива програми за бизнес приложения, написани от програмисти, които никога не са имали полза от добре преподадения структуриран COBOL...'.
Модернизация и съвременна употреба
През последните десетилетия COBOL беше разширен, за да позволи обектно-ориентиранопрограмиране, дефинирани от потребителя функции и дефинирани от потребителя типове данни. Съвременните имплементации включват оптимизиращи компилатори, интеграция с база данни, поддръжка за уеб услуги, междуплатформена работа и възможности за съвместимост с Java и .NET.
Много банки, застрахователни и държавни институции все още използват COBOL за критични системи. Това води до постоянно търсене на поддръжка, миграционни решения и инструменти за автоматична трансформация на код. Основни предизвикателства остават дефицитът на опитни програмисти COBOL и нуждата от модернизиране на интерфейсите към съвременни системи.
Примерен кратък фрагмент
Типична структура на прост COBOL блок може да изглежда примерно така (шаблонен стил):
IDENTIFICATION DIVISION.
PROGRAM-ID. EXAMPLE.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 AGE PIC 99.
PROCEDURE DIVISION.
ADD 1 TO AGE (увеличи възрастта с 1)
DISPLAY "AGE IS " AGE
STOP RUN.
Заключение
COBOL остава език с важна роля в света на бизнес обработката и критичните транзакционни системи. Въпреки критиките за своята вербалност и наследени особености, той продължава да бъде широко използван поради своята надеждност, точност и масив от вече функциониращи приложения. За организации с големи COBOL бази данни ключът е в поддръжката, модернизацията и постепенната интеграция със съвременни технологии, вместо в рязка и рискована миграция.
обискирам