Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6   вперед  Ctrl      все
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Ржавый гвоздь
Member

Откуда:
Сообщений: 80
Тут другое интересно. Насколько я помню, при разработке джавы один из лозунгов был что то вроде "как написано, так и работает". Под эту лавочку туда не стали добавлять плюсовые макросы, которые могут превратить код в адок. И даже псевдонимы типов не сделали...
А потом взяли и добавили рефлексию, аннотации, джава-агенты. В итоге получили тот же самый адок, только в профиль, и теперь все соревнуются, кто больше аннотаций изобретет и понавешает.
19 май 20, 08:03    [22135477]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Ржавый гвоздь
Member

Откуда:
Сообщений: 80
Но самый перебор, это конечно не аннотации. Самый перебор - это когда поведение зависит от наличия той или иной зависимости без какой либо явной конфигурации. Вот где абсолютное зло.
19 май 20, 08:09    [22135480]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
Ржавый гвоздь
Тут другое интересно. Насколько я помню, при разработке джавы один из лозунгов был что то вроде "как написано, так и работает". Под эту лавочку туда не стали добавлять плюсовые макросы, которые могут превратить код в адок. И даже псевдонимы типов не сделали...
А потом взяли и добавили рефлексию, аннотации, джава-агенты. В итоге получили тот же самый адок, только в профиль, и теперь все соревнуются, кто больше аннотаций изобретет и понавешает.

Типа рефлексия это плохо?:) А как вы без неё сделаете модульное приложение расширяемое?
19 май 20, 09:12    [22135505]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Ржавый гвоздь
Member

Откуда:
Сообщений: 80
dakeiras

Типа рефлексия это плохо?:) А как вы без неё сделаете модульное приложение расширяемое?

Не всегда и не везде плохо. Но когда ее используют и где надо и где не надо - от нее больше вреда, чем пользы. Засилие аннотаций - типичный вредный пример, а какой нибудь сериализатор - вполне хороший.
19 май 20, 09:19    [22135509]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Ржавый гвоздь
Member

Откуда:
Сообщений: 80
Что касается модульных приложений, тот тут в подавляющем большинстве случаев никакая рефлексия не нужна, достаточно возможности загрузить класс и работать с ним через интерфейс.
19 май 20, 09:22    [22135511]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
Ржавый гвоздь
Что касается модульных приложений, тот тут в подавляющем большинстве случаев никакая рефлексия не нужна, достаточно возможности загрузить класс и работать с ним через интерфейс.

как вы загрузите класс по имени без рефлексии?
19 май 20, 09:41    [22135521]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
chpasha
Member

Откуда:
Сообщений: 9222
Ржавый гвоздь
Вот где абсолютное зло.

просто уже ткни сосиской туда, где абсолютное добро, мы закроем ветку и просто уйдем все туда, где ништяки и нет макросов с рефлексией.
19 май 20, 09:53    [22135529]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Ржавый гвоздь
Member

Откуда:
Сообщений: 80
dakeiras

как вы загрузите класс по имени без рефлексии?

Вот еще о терминах спорить не хватало. По моему, я предельно ясно пояснил, что именно имею в виду.
chpasha

просто уже ткни сосиской туда, где абсолютное добро

Понятия не имею. Но есть у меня подозрение, что добро должно коррелировать с количеством здравого смысла у разработчиков. У разрабов спринга он точно давно уже не ночевал.
19 май 20, 10:18    [22135550]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 1850
dakeiras,

dakeiras
как вы загрузите класс по имени без рефлексии?


Java SPI например.

Сообщение было отредактировано: 19 май 20, 11:09
19 май 20, 11:09    [22135587]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
mayton
Member

Откуда: loopback
Сообщений: 46599
Ржавый гвоздь
Тут другое интересно. Насколько я помню, при разработке джавы один из лозунгов был что то вроде "как написано, так и работает". Под эту лавочку туда не стали добавлять плюсовые макросы, которые могут превратить код в адок. И даже псевдонимы типов не сделали...
А потом взяли и добавили рефлексию, аннотации, джава-агенты. В итоге получили тот же самый адок, только в профиль, и теперь все соревнуются, кто больше аннотаций изобретет и понавешает.

+1
19 май 20, 11:11    [22135589]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
dakeiras,
А че тебя рефлексия зацепила?
Самый простой ответ раширяемого приложения это REST.
19 май 20, 11:15    [22135596]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 1850
mayton

Тоже самое про maven. Maven - делкаративен. Но нам чисто по человечески иногда важно чтобы
в фазе билда работал сначала этот плагин а потом этот. Хотя они декларированы как одно-ранговые.


