То, что менты живут на порядок лучше врачей и учителей, хотя должно быть ровно наоборот, и в нормальных странах так и есть
Поголовный непрофессионализм на всех уровнях, начиная от гос.служащих, врачей, учителей, и заканчивая водопроводчиками. Профессионалы есть, но они скорее исключение, чем правило. Все собственно следствие развала образования в
А можна детальніше про
«all hands» або «happy hours»
проблема в том, что из-за спама посредников найти прямые предложения совсем непросто, а иногда и невозможно
У нас в офисе такие, только черные pn.com.ua/md/141427
Зачетное и относительно недорогое кресло. Надежное. Сейчас кожаные серийно не выпускают но на заказ, думаю, сделают.
spring boot reusable modules
Не зовсім ясно про що мова. Нагуглити не вийшо.
Ну це про модульну архітектуру, наприклад цей лінк Modularizing a Spring Boot Application
Скажімо одному з ваших клієнтів потрібна підтримка однієї платіжної системи, а іншому — інша, чи взагалі не потрібна.
Тут я думаю що може й нема про що сперечатися.
Я просто глянув на хабрі ваш профіль про вашу специфіку, там дійсно нетривіальна інфраструктура і кастомні бінарні протоколи, тож і спрінг там не дуже допоможе.
А у нас кривавий ентерпрайз, там основна нетривіальність у доменній логіці, тому й спрінг заходить нормально.
Тож просто може це різні кейси нетривіальності.
Берем авс лібу, пишем 15 строчок кода + конфіг. Все. Навіщо тут спрінг?
Ну якщо так міркувати, нащо тоді JPA наприклад.. Беремо JDBC та й пишемо.. Та й взагалі, нащо фреймворки, той же vertx.. Беремо netty (чи undertow) та й пишемо..
А відповідь тут така, що на нетривіальному проекті у такому випадку буде дописано пів-велосипеда, що не скоротить загальну кількість коду, але значно ускладнить підтримку.
Про vertx взагалі не розумію у чому хайп, однопоточність та реактивність з усіма їх проблемами.
Quarkus досить прогресивний фреймворк, як на мене, але дивлячись на те, як розробники кинули підтримку Wildfly/Thorntail, я б не поставив на них більше у серйозному проекті. Навряд чи вони протримаються ще років з 10 (а спрингу вже більше 15), щоб досягнути зрілості спрінга.
Взагалі то тенденція дуже здорова, все що можливо зробити ahead of time при компіляції та збірці, замість рантайму. Вона взагалі прослідковується і у фронтенд фреймворках також, наприклад stencil чи angular aot.
Але на мою думку розробники спрінгу теж не сидять на місці і працюють у цьому напрямку, і може навіть у них нормальний результат вийде швидше, бо в цілому у них ідеологія більше на це спрямована.
А головна ідеологія спрінга, як на мене, то декларативність. Замість програмування більшість коду містить конфігурації готових компонентів інфраструктури, сама доменна логіка, та невелика кількість кастомної інфраструктури, якщо треба. Тобто, така ідеологія дозволяє сконцентруватись на доменній логіці замість кодування інфраструктури.
І такий підхід досить ефективно працює з генераторами застосунків, як JHipster наприклад.
Якщо проблема з великим розміром залежностей у спрінга, може подивитись у іншу сторону, і пошукати, як їх зменшити? Ми наприклад колись proguard застосовували для оптимізації залежностей у великому апплеті, може і тут треба у цю сторону дивитись, на Андроїді то досить звична річ.
Проблеми з швидкістю старту також можна вирішувати, прибравши зайві компоненти, та використовуючи lazy ініціалізацію наприклад, де можливо.
Та воно то так, взагалі тими модулями не дуже є чим пишатися, але шо маємо то маємо. jdeps може і працював би нормально, якщо б сам застосунок та усі його залежності також були модулями, але до цього також як до Європи, будь воно неладно :)
Ви, друже, ідіть у інші гілки трольте node.js розробників, щось мені здається що то go скоро почнуть усе оптом переписувати на щось інше.
Та будь який нетривіальний юзкейс, візьміть наприклад інтеграцію з хмарними провайдерами та апі для централізованої конфігурації, ресурс діскавері, чи діагностики, наприклад логи у cloudwatch або параметри з parameterstore.
Інтеграція не з такими стандартними базами даних, як Postgresql а, скажімо, хоч Redis чи Neo4j або Elasticsearch. Більш менш пристойне кешування. Але найбільше мені не вистачає якоїсь заміни Spring Securіty. Є якась підтримка jwt та й усе.
Спробуйте ще наприклад розробити щось на кшталт spring boot reusable modules, коли ви можете просто добавити залежність у pom та автоконфігурація усе підтягне. Конфігурація то взагалі окрема справа. Такої зручної та гнучкої конфігурації як у Spring boot дуже не вистачає.
Всем этим альтернативам пока до спринга как Украине до Европы
Не самое оптимальное решение. Я для создания базового образа использую сборочный контейнер, а сам базовый образ делаю на основе distroless base. Получается проще и меньше весом.
github.com/...ge/blob/master/Dockerfile
А для сборки образа с приложением использую jib, он разбирает спринг бутовый fat jar на оптимальные слои.
Якщо за них готові платити гроші, то вони вже як мінимум непогані
Потому что все остальное хуже саппортится. Насчет Хибернейта я отчасти соглашусь, мне например jdbi3 хорошо зашел, по крайней мере лучше чем jooq, чем-то похоже на spring data jdbc, а вот спрингу к сожалению реальных альтернатив по качеству пока нет, хотя его монструозность меня тоже доставляет слегка. Смотрел я и на quarkus и на dropwizard, все это хорошо для прототипов только пока. Все реактивные фреймворки тем более пока в топку.
Для DI вообще можно без фреймворков обойтись, тк это паттерн проектирования.
Да, мне тоже интересно, что используют хорошие проекты на джаве?
А якщо спробувати щось на кшталт DevOps / DevSecOps ? На мій погляд дуже перспективний напрямок, щось на межі програмування та безпеки, я навіть десь читав, що девопси коштують дорожче розробників
Жукова -> Петра Григоренка
Жукова -> Петра Григоренка -> Жукова :(
Действительно творческого дизайнера ИИ не заменит еще долго, если вообще заменит.
Посмотрите к примеру на сайт web design awards.