Developeri, koristite li Angular-Meteor?

Developeri, koristite li Angular-Meteor (i zašto biste trebali početi)

Na ovogodišnjoj Shift konferenciji, održanoj u Splitu, Uri Goldshtein, Core Developer open source tvrtke Meteor, predstavio je kombinirano korištenje Angulara i Meteora koje olakšava razvijanje aplikacija svih vrsta.

uri_shift
Prije Meteora, Uri je iskustvo stjecao kao softver developer u izraleskoj vojsci. Slike: Shift Conference.

Prisjetimo se, AngularJS već je duže vrijeme poznat kao framework koji se dodaje u <script> tag i olakšava rad s podacima. Danas skoro svaki realtime web ili mobile app projekt zahtijeva pristup bazama podataka na serveru, a, nažalost, AngularJS je samo client-side framework. Potreba za laganim pristupom podacima sa servera rezultirala je nastankom Meteor frameworka koji omogućava povlačenje i spremanje podataka na server koristeći JavaScript.

Kako raste IT industrija, tako će rasti i potreba za brzim i jednostavnim alatima  kojima se u kratkom roku mogu napraviti gotovi proizvodi. Sama mogućnost da se cijela aplikacija koja poziva i sprema podatke na server može napraviti tako da se koristi sintaksa samo jednog jezika zvuči mi jako primamljivo te sam se odlučio napraviti kratki sažetak Urijevog predavanja.

Zašto koristiti Meteor i Angular?

meteor_shift
Izvor: MongoDB

U prvih par minuta Uri je naveo tri primjera aplikacija s kojima je sigurno osvojio pažnju cijele publike. Primjeri za lagano korištenje kombinacije Angulara i Meteora, klonovi su poznatih aplikacija Trello, Uber i Slack koji su se morali povući zbog kršenja autorskih prava. Ti su klonovi nastali u kratkom vremenu te unutar malih timova, što pokazuje koliko se jednostavno mogu izraditi aplikacije svih vrsta.

Glavna prednost ove full stack kombinacije je JavaScript ekosustav. Svakim danom dolaze nove JavaScript biblioteke, a trenutno je najbolji cross platform jezik koji koristi veliki broj developera i koji omogućava razvijanje dinamičkih aplikacija koje pružaju bolji doživljaj korisnicima. Više nije potrebna ikona Refresh na preglednicima, a REST arhitektura gubi na važnosti kada se žele pokazati novi podaci. Jezik JavaScript nastao je u par dana i nije počeo kao dobar i omiljeni programski jezik, ali ga je industrija progurala svugdje posebno zbog poznatih browser warsa u kojima se natječu razni preglednici za dominaciju na tržištu.

Takvo natjecanje doprinijelo je današnjoj raširenosti JavaScripta i raznih proizvoda kao što su Angular.js, Three.js, React, jQuery i mnogi drugi.

Jedan od njih, Meteor, omogućava da se korisnici služe aplikacijom napisanom u JavaScriptu, a framework Meteor pobrine se za sve podatke koje korisnici zahtijevaju ili spremaju na server. Najčešće se spominje kako Meteor koristi Mongo bazu podataka, ali radi i s raznim drugim bazama.

Koje su prednosti?

Potreba za laganim pristupom podacima sa servera rezultirala je nastankom Meteor frameworka.

Funkcioniranje neke dinamične aplikacije koja koristi Meteor možemo prikazati na primjeru društvene mreže koja korisnicima pruža mogućnost upvotea ili lajkanja. Korisnik će sadržaj koji mu se sviđa lajkati i u istom trenutku će JavaScript funkcija napraviti promjenu na izgledu aplikacije. Korisnik će odmah vidjeti rezultat svoje akcije, premda je potrebno određeno vrijeme da se ista zabilježi u bazi podataka na serveru.

Problem može nastati u trenutku kada 10 ili više korisnika napravi istu akciju, a aplikacija treba pokazivati koliko je ljudi trenutno lajkalo objavu. Developer ne mora sinkronizirati akcije između serverske i klijentske strane jer tu ulogu preuzima Meteor. Potrebno je samo Meteoru reći što da radi s podacima koji dolaze od servera ili korisnika i to koristeći JavaScript sintaksu. Jedna funkcija obuhvaća server side i client side, a potrebno ju je samo vezati uz ikonu Like. Meteor omogućava da se napravi obični JavaScript objekt koji drži bazu i te se taj objekt koristi u aplikaciji gdje je potreban. Primjer možete pogledati na animaciji u kojoj Uri Goldshtein u samo 30 sekundi napravi malu aplikaciju s kojom dva korisnika mogu razmjenjivati informacije.

