Waa Maxay GraphQL
GraphQL waa luqad (Query Language) loo isticmaalo API-yada, waxaana sameysay shirkadda Facebook (Meta) sannadkii 2012. Ujeeddada ugu weyn ee loo sameeyay waxay ahayd in xal loo helo dhibaatooyinka REST API-ga, gaar ahaan markay timaaddo

GraphQL waa luqad (Query Language) loo isticmaalo API-yada, waxaana sameysay shirkadda Facebook (Meta) sannadkii 2012. Ujeeddada ugu weyn ee loo sameeyay waxay ahayd in xal loo helo dhibaatooyinka REST API-ga, gaar ahaan markay timaaddo xogta badan iyo kala daadsanaanta codsiyada.
Si fudud haddii loo dhigo: REST API waa sida makhaayad kuu keenaysa saxan cunto ah oo diyaarsan (waad qaadanaysaa wax kasta oo saxanka saaran, ma dhihi kartid "basasha iga reeb"). Halka GraphQL ay tahay sida "Buffet" furan (waxaad saxankaaga ku shubanaysaa kaliya waxa aad u baahan tahay, waxna kaa soo hari maayaan, waxna kaa dhiman maayaan).
FARQIGA U DHEXEEYA REST IYO GRAPHQL:
1. Over-fetching (Xogta badan): REST: Markaad codsato xogta User-ka, server-ku wuxuu kusoo siinayaa magaca, da'da, cinwaanka, sawirrada, iyo taariikhda oo dhan, xataa haddii aad u baahnayd magaca kaliya. GraphQL: Waxaad server-ka ku oranaysaa "Iii keen magaca kaliya", wuxuuna kuu soo dirayaa magaca oo kaliya. Tani waxay badbaadinaysaa Internet-ka iyo xawaaraha.
2. Under-fetching (Xogta yar): REST: Si aad u hesho User-ka iyo Post-yadiisa, waxaa laga yaabaa inaad labo jeer server-ka aaddo (/users/1 iyo /users/1/posts). GraphQL: Hal codsi (Single Request) ayaad ku wada helaysaa User-ka iyo Post-yadiisa oo isku dhex jira.
SADDEXDA TIIR EE GRAPHQL: Si aad u fahanto GraphQL, waa inaad taqaannaa saddexdan erey:
1. Query (Wax-aqris): Waa habka xogta lagu soo codsado. Waxaad qoraysaa qaabka aad rabto in xogtu kuugu timaaddo. Tusaale ahaan, "Iii keen magaca buugga iyo qoraaga."
2. Mutation (Wax-ka-beddel): Waa habka xogta wax looga beddelo server-ka (sida Create, Update, ama Delete). Markaad rabto inaad xog cusub dirto, waxaad isticmaalaysaa Mutation.
- Schema & Types (Sharciga): Waa heshiiska u dhexeeya Server-ka iyo Client-ga. Schema-du waxay qeexaysaa nooca xogta la heli karo (String, Int, Boolean) iyo sida la isugu xiri karo. Tani waxay ka dhigaysaa koodka mid nadiif ah oo khaladku ku yar yahay.
FAA'IIDOOYINKA UGU WAAWEYN:
Hal Endpoint: Halkii aad ka lahaan lahayd boqolaal URL (sida /users, /posts, /comments), GraphQL waxay leedahay hal URL oo kaliya (badanaa waa /graphql), halkaas oo wax walba laga maamulo.
Strongly Typed: Maadaama ay leedahay Schema, way adag tahay inuu khalad dhaco. Front-end developer-ku wuu ogyahay xogta uu helayo nooca ay tahay.






