آموزش GraphQL

در دوره آموزش GraphQL ما سعی کرده‌ایم به شکل قدم به قدم GraphQL را به شکل کامل و کاربردی به شما آموزش دهیم.

آموزش GraphQL

اشتراک گذاری:

توضیحات

داشتن یک API با تعدادی زیادی از Endpoint، دیدگاه قدیمی برای استفاده از APIهاست. اما با وارد شدن GraphQL این دیدگاه شروع به تغییر کرده و جای خود را بجای چندیدن Endpoint به یک Endpoint به همراه queryهای مختلف داده است. در طول دوره آموزش GraphQL قصد داریم، این زبان کوئری جذاب را برای ایجاد کردن APIهای حرفه‌ای به شما آموزش دهیم.

GraphQL چیست ؟

می‌توان گفت GraphQL یک زبان query است که به شما این اجازه را می‌دهد که با داشتن یک Endpoint یا همان روت اصلی، API خودتان را شکل دهید!

یک Endpoint؟ برای APIنویسی؟ شاید عجیب به نظر برسد اما با این کار شما دیگر لازم به روت‌های مختلف در API ندارید و با استفاده از کوئری‌های مختلف می‌توانید از روت اصلی اطلاعات مورد نیاز خود را واکشی، اضافه، حذف و ویرایش کنید.

در آموزش GraphQL ما سعی داریم با مثال‌های مختلف روش استفاده از یک Endpoint را در قالب استفاده از کوئری‌های مختلف به شما آموزش دهیم.

چرا GraphQL یاد بگیریم؟

در جواب این سوال می‌توان گفت در GraphQL دیدگاه قدیمی APIنویسی کنار گذاشته شده و شما با نوشتن queryهای متفاوت و ارسال آن به Endpoint مورد نظر می‌توانید با اطلاعات‌تان در برنامه سمت سرورتان کار کنید.

همچنین در API که با GraphQL نوشته می‌شود دیگر نیازی به ورژ‌ن‌بندی کردن API برای پشتیبانی از ورژن اپلیکیشن‌های قبلی نیست و این مفهوم ورژن‌بندی برای همیشه در GraphQL حذف می‌شود.

در دوره آموزش GraphQL ما سعی کرده‌ایم تمام موارد لازم برای یادگیری GraphQL را قدم به قدم به شما به شکل کامل آموزش دهیم.

مزایای GraphQl

فرق بین REST API و GraphQL

تفاوت در Endpoint

همانطور که در بالا هم به آن اشاره کرده‌ایم، در ایجاد API به روش REST ما نیاز داریم برای هر عملیاتی یک Endpoint یا همان url داشته باشیم. برای مثال به urlهای زیر دقت کنید.

/users => GET
/users => POST
/users/{user} => GET
/users/{user} => PUT
/users/{user}/delete => DELETE

تمام روت‌های بالا با هدف کار با کاربران سایت ایجاد شده‌اند و اگر دقت کنید برای واکشی،حذف ، اضافه و ویرایش یک url برای آن‌ها ایجاد شده است.

اما در روش GraphQL شما کوئری‌های مختلف خود را تنها به یک url ارسال می‌کنید. به مثال زیر دقت کنید.

{ 
  Query 
       { User
            { 
               name 
               age 
             }
       } 
}

در کوئری بالا که به Endpoint مربوط به GraphQL ارسال می‌شود. با این کوئری ما درخواست میکنیم که اطلاعات کاربر با نام و سن را برای ما برگرداند.

البته در دوره آموزش GraphQL ما سعی می‌کنیم این مورد را دقیق‌تر به شما توضیح دهیم تا کاملا برای شما جا بی‌افتد.

عدم نیاز به ورژن‌بندی API

در صورتی که شما برای API خود از روش REST استفاده کنید با ایجاد urlهای مختلف و استفاده از آن‌ها در پروژه‌های واقعی باعث می‌شود زمانی که نیاز به آپدیت آن urlها دارید برای آنکه اپلیکیشن‌های ورژن قبلی شما دچار مشکل نشود این urlها را ورژن‌بندی کنید که در طی زمان می‌تواند حجم کدهای شما را به شکل چشم‌گیری افزایش دهد.

اما این موضوع در GraphQL متفاوت است از آنجایی که شما دارای یک url هستید تنها نیاز است در ورژن جدید اپلیکیشن خود query متفاوتی وارد کنید که این برای ورژن‌های قبلی اپلیکیشن شما مشکلی ایجاد نمی‌کند و بدونه دردسر و بدون مشکلی که در REST وجود داشت می‌تواند به همان روال سابق کد خود را توسعه دهید.

