БЕСЕДЫ О ПРОГРАММИРОВАНИИ

Питер Коффи

Многие ли из вышедших на пенсию разработчиков думают, что их программы будут служить в новом столетии? Многие ли программисты 60-х, 70-х и даже 80-х писали такие программы для ввода с клавиатуры, в которые можно ввести и двух-, и четырехзначное обозначение года? Сколько человек из них просто добавляли 1900 к любому числу меньше 99? У вас осталась примерно тысяча рабочих дней, чтобы выяснить это. Считайте. Ваш код кончит свое существование в новогодние праздники 2000 года или даже раньше, если речь идет о приложении для расчета бюджета или планирования, делающем прогнозы на годы вперед. Например, что случится с поправками на инфляцию в вашем четырехлетнем плане, когда вы вернетесь с рождественских каникул?

 

Вы уверены, что знаете ответ?

 

Эти забавные мысли навеял мне разговор с Робертом Харшмэном из фирмы Micro Focus, произошедший недавно в перерыве между заседаниями семинара в Чикаго. Я рассказывал о том, как объединить объектную технологию с уже созданными старыми приложениями. Он приехал, чтобы сделать обзор проблем, возникающих при работе (преимущественно) на Коболе. После встречи с этой группой мне стало ясно, что старый код подобен частицам нейтрино  -  ими легко пренебречь, но может оказаться, что они перевешивают все остальное.

 

Когда я возвращался из Чикаго домой, мне не верилось, что у базовых бизнес-вычислений, предполагающих отказ от Кобола, есть будущее. Он так широко применяется, и внедрение объектной технологии в мир пользователей Кобола проходит куда более гладко, чем уверяли нас скептики.

 

Впрочем, на той же неделе у меня состоялся еще один разговор  -  с членом другого сообщества программистов, сделавшего огромные вложения в старый код и технологии. Эта дама-инженер повергла меня в смятение, просто спросив: "Попробуйте догадаться: какой язык наши люди используют для всех своих новых программ?"

 

-  Вопрос на засыпку, да?  -  ответил я.  -  Фортран 90?  -  Нет.  -  Ada 95?  -  Нет.  -  Не Си?  -  Нет, конечно.  -  Excel?  -  Неверно.  -  Хорошо, сдаюсь.  -  MathLab,  -  наконец сказала она.  -  MathLab?  -  переспросил я.  -  Кроме шуток,  -  ответила она и стала перечислять достоинства этого языка манипуляции матрицами фирмы MathWorks. В отличие от Фортрана он позволяет разработчикам работать с абстрактными типами данных: например, при перемножении двух матричных объектов используется та же нотация, что и для двух обычных чисел. Это обеспечивает высокоуровневое управление выводом текста и графики. Язык хорошо работает с файлами данных самых разных типов, и бывает достаточно половины страницы, чтобы написать на нем программу, которая на Фортране заняла бы несколько страниц.

 

Я готов побиться об заклад, что пакеты для создания платежных ведомостей будут писаться на Ассемблере до тех пор, пока инженеры дружными рядами не перейдут с Фортрана на оригинальный язык фирмы MathWorks. Это вполне возможно, поскольку MathLab позволяет им переносить приложения на все важные платформы, к тому же в этом языке есть абстракции, которые облегчают решение стоящих перед ними проблем.

 

Object COBOL предлагает разработчикам бизнес-приложений похожие возможности и, кажется, появился как раз вовремя, чтобы предотвратить переход с классического Кобола на какой-нибудь инструмент более высокого уровня. Я надеюсь, что работающие на Object COBOL начинают с создания надежных абстракций для даты и времени. В противном случае придется наши деньги, предназначенные на образование и пенсионные выплаты, со счетов конвертировать, скажем, в золото, чтобы защитить их от программных сбоев,  -  до тех пор, пока не уляжется пыль после крушения систем с двузначными датами.

 

К Питеру Коффи можно обратиться через MCI Mail: 357-1756, или через CompuServe: 72631,113, или Internet 3571756@MCIMAIL.COM.