. Много лет назад 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. Все его использовали бессчётное количество раз, и порой кажется, что уже не осталось ничего, чем он может нас удивить. Но всегда ли правильно мы его используем? Рискнем предположить, что далеко не всегда. Доклад об использовании строках и связанных с ними граблях.