Front ja back end
See artikkel vajab toimetamist. (Veebruar 2020) |
See artikkel ootab keeletoimetamist. |
Informaatikas mõistetakse termineid front-end kui kuvand, mida näeb kasutaja ja back-end kui see, mis toimub telgitagustes. Kliendi-serveri mudelis, klienti peetakse tavaliselt front-endiks ja serverit back-endiks, isegi kui mõningaid kuvandeid näidatakse kliendile serveris endas.
Tarkvaraarhitektuuris võib olla mitu kihti riistvara ja lõppkasutaja (kliendi) vahel. Front-end on kuvand (abstraktsioon), mis muudab sügaval sisimas oleva riistvara kasutajasõbralikuks, samal ajal back-end haldab kogu seda süsteemi, tegeleb loogika ja andmete salvestamisega.
Telekommunikatsioonis võid pidada front-endiks seadet või teenust, samal ajal back-end on aga infrastruktuur, mis toetab seda teenuse pakkumist.
Rusikareegel on see, et kliendipoolne osa (front-end) on kasutaja poolt mõjutatav komponent. Serveripoolne osa (back-end) asub tavaliselt serveris, mis asub kliendist eemal ning millega tegelevad tavaliselt programmeerijad.
Definitsioonid
- Sisuhaldusüsteemides (content management) terminid front-end ja back-end viitavad vastavalt lõppkasutaja CMS vaadetele ja administratiivvaadetele.[1]
- Kõnesünteesis front-end osutab kõnesünteesi osale, mis teisendab sisendteksti foneetiliseks transkriptsiooniks ja vastavalt siis back-end konverdib foneetilise transkriptsiooni tegelikeks helideks.[2]
- Suurte arvuti alamsüsteemide jaoks on graafiline failihaldur front-end, ehk see, mida sa ekraanid näed ja teha saad sellega. Back-end on see, mis käivitab programmid ja operatsioonisüsteemi arvutis.
- Kompilaatorites tõlgib front-end arvutiprogrammeerimise lähtekoodi vaheesituseks (intermediate representation), ja back-end võtab selle vastu ning töötab sellega, et väljstada kood arvuti väljundkeeles. Back-end tavaliselt optimeeritakse töötama nii, et koodi oleks võimalik kiiremini jooksutada.
- Käsurealiidese kasutamine nõuab spetsiifilise terminoloogia omandamist ja käskude meeldejätmist, seega graafiline kasutajaliides (GUI) töötab kui front-end.
Veebiarendamine kui näide
Veel üks võimalus, kuidas mõista nende kahe erinevust on aru saada, mis teadmisi nõuavad vastavalt front- ja back-end arendajad. Allolev nimekiri keskendub veebiarendusel kui näitena.
Mõlemad
- Versioonihalduse tööriistad nagu GitHub, SourceForge
- Failiedastus programmid nagu FTP või rsync
Front-end
- Märgistus- ja veebikeeled nagu HTML, CSS, JavaScript ja nendes keeltes kasutatavad abiteegid nagu Sass või JQuery.
- Asünkrooniliste päringute käsitlemine ja AJAX
- Kasutajaliides (GUI)
- Pilditöötlusprogrammid (GIMP või Photoshop)
- Otsingumootori optiseerimine
- Ligipääsetavusega seotud probleemid
Back-end
- Programmeerimiskeeled nagu Node.js, PHP, Python
- Kompileeritud keeled nagu C#, Java
- Andmete teisendamine
- Tarkvaraarhitektuur
- Turvaprobleemid, autentimine ja autoriseerimine
- Andmebaaside haldamine
Isegi kui mõlemad võivad töötada ühe projekti kallal, siis oskused, mida neil vaja läheb, on väga erinevad.
Viited
- ↑ Vimal Thapliyal. "Difference Between Frontend and Backend MVC". Vaadatud 28.02.2020.
- ↑ "L18: Speech synthesis" (PDF).