GraphQL

GraphQL je jezik upita za API-je koji je nastao kao alternativa tradicionalnim REST API-jima. Umjesto da koristi niz različitih endpointova, GraphQL koristi samo jedan endpoint i omogućuje klijentima da specificiraju točno što žele dobiti od tog API-ja.

GraphQL je stvoren u tvrtki Facebook 2012. godine, a kasnije je postao open-source projekt 2015. godine. Danas ga koriste mnoge tvrtke poput GitHuba, Shopifya i Netflix-a.

Glavna prednost GraphQL-a je to što omogućuje klijentima da specificiraju samo ono što im je potrebno, što dovodi do smanjenja količine podataka koju klijent mora preuzeti s servera. Također omogućuje klijentima da specificiraju složene upite koje bi u REST API-ju bile teško ili nemoguće izvršiti.

GraphQL koristi tipove podataka kako bi opisao podatke koje API može vratiti, što ga čini vrlo jasnim i lako razumljivim za razvojne programere i klijente. Također podržava promjene podataka, što znači da klijenti mogu stvarati, mijenjati i brisati podatke na serveru pomoću GraphQL-a.

Kao što je već spomenuto, GraphQL ima samo jedan endpoint, što olakšava skaliranje API-ja i smanjuje kompleksnost. Također pruža mogućnost za izradu grafova podataka koji mogu biti vrlo korisni u analizi podataka.

Primjer GraphQL upita

Evo jednostavnog primjera GraphQL upita i odgovora:

Recimo da imate API koji vraća informacije o filmovima. U tradicionalnom REST API-ju, mogli biste imati endpoint za dohvaćanje svih filmova, a zatim drugi endpointi za dohvaćanje pojedinačnih filmova, ocjena, glumaca, itd.

S druge strane, u GraphQL-u, klijenti mogu specificirati samo ono što im je potrebno, koristeći jedan endpoint.

 

Na primjer, evo jednostavnog GraphQL upita koji traži nazive i žanrove svih filmova:


 query { 
   movies { 
    title 
    genre 
  } 
}

 

U odgovoru na ovaj upit, API bi vratio samo nazive i žanrove svih filmova:

{ 
"data": 
 { "movies": 
  [ 
    { 
      "title": "Forrest Gump", 
      "genre": "drama" 
    }, 
    { 
      "title": "Star Wars", 
      "genre": "sci-fi" 
    }, 
    { 
      "title": "The Godfather", 
      "genre": "drama" 
    } 
  ] 
 } 
}

Kao što vidite, API je vratio samo tražene informacije (naziv i žanr) za svaki film, umjesto da vrati sve informacije o filmu. Ovo je jedna od velikih prednosti GraphQL-a - klijenti mogu specificirati samo ono što im je potrebno, a ne moraju preuzeti nepotrebne podatke.

Ovo je samo jedan jednostavan primjer, ali GraphQL omogućuje i složenije upite i omogućuje klijentima da specificiraju svoje zahtjeve za podacima na vrlo precizan način.

 

C# kviz

Kviz u C#-u sastoji se od 10 pitanja koja testiraju vaše znanje o C# programiranju. Svako pitanje ima 4 ponuđena odgovora, od kojih je samo jedan točan.

Padajući izbornik

Kako u html-u napraviti padajući izbornik koji se generira pomoću javascript-a?

C64

C64 je bio vrlo pristupačan i omogućio je mnogima da se upoznaju s računalstvom

Blender

Blender je besplatni open source softvera za 3D računalnu grafiku koji se koristi za stvaranje animiranih filmova, vizualnih efekata, umjetnosti, 3D tiskanih modela

Editor

Online HTML editori su alati koji omogućuju korisnicima da stvore i urede HTML kod putem web preglednika.

Local Storage

Kako snimiti podatke sa web stranice u lokalni storage preglednika

Datum duration

Primjer za izračun vremena između dva datuma koristeći momentjs

Kvantno računalstvo

Za razliku od klasičnih računala, koja koriste binarne znamenke (bitove) za predstavljanje informacija, kvantna računala koriste kvantne bitove ili qubitove