Prijavi se na najbolj priljubljen tečaj: WEB DEVELOPMENT 1.
Poglej več

Vloga JavaScripta v modernem spletnem razvoju

Monolitna arhitektura

V kolikor si šele vstopil/a v svet spletnega programiranja (web development), si se najbrž najprej spoznal/a s t.i. monolitno spletno arhitekturo.

Kaj to pomeni?

Monolitna arhitektura spletnih aplikacij pomeni, da sta tako “front-end” (vizualni vmesnik spletne aplikacije), kot tudi “back-end” (programska logika aplikacije) del ene in iste spletne aplikacije. Sta “monolit”.

Smartninja_sola_programiranja_tecaji_monolith vs api 1612804503

API

Obstaja pa tudi alternativni način spletne arhitekture, ki je razdeljen v več programov oz. aplikacij (kot vidno na sliki zgoraj).

V osrčju tovrstne arhitekture stoji t.i. API, ki skrbi za podatkovno bazo (branje podatkov, zapisovanje). API je v tem primeru ekvivalent back-enda v monolitni arhitekturi.

Vizualni vmesnik (front-end) je v tem primeru ločena spletna aplikacija, ki kliče API, zato da od njega pridobi podatke, ali pa jih tja pošlje, da se zapišejo v podatkovno bazo.

Prednost tovrstnega načina razvoja je v tem, da se vanj zlahka doda tudi druge vrste uporabniških vmesnikov, na primer mobilne aplikacije (Android, iOS) ali pa računalnški programi. Vsi ti kličejo API na enak način, kot spletni front-end.

Vloga JavaScripta

Spletni front-end igra vlogo vizualnega vmesnika, ki je zgrajen s HTML in CSS kodo. Vendar pa jezikov HTML in CSS ne moremo uporabiti za pridobivanje in procesiranje podatkov iz API-ja. Namesto tega potrebujemo nek programski jezik (HTML in CSS nista programska jezika).

Ob odsotnosti back-enda, nam je v front-endu na voljo le en programski jezik: JavaScript.

Zakaj le JavaScript?

Zato ker brskalniki (Chrome, Firefox, Edge in vsi ostali) podpirajo le JavaScript kot programski jezik, ki deluje znotraj t.i. front-enda. Razlog za to je zgodovinske narave ter posledica t.i. “Vojne brskalnikov” konec 90-ih in v začetku 2000-ih, kjer se je naposled JavaScript uveljavil kot standard.

Pri monolitni arhitekturi JavaScript ni obvezen del front-end razvoja (ampak bolj koristen “bombonček”), medtem ko pri API arhitekturi pa brez JavaScripta na front-endu ne gre.

JavaScript ogrodja

V kolikor gradimo front-end, ki komunicira z API-jem, postane količina napisane JavaScript kode hitro zelo velika. Zato nam prav pridejo t.i. JavaScript ogrodja (ang. frameworks), s katerimi lažje strukturiramo kodo in jo naredimo bolj pregledno.

Tri najbolj popularna JavaScript ogrodja trenutno so React, Vue ter Angular.

Smartninja_sola_programiranja_tecaji_react angular vue 1556816424

Ali se moram naučiti vsa tri ogrodja?

Vsa ta ogrodja uporabljajo zelo podobne koncepte (spletne komponente), zato v kolikor se naučiš enega, ni težko preiti na katerega od ostalih, če/ko je to potrebno.

Vendar pa je pomembno da se, predno greš v učenje ogrodij, dobro naučiš samega jezika JavaScript. Dobro poznavanje tako prednosti, kot tudi slabosti JavaScripta, ti namreč močno olajša delo z omenjenimi ogrodji.

Kdaj uporabiti monolit in kdaj API?

Odvisno od primera ter potreb posameznega projekta.

Kljub temu, da je koncept monolitne arhitekture starejši, še ne pomeni, da je zastarel. Še vedno se pogosto uporablja, saj ima kar nekaj prednosti v primerjavi z API arhitekturo (razvoj monolita je hitrejši in bolj preprost, ter ponavadi boljši za SEO).

Po drugi strani pa ima tudi API arhitektura veliko prednosti, na primer modularnost in lažjo podporo večim vrstam odjemalcev (brskalnik, mobilna aplikacija, računalniški program).

Zatorej je odločitev, katero arhitekturo izbrati, odvisna od potreb konkretnega projekta. Zelo pogosto projekti začnejo svojo pot kot monolit (ker se ga hitreje zgradi) in se nato kasneje razvijejo v API arhitekturo, v kolikor se pokaže potreba po tem.

Na SmartNinja tečaju Web development 1 je fokus na gradnji monolita, na tečaju Web development 2 pa se pridobljeno znanje nadgradi z API arhitekturo ter dobrim razumevanjem JavaScripta.

Preberi si več o Web Development 2 tečaju in se pridruži svetu programerjev, izurjenih v JavaScriptu. Na tečaju boš imel/a priložnost spoznati ostale tečajnike in reševati izzive, ob katerih ti bo ob strani (in na voljo za vprašanja) ves čas stal inštruktor. Izkoristi priložnost za učenje programiranja in nadgradi svoje znanje na SmartNinja tečajih programiranja.

Nadaljuj z branjem

  • Zaposlitve v programiranju: september 2023

    Mesec september prinaša nove zaposlitve v programiranju. Na voljo je kar nekaj različnih nivojev in vrst zaposlitve, tako da vabljeni k branju in seveda prijavi na delovno mesto. Kaj pa…
  • Tečaji “Smartninja šola programiranja” explained

    Zaradi aktivnega sodelovanja naših inštruktorjev in velikega interesa tečajnikov Smartninja šola programiranja nenehno dodeluje in dodaja nove tečaje programiranja. Vrata priložnosti za izboljšanje digitalnih veščin so pri nas vedno odprta!…
  • Zaposlitve v programiranju: avgust 2023

    Nov mesec, nove zaposlitve! V avgustu se že kar nekaj podjetij zbuja iz poletnega dopustovskega spanca (😉) in na voljo so nove zaposlitve v programiranju! Kam se prijaviš? Monolit Monolit…
  • Učenje programiranja: doma ali na univerzi?

    V zadnjih letih se je programiranje in spletno razvijanje uveljavilo kot ena najbolj zaželenih veščin na trgu dela. Z naraščajočim povpraševanjem po programerjih se postavlja vprašanje, ali je bolje programiranje…