Molimo da prihvatite sve kolačiće kako biste mogli vidjeti ovaj sadržaj

Primjena u aplikacijama za kolaborativni rad

Meteor se može koristiti za izradu aplikacija koje omogućavaju zajednički rad, kao što je pisanje u isto vrijeme na jednom tekstualnom dokumentu ili crtanje po istoj površini. Za takve aplikacije nudi sve što je potrebno i to out-of-the-box, ali istovremeno djeluje i kao open source te nudi developerima mogućnost da ga prilagođavaju po potrebi. Može se brzo započeti rad na projektu i nudi podršku za velike projekte, što znači da nije koristan samo startupima, nego i organizacijama. Moguć je i postupan prijelaz pri kojem se polako stariji način povezivanja može zamijeniti za Meteor.

Možda je jedan od najvećih doprinosa taj što omogućava korištenje terminala za upisivanje raznih komandi pri razvijanju aplikacija. Moguće je još puno toga napisati o mogućnostima koje se otvaraju, ali dovoljno je samo posjetiti GitHub i vidjeti sve što se događalo u posljednjih pet godina vezano za Meteor.

Ista filozofija za AngularJS i Meteor

Uri Goldshtein navodi kako AngularJS i Meteor prate istu filozofiju, a prvi tutorijali traju pet minuta u kojima se može napraviti jednostavna aplikacija s bazom i komunikacijom između korisnika u stvarnom vremenu. Ovisno o složenosti projekta, nekada je tih pet minuta potrebno proširiti i na par tjedana kako bi se u potpunosti shvatile sve mogućnosti koje se nude, a nakon učenja developer može izmijeniti platforme kako mu odgovara i spreman je korisnicima pružiti aplikaciju kakvu žele u što kraćem vremenu.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Mobilne aplikacije

ZET-ov štrajk iznjedrio nova digitalna rješenja za prijevoz po Zagrebu

Zagreb je jutros ostao bez redovitog tramvajskog i autobusnog prometa, no građani su brzo počeli tražiti alternativna rješenja. Uz organiziranje zajedničkih vožnji, pojavilo se i nekoliko digitalnih projekata koji pokušavaju povezati vozače i putnike.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Programiranje

Tim od šest developera, dva QA-a i jednog Product Ownera postaje prošlost

Florian Krause ima trideset godina iskustva u razvoju softvera, jedan propali startup i čvrsto mišljenje: tim od šest developera, dva QA-a i jednog product ownera postaje prošlost. Na The Geek Gatheringu u Osijeku objasnio je čime se takva postava zamjenjuje.

Što ste propustili

Pametni automobili

Napokon smo se provozali Verneovim robotaksijem!

Nakon što smo u Zagrebu bezuspješno pokušali uhvatiti Verneov robotaksi putem Uberove aplikacije, zvijezde su se posložile i mi smo dobili poziv koji se ne odbija.

Umjetna inteligencija

Tko zbog AI-ja i dalje ulaže u ljude, a tko otpušta 50% radne snage?

Dok neke tvrtke nastavljaju i zapošljavati i ulagati u AI, druge su odabrale samo potonje. Kako različite tvrtke pristupaju promjenama na tržištu, doznali smo na Automation Summitu.

Novost

Gamepires najavio otpuštanja, smanjuje tim koji radi na SCUM-u

Gamepires, koji stoji iza igre SCUM, smanjuje broj zaposlenih zbog zahtjevnih tržišnih uvjeta. Objava dolazi nekoliko mjeseci nakon što je studio preuzeo britanski Splash Damage.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Veliki intervjui

Ako AI može napraviti film ili igru, što ostaje kreativcima? Odgovara CEO Nanobita

Može li umjetna inteligencija promijeniti način na koji nastaju filmovi i igre, a da pritom ne žrtvujemo kvalitetu priče i kreativnu viziju? Nanobit već testira odgovor na to pitanje, razvijajući AI produkcijske procese koji otvaraju mogućnost stvaranja sadržaja velikom brzinom.

Netokracija Podcast

Dekan FER-a: AI ne može zamijeniti temeljno znanje inženjera

Umjetna inteligencija mijenja način na koji radimo, ali bez temeljnih znanja nema ni kvalitetnih inženjera ni ozbiljnog tehnološkog napretka. U razgovoru s dekanom FER-a otkrivamo zašto je važno ulagati u istraživanje i razvoj, kako povezati fakultete i industriju te gdje se otvaraju nove prilike za Hrvatsku – od robotike i fizičke umjetne inteligencije do razvoja visokotehnoloških proizvoda.