Size: a a a

2020 May 05

AN

Alexander Nozik in Kotlin JVM
Dmitry Tsydzik
речь, наверное, о компоновке проекта
И она тоже зависит от задачи. Вообще типичная компановка есть в тутриале - пилим на модули и реализуем по отдельности
источник

BP

Bogdan Panchenko in Kotlin JVM
Max Gusev
Я с мобилок, это верно подмечено. Сейчас появилось тьма тьмущая строчек кода, и все это дело надо бы разбить\спрятать\запрятать
разбиваем модулями ктор, 1 модуль - компонент (на примере как в спринге). даже модуль можно разбить на эксеншин функции
источник
2020 May 06

AM

Andrew Mikhaylov in Kotlin JVM
https://docs.gradle.org/6.4/release-notes.html#building,-testing-and-running-java-modules
Тут кстати эцсамое, в Gradle 6.4 какую-то поддержку модулей завезли
источник

BP

Bogdan Panchenko in Kotlin JVM
Andrew Mikhaylov
https://docs.gradle.org/6.4/release-notes.html#building,-testing-and-running-java-modules
Тут кстати эцсамое, в Gradle 6.4 какую-то поддержку модулей завезли
А прошло времени всего-то ничего 🙃
источник

AM

Andrew Mikhaylov in Kotlin JVM
Но при этом описания модулей всё равно надо ручками делать, то есть они по сути повторяют 1-в-1 зависимости в гредле
источник

VP

Vladimir Petrakovich in Kotlin JVM
Это да, но хоть так
источник

VP

Vladimir Petrakovich in Kotlin JVM
Но модули остаются фичей, нужной далеко не всем
источник

VA

Victor Alenkov in Kotlin JVM
Andrew Mikhaylov
https://docs.gradle.org/6.4/release-notes.html#building,-testing-and-running-java-modules
Тут кстати эцсамое, в Gradle 6.4 какую-то поддержку модулей завезли
но сломали shadow в runShadow… баг-реквест правда ещё не завёл - пример надо закинуть
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Но модули остаются фичей, нужной далеко не всем
Я так и не понял, что они дают при наличии градл сборки. Быстрее загрузку?
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Я так и не понял, что они дают при наличии градл сборки. Быстрее загрузку?
Возможность спрятать пакет от сторонних глаз, проверки доступа в рантайме, да пожалуй и всё.
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Возможность спрятать пакет от сторонних глаз, проверки доступа в рантайме, да пожалуй и всё.
Ну это так себе бонус.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Т.е. в контексте котлина на сервере - ровно ничего 🙂
источник

AN

Alexander Nozik in Kotlin JVM
Не, ну там есть более симпатичный синтаксис для сервис лоадеров. И по-моему все-таки какие-то оптимизации загрузки. но как-то маловато будет.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Я так и не понял, что они дают при наличии градл сборки. Быстрее загрузку?
Со сборкой связи никакой - закидывать джарники в classpath можно было и раньше.
Мне кажется, модули созданы больше для изоляции внутренностей JDK, и спасибо им за это.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Не, ну там есть более симпатичный синтаксис для сервис лоадеров. И по-моему все-таки какие-то оптимизации загрузки. но как-то маловато будет.
Туда не копал, тоже весьма специфичная штука
источник

AM

Andrew Mikhaylov in Kotlin JVM
Vladimir Petrakovich
Туда не копал, тоже весьма специфичная штука
Там, собственно, сервисы просто экспортируются в module-info вместо обычного подхода с манифестом.
источник

AM

Andrew Mikhaylov in Kotlin JVM
Более удобно, конечно, просто в одном месте перечислить интерфейсы с реализациями из текущего модуля, чем заводить это файлами где-то поштучно. Хотя те, у кого их много, обычно вроде AutoService пользуются.
источник

AM

Andrew Mikhaylov in Kotlin JVM
Хотя kapt медленный))
источник

VP

Vladimir Petrakovich in Kotlin JVM
Andrew Mikhaylov
Там, собственно, сервисы просто экспортируются в module-info вместо обычного подхода с манифестом.
Манифест - это про osgi скорее, обычно отдельные файлики в META-INF
источник

AM

Andrew Mikhaylov in Kotlin JVM
Vladimir Petrakovich
Манифест - это про osgi скорее, обычно отдельные файлики в META-INF
Да, прошу прощения, всё правильно
источник