![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| integral |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.7.2006 Где: Dnipropetrovs' ;k, Ukraine Репутация: нет Всего: нет |
Вот такой странные вопрос
Зачем нужен спринг с его xml-конфигурационным файлом и неужели ради IoC люди возятся с ним? |
|||
|
||||
| Prof_2000 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 26.3.2005 Где: Харьков, Украина Репутация: нет Всего: 1 |
Ну во-первых, кроме XML-конфигурации Spring допускает настройку с помощью аннотаций, что некоторые считают более удобным подходом.
А вообще, Spring - это больше чем просто IoC контейнер, хоть тот и является его ключевой частью. Spring - большой фреймворк со своей областью применения. В своё время на проекте мы отказались от него в пользу google-guice, т.к. нужен был только IoC. --------------------
Pereant qui ante nos nostra dixerunt! (лат.) Да погибнут те, кто раньше нас высказал наши мысли! |
|||
|
||||
| Vasay |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 18 Всего: 73 |
integral, Spring Roo - convention over configuration и никакого XML
-------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
| integral |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.7.2006 Где: Dnipropetrovs' ;k, Ukraine Репутация: нет Всего: нет |
это все хорошо, но не отвечает на вопрос: зачем мне нужен Spring в моем приложении?
|
|||
|
||||
| Prof_2000 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 26.3.2005 Где: Харьков, Украина Репутация: нет Всего: 1 |
Хе
А никто не гарантирует, что он обязательно нужен вам в вашем приложении. Скорее всего, раз такой вопрос встал - то таки не нужен А что-у вас за приложение-то? --------------------
Pereant qui ante nos nostra dixerunt! (лат.) Да погибнут те, кто раньше нас высказал наши мысли! |
|||
|
||||
| integral |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.7.2006 Где: Dnipropetrovs' ;k, Ukraine Репутация: нет Всего: нет |
Речь не о конкретном приложение, а скорее продолжение дискусии по-поводу использований спринга во всех приложениях подряд
А вы можете привести пример уместного использования спринга в приложении? |
|||
|
||||
| eros2 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 31.5.2010 Репутация: нет Всего: нет |
Спринг уместен в случае, если приложение разворачивается на томкате, например, и нужно автоматическое управление транзакциями и т.п.
Хотя я бы в таком случае воткнул в томкат openejb. |
|||
|
||||
| Prof_2000 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 26.3.2005 Где: Харьков, Украина Репутация: нет Всего: 1 |
Мне кажется, наиболее уместно использовать его если есть перспектива использования в приложении АОП, транзакций на уровне объектов, если вероятна смена модели доступа к данным. Для реализации веб-интерфейса я его не использовал никогда, но наслышан о нескольких важных фичах, как то Spring Web MVC + Spring Web Flow, Spring security. Ну и другие интересные технологии типа JMX, JMI, RPC(RMI, SOAP)
Разумеется, можно выбрать любой стек технологий, это уже скорее дело вкуса и опыта работы с каждой из них. Главное, без фанатизма. В большом проекте с АОП мы использовали Spring, для чистого IoC-контейнера без излишеств - не стали. --------------------
Pereant qui ante nos nostra dixerunt! (лат.) Да погибнут те, кто раньше нас высказал наши мысли! |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Spring зародился как альтернатива ЕЕ - мол, слишком громоздко для большинства случаев. И не могут остановиться. Теперь это "наше все" и сами становятся монстрами.
|
|||
|
||||
| dobrolub |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 385 Регистрация: 18.12.2009 Где: Vancouver, Canada Репутация: 4 Всего: 16 |
+1 COVD в java ee 6 уже есть IOC javax.inject. Что теперь будет делать спринг - я не знаю... |
|||
|
||||
| eros2 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 31.5.2010 Репутация: нет Всего: нет |
Вроде как EJB всё это умеют. Во всяком случае - AOP, JTS/JTA, удалённые вызовы - точно есть, сам юзал. JMX - наверное зависит от контейнера, в JBoss-е есть. Удалённые вызовы через различные протоколы - RMI/Socket/HTTP(S) - зависит от контейнера, в JBoss-е всё перечисленное есть. Как я понимаю, когда-то давно EJB были весьма тяжёлыми и требовали неслабого сервера. Вот как лёгкая альтернатива и был создан Spring. С Java EE 5/EJB 3 и выше, а также на современном железе старые проблемы уже неактуальны. |
|||
|
||||
| v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
Слабое связывание?
|
|||
|
||||
| Старовъръ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 8.5.2008 Репутация: 1 Всего: 10 |
1. Без IoC приложения выглядят убого из-за использования Фабрик и Одиночек, что делает приложения трудно тестируемым и деревянным. 2. Spring IoC - прост как пень, для его изучения хватит неполного дня (конечно, для глубоких познаний дня не хватит, однако глубокие знания не обязаны быть, чтоб уметь пользоваться DI). 3. Для IoC не обязательно использовать Spring: есть тот же Guice, можно и самому сварганить IoC Фабрику, хотя не уверен, что это прокатит на крупных приложениях. -------------------- |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Dependency Inversion Principle, Low Coupling, High Cohesion, следовательно: легкость переиспользования компонент и понимания кода.
|
|||
|
||||
| Andrey1 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 621 Регистрация: 27.2.2004 Где: Moscow Репутация: 2 Всего: 5 |
Кстати, ИМХО, очень правильный вопрос. Сам я сопротивлялся спрингу до последнего. Пришлось использовать, так как ничего лучше Spring Security не нашел. Сейчас использую Spring Security и Spring JPA (+ JPA Generic Dao, + ZK).
* Ничего плохого про спринг сказать не могу, кроме сожеления о 2-3 потраченных днях на написание xml конфигов. Плюс чувствуется "тяжесть" спринга на хостинге. * Ничего хорошего про спринг пока тоже сказать не могу Это сообщение отредактировал(а) Andrey1 - 28.8.2010, 09:55 -------------------- Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания. из сутры помоста шестого патриарха Хуэйнена |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |