IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

1. diel - Úvod do Spring Boot frameworku pre Kotlin

V dnešnom Spring Boot tutoriále sa zoznámime s najpoužívanejším a teda najobľúbenejším frameworkom pre tvorbu webových stránok v jazyku Kotlin.

Spring Boot sa používa v Jave. A ako už vieme z predošlých lekcií, Kotlin je nadstavbou samotnej Javy. A preto nemá jediný problém s používaním všetkého, čo bolo zamýšľané pre Javu.

Dnes si povieme, prečo je Spring tak populárny a popíšeme si rozdiel medzi jeho dvoma distribúciami. Povieme si, aké technológie budeme používať a tiež sa pozrieme, ako funguje výsledná aplikácia vo firmách, ktoré framework Spring Boot používajú.

Spring a Spring Boot

Zrejme ste už počuli o Javovskom frameworku Spring. Ľudia si často myslia, že Spring a Spring Boot je úplne to isté, len sa vytvoril Spring ako slangový názov. Nejedná sa však o to isté!

Spring

.<> SPrng - Spring Boot v Kotline

Spring ako taký je open-source framework, ktorý bol do povedomia verejnosti uvoľnený v roku 2003 pod licenciou Apache. Spring Framework slúži na jednoduchý vývoj webových aplikácií v Jave. Poskytuje nám množstvo funkcií, ktoré nám uľahčia život a niekoľko tisíc riadkov kódu.

Tento obľúbený framework je možné nasadiť vo všetkých aplikáciách tvorených v Jave.

Spring Boot

.<> SpringBootLogo - Spring Boot v Kotline

Spring Boot je nadstavba javovského Springu. Implementuje z neho všetky funkcie, ale ešte k tomu obsahuje aj niečo navyše, napríklad server Tomcat, ktorý naše projekty zaručene uľahčí.
Hlavnou výhodou tohto frameworku je to, že server nemusíme zložito nastavovať, všetko je totiž vyriešené za nás. Spring Boot totiž vytvorí simuláciu, ktorá bude vyzerať ako existujúce pripojenie.

Spring Boot obľúbený vo firmách, kde je využívaný predovšetkým vďaka svojej jednoduchosti.

Aplikácie využívajúce tento framework sa teda vyvíjajú podstatne ľahšie a rýchlejšie ako v samotnom Springu. Vďaka tomu je aj Spring Boot vhodný aj pre čerstvo začínajúcich programátorov webových aplikácií, a to najmä vďaka minimalizácii problémov s konfiguráciou servera.

Pokiaľ sa naučíme Spring Boot, sme schopní bez problému ovládať aj Spring.

Potrebné znalosti

K tomuto kurzu je nutné poznať:

Potrebné technológie

Na sprevádzkovanie projektu budeme ďalej potrebovať:

Pokiaľ ste s IntelliJ IDEA ešte nepracovali, odporúčam najprv absolvovať predchádzajúce kurzy -> Základy a OOP v Kotline, kde nájdete základné inštrukcie, ako s týmto vývojovým prostredím pracovať a kde ho získať. Ide o veľmi obľúbené a prehľadné prostredie.

  • JDK 1.8 alebo vyšší (kurz je písaný vo verzii 17),
  • technológiu Gradle, čo je mocný nástroj pre automatizované zostavovanie programu. Ten použijeme na vloženie Spring Boot frameworku do nášho projektu.

Frontend a backend

V Springu je možné vytvárať kompletné fullstackové aplikácie (frontend aj backend). Tieto termíny vo webových aplikáciách znamenajú:
  • frontend - je tá časť webovej stránky, ktorú vidí používateľ. Ide vlastne o používateľské rozhranie webovej aplikácie. Užívateľ sem buď zadáva vstupné dáta, alebo naopak získava dáta výstupné. Najčastejšie sa jedná o HTML kód a JavaScript.

JavaScript sa užívateľovi zo servera posiela, aby videl výslednú webovú stránku, ktorá je navyše interaktívna.

  • backend - je časť stránky, ktorú používateľ nevidí. Je to teda logika celej aplikácie, ktorá pracuje napríklad s databázou. Ide o kód v Kotline, ktorý je na strane servera, a ku ktorému používateľ nemá (alebo by aspoň nemal) mať vôbec žiadny prístup.

Hoci je v Springu možnosť tvoriť plne fullstackové aplikácie, väčšinou sa tvorí iba backendová časť. Frontendová časť sa pripája prevažne cez nejaký iný Javascriptový framework ako sú napríklad Angular, React alebo Vue.

MVC a Dependency Injection

Predstavíme si MVC architektúru a návrhový vzor Dependency injection.

Model-View-Controller (MVC)

Spring Boot je postavený na MVC architektúre. MVC nám rozdeľuje aplikácie do 3 vrstiev (M odel - V iew - C ontroller), čo zvyšuje jej prehľadnosť a zrýchľuje orientáciu programátora v kóde prevažne pri väčších aplikáciách. Hlavne ale oddeľuje logickú časť aplikácie od tej prezentačnej. Prostredníkom je práve Controller, ktorý obe vrstvy prepája.

Dependency injection

Dependency injection je návrhový vzor na odovzdávanie závislosti medzi jednotlivými objektmi.

A práve obrovskou výhodou Springu je, že má v sebe integrovaný návrhový vzor Dependency Injection. Ide o spôsob, ktorým si akýkoľvek objekt požiada o ďalšie objekty, ktoré potrebuje k svojej činnosti a na ktorých je závislý. Potom môže náš objekt využívať služby ostatných objektov.

D ependency I njection (niekedy tiež skrátene DI alebo DI kontajner) pracuje minimálne s tromi objektmi:

  • objekt, ktorý služby požaduje,
  • sprostredkovateľ, označený termínom Provider,
  • poskytovateľ služieb predstavujúci objekt, ktorého služby chce náš objekt na vykonanie činnosti použiť.

Obrovské množstvo výhod má Spring Boot v jednoduchosti kódu, pretože obsahuje množstvo menších knižníc, ktoré uľahčia prácu s objektmi a komunikáciu s frontendom. Stretneme ich ďalej v kurze.

V budúcej lekcii, Vytvorenie Spring Boot projektu v Kotline , si založíme prvý projekt. Zoznámime sa s prostredím a funkciou webovej stránky.


 

Všetky články v sekcii
Spring Boot v Kotline
Preskočiť článok
(neodporúčame)
Vytvorenie Spring Boot projektu v Kotline
Článok pre vás napísal Vašek Doškář
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor pracuje jako pedagog v oblasti elektroniky, elektrotechniky a programování. Rád tvoří appky všeho druhu. Má přehled v jazycích C#, Java, Kotlin, Javascript, Python a Rust
Aktivity