В последнее время на каждом шагу слышу про SOA. Из нее делают просто таки панацею. А так ли это?
Да, принципы построения распределенной системы на сервисах мне очень даже нравятся, но нельзя же так на ней заморачиваться. Есть множество способов для построения распределенных систем. Тот же самый клиент-сервер.
У меня складывается ощущение что SOA становится модным словечком ... каким недавно был (да и остается по сей день) термин Web 2.0 или AJAX.
Если так дальше пойдет, то SOA будут запихивать везде и повсюду - как в свое время повсюду запихивали AJAX где надо и где не надо.
На мой взгляд, особую ценность представляет логика работы с данными и сами данные.
При построении архитектуры выстраивали трехзвенную архитектуру, например, data-view-controller.
А что если при построении систем строить объектную модель для работы с данными и объектную модель для бизнес логики которая ее использует. С помощью такого подхода можно менять хранилища данных по своему усмотрению, не меняя объектной модели - стоит только реализовать некоторый интерфейс по "доставанию" данных. При изменении же бизнес логики стоит только пересобрать отдельный слой - данные останутся прежними.
Если меняются структура данных - нужно изменить только слой работы с данными (тут конечно вопрос - надо ли при этом менять бизнес логику относительно изменения данных, но при нормальном оперировании объектами это будет необходимо достаточно редко).
Возможно, высказанные идеи не новы, но это то что навеяно проектированием. Я не борюсь за оригинальность.
Комментариев нет:
Отправить комментарий