výhonek Graphql – Změna a zlepšení způsobu komunikace aplikací – Unite.AI
Spojte se s námi

Myšlenkové vůdce

Graphql – Změna a zlepšení způsobu komunikace aplikací

mm

Zveřejněno

 on

Nebude to dlouho trvat a další generace bude nakupovat kryptoměny a kontrolovat zůstatek jejich podílového fondu fortnite lobby mezi hrami. To bude umožněno mnoha technologickými pokroky.

Ten, o kterém dnes diskutujeme, je způsob přenosu dat (čtení, aktualizace, přidávání/odebírání) mezi aplikacemi a společnostmi, které je vlastní. Aplikační programovací rozhraní (API) jsou architekturou, která definuje tuto datovou komunikaci, a jak se tyto standardy vyvíjely, požadavky na zpracování a ukládání dat se staly méně náročnými.

Lídrem v balíčku, pokud jde o „odlehčené“ využití zdrojů, je GraphQL, open-source datový dotazovací a manipulační jazyk. Základem jeho ekosystému je jeho specifikace a soubor nástrojů, které byly kolem něj vytvořeny.

Není to nic nového – čas plyne rychle. Facebook jej vyvinul v roce 2012 a používal jej pouze interně pro vývoj mobilních aplikací. V roce 2015 byl „open source“ a dnes se o něj stará nadace GraphQL (https://graphql.org/foundation/), která dohlíží na její další vývoj.

Tak proč o tom teď píšu? Typický plán k technologické adopci bude následovat následující kroky: 1) nadšenci/osobní projekty, 2) implementace ve více jazycích, 3) implementace napříč start-upy a malými společnostmi, 4) středně velké společnosti a používané při vývoji produktů, 5 ) velké korporace a tech giganti.

GraphQL dosáhl úrovně 5. V současné době jej používají GitHub, Pinterest, Shopify, Microsoft, abychom jmenovali alespoň některé a naposledy, od března 2022, Salesforce.

Při hledání způsobu, jak efektivněji načítat data ze Salesforce, jsem narazil na jejich dokumentaci GraphQL a začal jsem číst a hledat způsoby, jak ji implementovat.

Jak se liší od tradičního REST API?

  • Jednou z hlavních výhod je, že s GraphQL můžete dotazovat a vrátit pouze tato konkrétní data. Pokud chcete pouze dvě pole související s konkrétním klientským incidentem, pak to dostanete. Tradiční REST API by vám vrátilo VŠECHNA pole spojená s incidentem. To by mohlo být více než 100 polí. Nyní musíte udělat něco se všemi těmi daty, se kterými jste nechtěli začít. Toto je označováno jako data přes načítání (Problémem je také nedostatečné načítání).
  • Výše uvedené dělá GraphQL rychlejší než jiná metodologie API při vracení dat.
  • GraphQL je silně typovaný jazyk, což mimo jiné znamená, že chyby kódu jsou zachyceny před spuštěním programu, nikoli během něj.
  • Na GraphQL byla vytvořena skvělá sada nástrojů, díky které je velmi přátelský pro vývojáře.
  • GraphQL má jeden koncový bod na rozdíl od REST API, které má více koncových bodů. To znamená, že všechna vaše data lze načíst v jediném požadavku.

Dvě strany mince: žadatel (klient) a poskytovatel (hostitel GraphQL)

Na GraphQL jsem se zatím díval z pohledu „žádosti“ o data. Kde společnost jako Salesforce nebo Microsoft nastavila GraphQL API, které můžete použít k dotazování a manipulaci s daty (čtení, aktualizace, přidávání).

Pokud bychom například chtěli zahrnout data z klientských incidentů souvisejících se Salesforce do klientského portálu, nejefektivnějším způsobem by bylo vyžádat si přesná data, o která usilujeme, prostřednictvím dotazu GraphQL z portálu na server Salesforce GraphQL. Získáte přesně ta data, která chcete, žádné pod nebo nadměrné načítání a v důsledku toho nebude potřeba žádné další zpracování nebo ukládání dat.

Druhou stranou mince je organizace, která nastavuje architekturu GraphQL tak, aby vaši klienti mohli mít také efektivní způsob přístupu k datům, která si přejí.

Při vytváření GraphQL API organizace vytváří model, který integruje všechny jejich systémy do jednoho modelu. Sjednocuje tyto systémy a po dokončení odstraňuje složitost základního systému. Jakmile je práce dokončena, dotazování na data bude bezproblémové prostřednictvím rozhraní API.

Při porovnávání aplikací nebo poskytovatelů se dívám na to, jaké funkce mi nabízejí, abych od nich dostal svá data zpět. Nechci jim posílat e-maily nebo se spoléhat na pevné předdefinované zprávy. Chci mít možnost flexibilně a včas „zapojit“ svá data dotazováním. Pokud jde o dvě aplikace/poskytovatele a jsou podobně sladěni na jiných srovnávacích bodech a jeden nabízí buď REST API, nebo GraphQL API, zcela jistě si vyberu tu s API.

Marcus Loveland, RP PA Analyst Developer ve společnosti Služby Maitland Fund Services, píše pro 'IT crowd', hledí dopředu na aplikační programovací rozhraní (API) a zdokonaluje architekturu GraphQL API.