InfoWorld, США

Близится генеральная премьера программного обеспечения с открытым кодом, которое разрабатывается сейчас компанией Castle для того, чтобы упростить проектирование на платформе .Net.

Созданное на основе ушедшей в небытие объектно-ориентированной среды Apache Avalon, программное обеспечение Castle представляет собой набор программных библиотек. Помимо .Net, библиотеки поддерживают также платформу Mono — «диалект» .Net с открытым кодом.

«Цель авторов проекта Castle состоит в том, чтобы исключить повторение кода, использовать заранее определенные соглашения вместо параметров конфигурации там, где это возможно, и обеспечить управление задачами общего характера, которые возникают перед программистами», — подчеркнул автор проекта, основатель бразильской компании Castle Stronghold Гамильтон Вериссимо.

В настоящее время обнародована предварительная версия Castle 1.0. Выпуск окончательной версии ожидается в январе.

Castle можно использовать для разработки корпоративного программного обеспечения и Web-приложений. В состав системы включен инструментарий MonoRail — своего рода Web-оболочка, на создание которой разработчиков вдохновила среда Ruby on Rails. В MonoRail для организации взаимодействия между потоками, данными и формами используется шаблон модель-представление-контроллер. Кроме того, поддерживаются средства AJAX (Asynchronous JavaScript and XML).

В состав Castle также входит компонент ActiveRecord, служащий для установления соответствия между объектами и базой данных, а также Windsor — контейнер жизненного цикла объектов, предназначенный для последующей поддержки кода.

«Castle представляет собой набор множества различных инструментов и функций, предназначенных в первую очередь для упрощения разработки и сокращения временных затрат», — отметил программист Кевин Уильямс, принимающий участие в реализации проекта Castle.

«На протяжении нескольких лет я проектировал приложения для .Net, но никогда не видел таких простых и мощных инструментов, как в Castle, — подчеркнул Уильямс. — Они интуитивно понятны, легко расширяемы и обеспечивают полный контроль над разработкой. Пользователи имеют возможность перенести механизмы Castle в свою среду или использовать их в интегрированной среде разработки Visual Studio. По мере того как разработчики совершенствуют свои навыки, изучают новые методологии и технику проектирования, создают новые шаблоны, им все труднее становится связать имеющиеся инструментальные средства воедино и заставить их работать. Castle объединяет разрозненные компоненты и позволяет начать проектирование, что называется, с места в карьер».

Авторы проекта Castle предприняли попытку перенести механизмы Apache Avalon на платформу .Net. Сегодня они уже занимаются проработкой контуров второй версии Castle. Компонент MonoRail в версии 2.0 сможет поддерживать одновременно множество визуальных механизмов. Рассматривается также возможность совершенствования механизма шаблонов Ruby и использования так называемого «языка доменов» для Web-проектирования, который генерировал бы сценарии JavaScript. Должна вырасти и производительность MonoRail.

Ожидается, что в версии Castle 2.0 появятся улучшенные механизмы инициализации и отображения ActiveRecord. Более удобной станет процедура настройки конфигурации микроядра IoC (Inversion of Control).