9.03.2001
В этот раз (который подряд:)
предлагаю Вашему вниманию
очередной материал А.А. Шалыто. Это
обзор "Алгоритмизация и
программирование для систем
логического управления и "реактивных"
систем",
посященный использованию теории
автоматов при решении задач
различных классов. В рассылке же
привожу ряд возражений авторов (Шалыто
А.А. и Туккеля Н.И.) по поводу
создания специализированных
инструментов, высказанных мною в
рассылке от 19.02.2001.
Кроме этого, хотим не
согласиться с Вами, и надеемся, что
наше мнение будет донесено до
читателей сайта, или хотя бы
рассылки. Многие, в том числе и Вы,
считают, что каждая технология
должна быть подкреплена
соответствующим инструментальным
средством - "специализированной
надстройкой, ориентированной на
конечных пользователей,
рассматриваемой ими, как средство
проектирования".
С точки зрения
коммерциализации это, конечно же
верно (и в нашем случае некоторые
работы в этом направлении ведутся).
Однако не надо поддаваться
иллюзиям - мы с Вами не работаем в
фирме Microsoft, Schneider или QSSL (список
продолжить по вкусу). Самодельный
САПР, скорее всего, никогда не будет
широко внедрен, а язык никогда не
изучит никто, кроме наших
немногочисленных заказчиков.
Поэтому предпосылка нашей
деятельности не в создании
собственного заведомо
неконкурентоспособного продукта, а
в пропаганде конкурентоспособной
идеи автоматного программирования,
которая может быть реализована с
использованием любых существующих
языков и инструментальных средств (от
языка лестничных схем до Java).
Это полностью соответствует,
простите, высказыванию Ленина, что
"идея должна завладеть массами!".
Обратите внимание, "идея", а не
"продукт".
Кроме того, наш опыт создания
системы управления дизель-
генератором (которая упоминается в
статье, посвященной "реактивным"
системам) показал, что из четырех
месяцев, затраченных на разработку
и выпуск программной документации,
преобразование спецификаций в
программу даже в ручную заняло
полтора дня - какой смысл это
автоматизировать?
Не буду комментировать цитату.
Все мы знаем, как далеко могут
завести идеи, когда "практика -
критерий истины". Насчет же
разработки инструментальных
надстроек остаюсь при своем мнении
и считаю, что для конечного
пользователя, ориентированного, в
том числе, и на разработку
алгоритмов управления, нужны
специальные средства, повышающие
эффективность решения задач
предметной области. Никакие идеи и
наличие механических, но ручных,
методов преобразования из одного
универсального языка в другой не
привлекут к себе пользователей так,
как это делают системы,
автоматизирующие соответствующий
процесс разработки.
Наглядным примером служать те же
системы визуального
конструирования пользовательских
интерфейсов и инструменты,
обеспечивающие сборку продуктов из
готовых компонент, иллюзия
простоты которых уже настолько "завладела
массами", что другие методы
и техника программирования
большинством просто не
воспринимаются.
|