Najnovšie technológie a štandardy

Neustále meniace sa technológie spôsobujú, že sa meníme aj my. Dnes je za technologicky silný projekt považovaný ten, ktorý je flexibilný. A flexibilitu je možné zabezpečiť len rozdelením zodpovedností a oddelením backendu od frontendu.

Backend je biznis logika aplikácie.

Jej podstatu tvorí dôkladná analýza potrieb a funkcií. Z toho vyplynú technologické požiadavky pre konkrétny projekt. Výsledkom je čierna skrinka, ktorá poskytuje dáta pre frontend a spracováva biznis logiku. Najpoužívanejším riešením tejto oblasti je RESTfull server ako webslužba. Tú vieme naprogramovať v PHP, Pythone alebo napr. aj Node.js (s použitím jeho implementačných frameworkov typu Meteor.js).

MariaDB PostgreSQL

Backend je priamo napojený na dátovú vrstvu. Tá je v nadväznosti na analýzu konkrétneho projektu buď relačná:

  • MariaDB
  • PostgreSQL

MongoDB

alebo no-SQL databáza:

  • MongoDB (Na mongoDB máme certifikovaných programátorov.)

Dátová vrstva môže predstavovať aj ďalšie REST rozhranie, nemusí to byť výlučne databáza. Toto všetko v kombinácii s cachovaním, prípadne inteligentnejším key-value storom (napríklad Redis.io), tvorí balíčkový základ celého projektu.

Rovnako dôležitá vrstva ako backendová je frontendová vrstva. Sem patrí všetko, s čím sa klient, alebo klientov zákazník stretáva. Frontendové programovanie sa realizuje pomocou PHP a šablónovacieho systému (klasický web) alebo ako samostatná JavaScript aplikácia, ktorá beží v prehliadači. Či web, alebo aplikácia, pripájajú sa na backend pomocou REST servera. Na tento je potom možné pripojiť akúkoľvek ďalšiu frontendovú vrstvu, napríklad natívnu iOS aplikáciu alebo natívnu Android aplikáciu, prípadne aplikáciu pre Windows Metro. Možnosti sú neobmedzené.

Angular React

Rýchle generovanie a flexibilné programovanie frontendových aplikácií typu single-page aplikácia, nám umožňujú javascriptové frameworky ako napríklad AngularJS, React. Design týchto aplikácií zabezpečujú naše vlastné CSS frameworky, alebo frameworky tretích strán, napríklad Bootstrap.