. Евгений Борисов — Power of Gradle
Встреча JUG.ru 31.08.2013
Вы замучались работать с Ant’ом? Вас утомило отсутствие гибкости у Maven’a? Вам бы хотелось пользоваться наиболее современным и простым фреймворком для автоматизации сборки проектов? Данный доклад представит вам Gradle, наиболее оптимальный сборщик на сегодняшний день. Gradle пытается объединить в себе все плюсы Ant, Maven и Ivy. И представить то, что получилось, с помощью Groovy. Теперь вместо того, чтобы скрещивать Batch-скрипты, java и xml-файлы конфигурации, можно просто написать несколько строчек кода на диалекте Groovy и радоваться жизни. Диалект специально разработан для описания сборки, тестирования, развертывания, экспорта и любых других действий над проектом, которые только могут прийти вам в голову.В процессе доклада вы ознакомитесь с тем, как Gradle может помочь при решении проблем, с которыми мы ежедневно сталкиваемся в процессе сборки проекта, и узнаете о преимуществах декларативной сборки над императивной без привычных для вас трудностей. Мы также поговорим о том, насколько просто перейти с Анта на Gradle и в чем его преимущество перед maven-ом. Данная презентация завершится демонстрацией работы Gradle на не тривиальной проблеме сборки.
. Много лет назад Java-программисты пользовались «new» для создания сервисов. Они проделывали огромное количество ручных действий и смешивали конфигурацию с бизнес-логикой. Они даже использовали техники copy-paste. Было написано много строк убогого кода, который временами даже работал. Но при этом они понимали (почти) всё, что делали, и при возникновении проблем могли легко заняться отладкой.
Потом появился Spring. С ним многое изменилось… Мы получили много «магии» из волшебного цилиндра Spring, и наш код стал более чистым, простым и поддерживаемым. Бизнес-аспекты отделились от технических, но отладка усложнилась.
А затем появился Spring Boot.
С одной стороны, он решает тысячи ранее существовавших проблем: конфликты версий, задачи конфигурации, работа с инфраструктурными бинами, проблему настройки окружения, и, конечно же, запуск или деплой приложения, включая сборку jar/war-архивов… С другой стороны, Spring Boot добавил в наш волшебный цилиндр ещё больше магии. В результате имеют место быть два сценария:
Всё прекрасно работает, хотя никто не знает, как.
Ничего не работает, и никто не знает, почему.
Этот доклад раскроет основные секреты магии Spring Boot. Вы осознаете основные принципы и конвенции, по которым работают типичные Spring Boot-приложения. Наша задача — чтобы вся магия из цилиндра превратилась для вас в куда более прозрачный процесс. Тогда вы сможете не только получать удовольствие, когда всё работает, но и понимать суть возникающих проблем, решая их без привлечения скорой помощи.
. Постоянно работая со Spring, Евгений ранее уже выступал с докладом Spring Puzzlers. Теперь он возвращается с новыми проблемами, нюансами и задачами, требующими нестандартных решений — но у нового доклада более серьёзный формат. Будут разбираться конкретные ситуации, часть из которых могла попадаться вам в реальных проектах, часть ещё попадётся, а что-то покажется совершенно эзотерическим — но все случаи взяты из реальных проектов. Мы будем говорить в основном про spring-core, оговаривая в процессе последние изменения, которые внёс Spring 4.3.
. Евгений Борисов — Spring-потрошитель, часть 2
Встреча JUG.ru
Санкт-Петербург, 26.06.2014
Казалось бы, зачем знать, как работают внутренности спринга для того, чтобы им пользоваться? Работает? Ну и ладно.
Но как всегда, для эффективной работы с фреймворком, неплохо бы понимать, что находится под капотом. Ведь только понимая его внутреннее устройство, вы сможете пользоваться Спрингом на полную мощность, адаптировать его под нужды вашего проекта, добиться максимальной производительности и решить любую проблему самостоятельно, не обращаясь в Spring-сервис-центр.
Итак, несколько вопросов про Spring, которые мы рассмотрим в рамках данного доклада (с примерами к каждому):
Насколько Spring влияет на производительность вашей программы?
Что входит в жизненный цикл спринга?
Как устроен ApplicationContext?
«Вот это на Spring сделать нельзя» — а может можно?
It is fun to write a library or a framework. It allows us to play with many interesting ideas that were not possible before due to the constraints in others work. However, utmost care must be taken to build it great.
In this session, Trustin Lee, the founder of Netty project and Armeria, shares you the opinionated key practices from his recent works which might be useful when you build your own library or framework, or even designing an API for your project.
It is fun to write a library or a framework. It allows us to play with many interesting ideas that were not possible before due to the constraints in others work. However, utmost care must be taken to build it great.
In this session, Trustin Lee, the founder of Netty project and Armeria, shares you the opinionated key practices from his recent works which might be useful when you build your own library or framework, or even designing an API for your project.
. Много лет назад Java-программисты пользовались «new» для создания сервисов. Они проделывали огромное количество ручных действий и смешивали конфигурацию с бизнес-логикой. Они даже использовали техники copy-paste. Было написано много строк убогого кода, который временами даже работал.
Потом появился Spring. С ним многое изменилось… Мы получили много «магии» из волшебного цилиндра Spring, и наш код стал более чистым, простым и поддерживаемым.
И вот появился Spring Boot. С одной стороны, он решает тысячи ранее существовавших проблем: конфликты версий, задачи конфигурации, работа с инфраструктурными бинами, проблему настройки окружения, и, конечно же, запуск или деплой приложения, включая сборку jar/war-архивов… С другой стороны, Spring Boot добавил в наш волшебный цилиндр еще больше магии. В результате имеют место быть два сценария:
Всё прекрасно работает, хотя никто не знает, как.
Ничего не работает, и никто не знает, почему.
Этот доклад раскроет основные секреты магии Spring Boot. Вы осознаете основные принципы и конвенции, по которым работают типичные Spring Boot-приложения. Наша задача, чтобы вся магия из цилиндра превратилась для вас в куда более прозрачный процесс и вы смогли не только получать удовольствие, когда всё работает, но и понимали суть возникающих проблем и могли решить их без привлечения скорой помощи и других служб, доступных по срочным вызовам.
Строки. java.lang.String. Пожалуй, наиболее изученный класс в Java. Все его использовали бессчётное количество раз, и порой кажется, что уже не осталось ничего, чем он может нас удивить. Но всегда ли правильно мы его используем? Рискнем предположить, что далеко не всегда. Доклад об использовании строках и связанных с ними граблях.
. Vaadin довольно широко известен в среде Java как фреймворк для разработки UI. Некоторое время назад вышла революционная версия Vaadin 10, в которой разработчики полностью поменяли технологический стек, переосмыслили API и предприняли попытку сделать UI-фреймворк на Java по-настоящему простым. Отдельный интерес представляет механизм синхронизации состояния UI, который можно применять вместе с другими фронтенд-фреймворками.
Теперь, когда Vaadin Flow уже можно считать готовым к продакшну, мы выясним, можно ли делать UI на Java быстрым и удобным, а также постараемся понять, для каких приложений эта технология подходит, а каким лучше её сторониться. Цель этого доклада — пристальный анализ внутренностей фреймворка и поиск подводных камней, он призван помочь вам составить своё мнение о технологии без маркетинга и хайпа.