Seminarske delavnice
Sreda, 18. junij 2014 od 14:00 do 17:00
AngularJS – več kot samo JavaScript |
Hramba in obdelava velikih količin podatkov s pomočjo produktov »NoSql« |
Razvoj spletnih programskih vmesnikov z uporabo ogrodja ASP.NET Web API |
Prijava na delavnice je mogoča ob prijavi na konferenco.
AngularJS – več kot samo JavaScript
Aleš Černezel, Gregor Jošt
Razvoj spletnih aplikacij na eni strani (angl. single page application – SPA) postaja v svetu mobilnih in spletnih aplikacij vse popularnejše. Takšne aplikacije so tesno povezane z obstoječimi spletnimi tehnologijami, kot so HTML5, JavaScript in CSS3. SPA omogoča, da vključimo vso funkcionalnost aplikacije v en dokument z namenom hitrejšega delovanja. V kolikor želimo imeti več podstrani, prehod med njimi poteka brez ponovnega nalaganja dokumenta ali preusmeritve na drug dokument. Interakcija pri SPA pogosto vključuje tudi dinamično komunikacijo s spletnimi storitvami.
AngularJS je odprtokodno JavaScript ogrodje za razvoj SPA aplikacij, ki vpeljuje arhitekturni vzorec MVC (angl. model-view-controller). AngularJS omogoča vezenje podatkov (angl. data binding), usmerjanje (angl. routing), testiranje enot, kontrolnike, preverjanje veljavnosti, izdelavo šablon (angl. templating) in več. Zaradi vpeljave MVC vzorca razvijalcu ni potrebno več manipulirati DOM ali vključiti kakršnihkoli drugih knjižnic (npr. jQuery), kar posledično tudi pohitri razvoj in omogoča pisanje preglednejše programske kode.
Od udeležencev delavnice pričakujemo, da imajo aktivno poznavanje spletnih tehnologij, s poudarkom na JavaScriptu. Poznavanje MVC vzorca je zaželeno, vendar ni posebej zahtevano.
Predvidena agenda:
- Uvod in kratka predstavitev AngularJS
- Koncepti, ki se pojavljajo v AngularJS
- Šablone na strani odjemalca
- Vzorec MVC
- Vezenje podatkov
- Razvoj AngularJS aplikacij
- Direktive, filtri, vezenje podatkov
- Moduli in kontrolniki
- Usmerjanje
- Tovarne (angl. factories) / storitve
- Testiranje enot
Hramba in obdelava velikih količin podatkov s pomočjo produktov »NoSql«
Luka PavličMnožica podatkovnih baz, ki jim z eno besedo pravimo »NoSql« baze (NoSql = ne samo sql) predstavljajo eno izmed pomembnejših komponent trenutno zelo močnega gibanja, zajema in obdelave masovnih podatkov (big data). Ti izdelki praviloma ne gradijo na že uveljavljenih pristopih iz popularnih relacijskih baz podatkov, temveč zajem, hrambo, obdelavo podatkov ter vmesnike za dostop definirajo popolnoma na novo. Ker se odpovedo ACID transakcijam, gradijo predvsem na distribuiranem okolju ter garantirajo le osnovno dostopnost (BASE), gre za izjemno hitre in robustne podatkovne baze, ki so sposobne hrambe in obdelave praktično nepredstavljivih količin podatkov.
Od bolj uveljavljenih pristopov jih loči že podatkovni model: praviloma ni relacijski. Tudi poizvedovanje je drugačno: poizvedbe zapišemo v drugih jezikih, ne (le) SQL. Tipično nimamo možnosti združevanja podatkov (join), pogosto pa imamo na voljo že pripravljene agregacijske algoritme za porazdeljeno procesiranje, kot je npr. map-reduce. Poleg tega je tudi dostop do podatkov drugačen, saj zaradi relativno mladih tehnologij na tem področju še ni ustrezne standardizacije. A ker pod eno streho te podatkovne baze združujejo najboljše pristope in izkušnje iz velikih produkcijskih okolij, kot so Facebook, Google, Amazon ipd. bodo gotovo vedno pomembnejši sestavni del namenskih rešitev v podjetjih.
Predvidena agenda:
- Trajno shranjevanje podatkov malo drugače
- NoSql značilnosti in koncepti
- Prednosti in slabosti NoSql napram uveljavljenim (najpogosteje relacijskim) bazam podatkov
- Modeli in pristopi NoSql baz na praktičnih primerih (MongoDB, Apache Cassandra, Neo4J, Oracle NoSql)
- Kako izbrati ustrezen NoSql produkt?
Razvoj spletnih programskih vmesnikov z uporabo ogrodja ASP.NET Web API
Uroš Goljat, Jernej NovakČe je še nekaj let nazaj za primarnega odjemalca veljal uporabnik namiznega/prenosnega računalnika so se danes stvari vsekakor spremenile. Živimo namreč v svetu, kjer se večina odjemalcev vrti okoli pametnih mobilnih telefonov (iPhone, Android, Windows Phone) ali tabličnih računalnikov. Vsaka od teh naprav (vključno z osebnimi oz. prenosnimi računalniki) ima seveda različne zmogljivosti in sposobnosti. Vseeno pa imajo skupno vsaj eno stvar, vse podpirajo komunikacijo preko protokola HTTP.
Spletni programski vmesniki (Web APIs) omogočajo ponovno uporabo strežniške logike ob uporabi protokola HTTP, ki je odlično podprt na vseh modernih napravah. Zaradi svoje dostopnosti in preprostosti igrajo vse pomembnejšo vlogo v arhitekturi sodobnih mobilno podprtih porazdeljenih aplikacij.
Ogrodje ASP.NET Web API omogoča hiter in dokaj enostaven razvoj spletnih programskih vmesnikov, skladnih s principi REST. S tem lahko storitve uporablja veliko število različnih odjemalcev, od pametnih mobilnih naprav do spletnih brskalnikov. Korenine ogrodja izhajajo iz okolja ASP.NET MVC, kar omogoča razvijalcem ponovno uporabo obstoječega znanja tudi v domeni razvoja Web API storitev.
Udeleženci delavnice naj imajo osnovno predznanje programskega jezika C# in arhitekture storitev REST.
Predvidena agenda:
- Razlogi za razvoj in popularnost spletnih programskih vmesnikov
- Objektno relacijski preslikovalnik EntityFramework
- Razvoj enostavnega spletnega programskega vmesnika z uporabo ASP.NET Web API
- Gostovanje storitev z uporabo OWIN infrastrukture
- Izdelava interaktivne spletne aplikacije (Knockout)
- Izdelava aplikacije za trgovino Windows Store
Digitalni izziv |
Preizkusite se v veščinah informacijske varnosti in etičnega hekanja: |