metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2008-11-14 06:52 pm

Сервера приложений

Периодически на работе всплывает вопрос: а не завести ли нам манула? а не переселить ли приложения на трехзвенную архитектуру ради большей адекватности серверной части и убирания части логики с клиентской.

Но все это натыкается на то, что единственный сервер приложений на слуху - это JBoss, затраты от переписывания всего этого на жабу превысят потенциальные улучшения, а мысль о том, что придется деплоить это в условиях предприятий, где ИТ-службы или нет, или она состоит из адептов экзотических сортов клея, сразу оставливает любое желание что-либо делать.

В связи с этим, имеется вопрос: если не жаба и не дотнет, и не веб-интерфейсы, а нормальная трехзвенка - субд, аппсервер, более-менее интеллектуальный клиент и все это предпочительно кроссплатформенное - на чем такое вообще писать? И какая должна быть архитектура подобной вещи, а особенно - какая модель данных, какая парадигма программирования и в каком виде гонять данные между клиентом и аппсервером, чтобы это не оказалось очередной инкарнацией СуперУниверсальнойСистемыДляВсего, на которой сделать что-либо сложнее, чем это же склепать по быстрому с нуля вручную :)

[identity profile] volodymir-k.livejournal.com 2008-11-14 06:00 pm (UTC)(link)
Не любите Яву? Всё равно к ней же и придёте. Чтобы придти не совсем пустым, начните с хотя бы тех же web services или CORBA, есть реализации и на Дельфи, и на С++. Применяйте Transaction Script подход, вынесите их в промежуточный слой.

[identity profile] metaclass.livejournal.com 2008-11-14 06:02 pm (UTC)(link)
Вот и я смотрю, что альтернативы яве нету. Надеюсь, широкое распространение платформы не даст ей уйти в дебри или погибнуть :)

[identity profile] max-posedon.livejournal.com 2008-11-14 06:11 pm (UTC)(link)
(Имхо) Языки-tool-ы не имеею ни малейшего значения, Архитеутура, Протоколы, API значительно важнее, и хорошо бы сразу иметь возможность работать на чём угодно. Всё равно найдётся то, что java не сможет вам обеспечить :)...

[identity profile] max-posedon.livejournal.com 2008-11-14 06:07 pm (UTC)(link)
А дядюшка Фаулер говорит что Transaction Script худший из подходов :)...

[identity profile] volodymir-k.livejournal.com 2008-11-25 03:36 pm (UTC)(link)
Не говорит.

Organizing logic this way is natural for applications with only a small amount of logic and implies very little overhead: both in performance and in understanding. But as the business logic gets more complicated it gets progressively harder to keep the business logic in a well designed state.

But however much of an object bigot you become, don't rule out Transaction Script. There are a lot of simple problems out there, and a simple solution will get you up and running much faster.

Я тут попробовал и DAO, и его, и Domain Model -- пришёл к выводу, что Domain Model чухня для моих задач (60% тупой КРУД) и тормоза в мышлении. Хотя мне концептуально он больше нравится.