برای آموزش GraphQL باید چه چیزهایی را بدانیم؟

شما می‌توانید از GraphQL در زبان‌های backend مختلف استفاده کنید‌، اما برای این دوره، برای آنکه بتوانید به شکل کامل مطالب را مشاهده و استفاده کنید نیاز است که با جاوا اسکریپت و NodeJS آشنا باشید.

اگر به هر دلیلی با جاوا اسکریپت و nodejs آشنا نیستید، میتوانید با استفاده از چارت مهارت یادگیری جاوا اسکریپت و آموزش nodejs به سادگی با این دو آشنا شوید.

GraphQL محدود به زبان نیست

دقت کنید که GraphQL یک زبان کوئری است که محدود به زبان backend خاصی نیست و شما ‌می‌توانید آن را در هر زبانی استفاده کنید. اما ما در این دوره روش استفاده از GraphQL را در زبان جاوااسکریپت به شما آموزش خواهیم داد.

در دوره آموزش GraphQL چه مباحثی را یاد میگیرید؟

با شرکت در دوره آموزش GraphQL و دیدن فایل های آموزشی و تمرین کردن نکات گفته شده در ویدیو ها شما یاد می‌گیرید که:

  • چطور با استفاده از GraphQL یک API بسازید.
  • روش استفاده از GraphQL در node را یاد میگیرید.
  • روش نوشتن کوئری‌های مختلف برای واکشی اطلاعات را یاد خواهید گرفت.
  • آپلود فایل با GraphQL
  • صفحه‌بندی کردن اطلاعات
  • و ...

سوالات متداول

?

آیا یادگیری qraphql آسان است؟

graphql یک زبان کوئریست که در اکثر زبان‌های backend قابل استفاده است. اگر شما با زبان بک‌اندی که قصد استفاده از graphql را دارید به خوبی آشنا باشید. خیلی زود می‌توانید graphql را فرا بگیرید.

?

پیش‌نیاز‌های یادگیری qraphql ؟

برای یادگیری graphql ابتدا شما نیاز به یادگیری یک زبان سمت سرور دارید، حال که این زبان سرور می‌تواند هر چیزی باشد برای مثال php یا جاوااسکریپت یا پایتون.

بعد از انتخاب زبان سمت سرور می‌توانید خیلی ساده شروع به یادگیری graphql کنید

?

آیا با این دوره graphql را کامل فرا میگیریم؟

ما در طول این دوره سعی کرده‌ایم موارد مختلف و کاربردی از graphql را قدم به قدم به شما آموزش دهیم به شکلی که در پایان دوره شما بتوانید از graphql در زبان سمت سرور مورد نظر خود استفاده کنید.

?

چرا graphql را از راکت یاد بگیریم؟

ما در راکت سعی می‌کنیم مطالب به روز و کاربردی را در اختیار کاربران قرار دهیم. این موضوع برای graphql هم صدق می‌کند و ما در این دوره سعی کردیم به شکل کامل graphql را به شما آموزش در قالب یک پروژه آموزش دهیم.

گارانتی بازگشت وجه

برای آنکه به شما اطمینان دهیم، که ما از محتوای دوره‌های خود ۱۰۰ درصد مطمئن هستیم، برای این دوره گارانتی بازگشت وجه قرار داده‌ایم و این به این معنی است که اگر شما محتوای این دوره را به شکل کامل مشاهده کنید، اما نتیجه‌ای که به شما قول دادیم را دریافت نکنید ۱۰۰ درصد مبلغ پرداختی شما را برگشت خواهیم زد.

مراحل و فرایند گارانتی

دیدگاه و پرسش

برای ارسال دیدگاه لازم است وارد شده یا ثبت‌نام کنید ورود یا ثبت‌نام

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

تکمیل ضبط
خیلی بد
بد
متوسط
خوب
عالی
4.36 از 11 رای
مدت دوره 05:02:03
تعداد جلسات: 19
نوع دوره: ویژه / نقدی
شرکت‌کنندگان: 1352 نفر

این دوره برای اعضای ویژه بصورت رایگان قابل مشاهده است. عضویت ویژه

گواهی پایان دوره
وضعیت: ابتدا وارد سایت شوید
گواهی پایان دوره راکت چیست؟
حسام موسوی
مدرس دوره

بیشتر از ۱۵ سال هست که در حال برنامه‌نویسی و انجام پروژه های مختلف هستم و ۱۰ سالی هست که آموزش برنامه‌نویسی به علاقمندان حوزه برنامه نویسی میدیم در همه این مدت الان عاشق کدزنی و چالش‌های پروژه‌های مختلفم. به تدریس علاقه خاصی دارم و دوست دارم دانشی ک...