В маевке это как раз таки детерминировано.
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Plugins
When multiple executions are given that match a particular phase, they are executed in the order specified in the POM, with inherited executions running first.
19 май 20, 11:16    [22135599]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
Zzz79,
автор
как по мне петро ты немного путаешь)
без анотаций ты становишься конфигурастом- а с анотациями программистом-

Дак есть пример - 1Сники.
Они открывают конфигуратор и работают без new.
А ты мне доказываешь что тот кто new не знает программист)))))
19 май 20, 11:18    [22135600]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
mayton
Member

Откуда: loopback
Сообщений: 46599
Lelouch
mayton

Тоже самое про maven. Maven - делкаративен. Но нам чисто по человечески иногда важно чтобы
в фазе билда работал сначала этот плагин а потом этот. Хотя они декларированы как одно-ранговые.


В маевке это как раз таки детерминировано.
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Plugins
When multiple executions are given that match a particular phase, they are executed in the order specified in the POM, with inherited executions running first.

Да. Это типичное отклонение от декларативности. Вроде и декларативно. Но в то-же время
есть "процедура" или "рецепт" к выполнению.
19 май 20, 11:36    [22135617]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
Lelouch
dakeiras,

dakeiras
как вы загрузите класс по имени без рефлексии?


Java SPI например.

это древнее неудобное г. для Java SE.

Вы сами этим пользовались перед тем как советовать?
19 май 20, 11:48    [22135628]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
PetroNotC Sharp
dakeiras,
А че тебя рефлексия зацепила?
Самый простой ответ раширяемого приложения это REST.


Ну REST это да, модульно:) RPC ещё. Ведь рефлексия это же так медленно (нет).
19 май 20, 11:51    [22135634]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 1850
dakeiras,

1) я не советовал, а отвечал на вопрос "как загрузить класс без рефлексии"
2) Да, пользовался, даже свои Service Provider писал

dakeiras
Ведь рефлексия это же так медленно (нет).

Видимо из-за того, что она такая быстрая (нет, она медленная) тот же Jackson кеширует информацию о типах...

Сообщение было отредактировано: 19 май 20, 11:55
19 май 20, 11:54    [22135641]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
dakeiras
PetroNotC Sharp
dakeiras,
А че тебя рефлексия зацепила?
Самый простой ответ раширяемого приложения это REST.


Ну REST это да, модульно:) RPC ещё. Ведь рефлексия это же так медленно (нет).

Зря иронизируете.
Вы просто связали рефлексию и модульность ПРИЛОЖЕНИЯ.
Это как связать болт и самолет.
Не связывается это в одно приложение осмысленное.
19 май 20, 11:58    [22135646]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
автор
Не связывается это в одно приложение предложение осмысленное.
19 май 20, 12:00    [22135648]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
chpasha
Member

Откуда:
Сообщений: 9222
Петро, пока тебя не было, на sql.ru редактирование постов завезли ;)
19 май 20, 12:03    [22135650]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
chpasha,
Давно меня не было)).
А вот цитирование выделенного в хроме смартфонном не работает))).
Sql.ru не догадалось с кнопки всплывающей в ГУИ продублировать команду на кнопку под постом Цитировать.
Ну а хром убирает кнопку от sql.ru команды.
19 май 20, 12:15    [22135660]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
Рефлексия и модульность это синонимы. Альтернатива рефлексии статический биндинг, но он не масштабируется.

Под рефлексией я подразумеваю в данном контексте Class.forName().newInstance.
19 май 20, 12:23    [22135669]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
Есть ещё одна альтернатива - run-time компиляция (Груви), она позволяет добиться модульности без использования рефлексии. Но это не всегда нужно, а по производительности одинаково (инстанциирование экземпляра класса).
19 май 20, 12:26    [22135672]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4841
dakeiras
Рефлексия и модульность это синонимы.
пруф есть? Вы меня удивили.
Рефлексия это уровень кода.
Модульность это АРХИТЕКТУРА.
19 май 20, 12:28    [22135673]     Ответить | Цитировать Сообщить модератору
 Re: Аннотации спринга, по-моему перебор, не? :)  [new]
dakeiras
Member

Откуда:
Сообщений: 447
PetroNotC Sharp,

Ну а как иначе в приложении на Яве поддержать плагины (модули)?

Или Вы под модулями понимаете модули Maven/Gradle?
Так это не те модули :) Их неправильно назвали модулями, на самом деле это просто приложения сгруппированные в общую последовательность сборки. А не модули никакие конечно.
19 май 20, 12:53    [22135702]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6   вперед  Ctrl      все
Все форумы / Java Ответить