Репортажи
Возрождение Clarion
Руслан Богатырев
В начале июня этого года Москву впервые посетил Брюс Баррингтон (Bruce Barrington) – президент американской фирмы TopSpeed Corp. (Помпано-Бич, Флорида).
Сегодня вряд ли кого-то можно удивить инструментарием полноценной разработки информационных систем в архитектуре "клиент-сервер". Равно как и реализацией клиентской части для PC на операционных системах Microsoft – Windows 3.1, Windows 95 и Windows NT. Это же касается организации связи с промышленными SQL-серверами типа Oracle, IBM DB2/400, Microsoft SQL, Sybase. Все это, конечно, неплохо, но вряд ли может претендовать на оригинальность. Есть немало других, более "раскрученных" систем – вроде Borland Delphi. Зачем же тогда нужен Clarion и на что рассчитывает президент TopSpeed, предлагая мировому программистскому сообществу новый инструментарий? Каковы ближайшие планы возглавляемой им компании? Почему столь неудачным в коммерческом и техническом отношении оказался Clarion for DOS 3.1? Какова, наконец, судьба знаменитых компиляторов TopSpeed-семейства?
На эти вопросы Брюс Баррингтон частично ответил в своем выступлении в день открытия в Москве 7-го Международного компьютерного форума (МКФ), затем несколько подробнее осветил их на рабочем семинаре, прошедшем на следующий день в Зеленограде в офисе фирмы "Арсис" – дистрибьютора TopSpeed на рынке СНГ. Помимо представителей ведущих российских компьютерных изданий в работе этого семинара приняли участие представители IBM EMEA и ряда отечественных компьютерных компаний.
Итак, обо всем по порядку. Зачем все-таки нужен Clarion, как он соотносится с куда более известными своими конкурентами? Баррингтон в своих выступлениях сосредоточил внимание на сравнительном анализе Clarion и Borland Delphi. Clarion, по мнению Баррингтона, ничуть не хуже Delphi 1.0 и 2.0 и даже превосходит этот продукт по целому ряду параметров. Например, первое, что бросается в глаза при знакомстве с системой CW 2.0 (которая станет поставляться в трех разновидностях – Standard Edition, Professional Edition и Enterprise Edition), – это не только уровень цен и новая, куда более гибкая градация инструментария, но и удивительная для систем подобного класса нетребовательность к вычислительным ресурсам компьютера, а также компактность (что касается размеров кода) самой инструментальной среды и получаемых с ее помощью целевых приложений. Однако все это – только верхушка айсберга; суть расхождений Delphi и Clarion лежит гораздо глубже.

В Clarion на протяжении десяти лет оттачивался специальный язык шаблонов (Template Language), который служит ключом к гибкой автоматизации разработки программного обеспечения. Аналогичного ему механизма нет не только в Delphi, но и в подавляющем большинстве других инструментальных систем. Данный подход позволяет разработчикам в рамках Clarion строить самые различные проблемно-ориентированные языки, которые способны поддерживать диалоговый и пакетный режим генерации исходного кода для неограниченного числа языков программирования, в частности, для языка Clarion.
В основе Delphi лежит Object Pascal, практически все "подручные" средства здесь строятся через классы этого языка объектно-ориентированного программирования (ООП). В технологии Clarion основу программирования составляют шаблоны и язык Clarion; сохранив фиксированные ненаследуемые классы, этот язык теперь обладает и поддержкой ООП в стиле Java. При этом наряду с расширяемостью инструментальной среды за счет построения новых классов программист обладает средствами статического (науровне компилятора!) контроля за использованием ненаследуемых классов. Здесь извечно раздражающее неудобство инициализации структур через многочисленные операторы присваивания и вызовы процедур/методов во многом устраняется за счет использования известных компилятору конструкций описания данных. (Справедливости ради отмечу, что, на мой взгляд, серьезным недостатком языка Clarion в сравнении с Object Pascal является отсутствие механизма обработки исключений.)
Еще одним важным достоинством Clarion, на которое обращал внимание Брюс Баррингтон, является своеобразная поддержка в данной системе кросс-разработки. Дело в том, что одна и та же система CW 2.0 позволяет на основе разработанной программистом Clarion-модели получать на выходе как 16-разрядные (Windows 3.1), так 32-разрядные (Windows 95, Windows NT) приложения. При этом программист может не заботиться о нюансах совместимости (например, о специально предназначенных для Windows 95 экранных элементах управления), – весь недостающий набор функций автоматически реализуется за счет соответствующих Clarion-библиотек. Образно говоря, мы получаем шампунь и кондиционер в одном флаконе.
Говоря об относительной неудаче Clarion for DOS 3.1, Баррингтон согласился с тем, что большая часть критики в этом случае справедлива, – действительно, реализация этого инструмента могла бы быть гораздо качественнее. Но допущенные ошибки были учтены при проектировании и реализации Clarion for Windows – продукта, которым Баррингтон по-настоящему гордится. Судьба Тор-Speed-компиляторов также благополучно разрешается: в состав CW 2.0 входят 16- и 32-разрядные компиляторы ассемблера, С, C++ и Modula-2. Они будут продаваться и по отдельности. Среди новинок CW2.0, поставки которой в профессиональной версии начались с первой недели июля, – поддержка коллективной разработки и CASE-инструментарий для построения и анализа схемы базы данных. В сентябре начнутся поставки стандартной и корпоративной версий, к этому же сроку приурочен и выход специального intranet-драйвера с автоматическим разбиением Clarion-приложения на клиента и провайдера.
Баррингтон сообщил весьма интересные цифры: за последние 10 месяцев в преддверии выхода CW 2.0 в мире было продано более 60000 копий CW 1.0 и CW 1.5. Но что еще больше впечатляет – цена стандартной версии CW 2.0 (без поддержки 32-разрядных приложений) будет составлять в США около 80 долларов.
В заключение хотелось бы отметить, что, по словам Баррингтона, он был приятно удивлен высокой квалификацией российских программистов. Конечно, он был об этом наслышан и раньше, но реальность намного превзошла его ожидания.