Co to jest Spring? – pytanie rekrutacyjne

Share on facebook
Share on twitter
Share on linkedin
Co to jest spring framework?

Co to jest Spring?

Obecnie znaczenie pojęcia Spring może być różne zależnie od kontekstu. Zazwyczaj mówiąc „Spring”, mówca ma na myśli Spring Framework lub całą grupę projektów Spring, które zostały zbudowane w oparciu o Spring Framework.

Spring Framework jest projektem, który swoje pierwsze korzenie wypuścił w 2002 roku. W 2003 roku mogliśmy cieszyć się pierwszą wersją produkcyjną. Motywacją twórcy było stworzenie narzędzia do łatwiejszego budowania aplikacji enterprise, niż na ten moment dostarczała Java Enterprise Edition (tzw. Java EE). Uważał on, że Java EE jest trudna w użytku i pokazał jak można to zrobić lepiej.

Spring Framework

Spring Framework jest tak naprawdę corem, zawiera wszystko co potrzebujesz do stworzenia aplikacji enterprise. Znajdziemy w nim moduły takie jak:

  • Core – najważniejszą jego częścią jest Inversion of control container, to właśnie dzięki niemu mamy możliwość używania wstrzykiwania obiektów,
  • Testing – moduł służący do testowania,
  • AOP – aspekty, czyli możliwość wykonania kodu w określonej sytuacji np. przed uruchomieniem metody lub po jej skończeniu,
  • Spring MVC – tworzenie aplikacji webowych w opraciu o wzorzec Model-View-Controller (MVC).
  • Integration – planowanie zadań do wykonania, cache, wysyłanie emaili, wsparcie standardu JMS, monitorowanie aplikacji (JMX),
  • Data Access – transakcje.

Spring Projects

Pomimo wykorzystania głównego projektu Springa tj. Spring Framework, mamy możliwość również wykorzystać inne projekty – w zależności od naszych potrzeb.

  • Spring Data – zapewnia spójny interfejs do pracy z różnymi źródłami danych tzn. bazy danych SQL, NoSQL itd.,
  • Spring Cloud – narzędzie ułatwiające tworzenie i deployowanie aplikacji w architekturze mikroserwisowej,
  • Spring Security – moduł umożliwiający zabezpieczenie (uwierzytelnianie i autoryzacja) aplikacji,
  • Spring Boot – narzędzie, które umożliwia szybkie wystartowanie i deployowanie projektu Spring, bez konieczności konfigurowania całego projektu. Dzięki niemu aplikacja jest automatycznie uruchamia na serwerze aplikacyjnych np. Tomcat.

Projektów jest dużo więcej, całą listę znajdziesz tutaj. Każdy moduł posiada szczegółową dokumentację oraz przykłady jak zacząć z nowym narzędziem. Jeśli jesteś zainteresowany dokładnym działaniem mechanizmów Springa, polecam wczytać się w dokumentację. Moim zdaniem czyta się ją lepiej niż większość książek technicznych.

Materiały dodatkowew

Na blogu znajdziesz również wiele materiałów, w których pokazuję w jaki sposób można wykorzystać powyższe moduły w swoim projekcie. Pokazuje ich korzyści oraz czasami wchodzę trochę głebiej w ich mechanizmy (aby szybciej zrozumieć działanie).

Kamil Klimek

Kamil Klimek

Pierwszy kalkulator napisany w języku Pascal w podstawówce. Później miałem trochę przygód z frontendem oraz PHP, na studiach poznałem C++ oraz Jave. Obecnie prawie 3 letnie doświadczenie jako Java full stack develop. Blog jest miejscem, dzięki któremu mogę się dzielić wiedzą i pomagać innym w nauce programowania.
Subscribe
Powiadom o
guest
0 komentarzy
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x