Thursday, January 26, 2006

Обязательно нужно прочитать Интервью с Борисом Бабаяном. Великий человек!

Wednesday, January 25, 2006

ECO demo

На almpotal.ru выложен мой ECO Demo, подготовленный для семинара в Москве, который состоялся 2 декабря 2005 года. Пример представляем многозвенное приложение с несколькими клиентами, написанных на Delphi.NET и С#.

На фотографиях внизу я не тот человек с бородой :)


Зимние вечера

Долгими зимними вечерами провинциальные айтишники не прекращают работать даже в отсутствие электричества

Monday, January 23, 2006

О Моделях

При разработке приложений иногда требуется, чтобы одна и та же модель была задействована в различных приложениях, например в сервере ECO, ASP.NET приложение или в winforms клиенте. Один из вариантов - подключать в проект соответствующего приложения модуль с моделью. Обычное дело, но тут встает проблемы межязыкового взаимодейсвия. Все приложения должны писаться с использованием того же языка, что и модель (Delphi.NET или C#).

Есть более красивое решение-использование сборок. Вы помещаете модель в сборку, на это сборку делаете ссылку в проекте, указываете на пакет в EcoSpace и все, дальше работаете как всегда. При это Вас не заботит, на каком языке написана сборка. Это же assembly, и вся мощь .NET Framework работает на Вас.
Для того чтобы сделать такую модель нужно выбрать соответсвующего мастера в BDS. ECO Package in Package для Delphi.NET или ECO Package in DLL для С#.

Friday, January 06, 2006

ECOIII State Machines

Сами по себе State машины не делают ничего, кроме сохранения состояния конкретного экземпляра сущности. Т.е. удобно хранить что-то типа состояния заказа и т.д. Самое интересное начинается потом, когда рарабочик начинает работать с триггерами, защитниками (guards). Это ОЧЕНЬ мощное средство, которое (иногда) позволяет вообще отказаться от реализации бизнес-логики на языке программирования. Т.е. вообще все может хранится в модели. Голубая мечта MDA :)

Один момент, который надо учитывать при использовании State Machine. При описании состояний надо быть очень осторожным. Как известно у state диаграммы есть начальное состояние, промежуточные состояния и конечное состояние. Так вот, тут такая незадача, конечное состояние означает уничтожение экземпляра сущности, перешедшей в это состояние.