ساخت Api با Laravel و GraphQL

در دوره آموزش GraphQL در لاراول ما سعی داریم روش استفاده از GraphQL را به شکل کامل در لاراول (Laravel) به شما آموزش دهیم.

ساخت Api با Laravel و GraphQL

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

توضیحات

GraphQL یک زبان کوئری برای ایجاد کردن APIهای مدرن است تا مشکلات روش REST را حل کند. ما پیشتر در وبسایت راکت و با استفاده از یک دوره تخصصی GraphQL را آموزش دادیم. اما از آنجا که در آن دوره با جاوااسکریپت پروژه‌ها برنامه‌نویسی می‌شدند لازم دیدیم که یک دوره را برای PHP‌ و Laravel نیز ضبط کنیم. در دوره آموزش GraphQL در لاراول قصد دارم روش استفاده از GraphQL در لاراول برای ایجاد APIهای مدرن را به شما به شکل کامل آموزش دهم.

GraphQL چیست؟

Graphql چیست؟

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

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

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

چرا از GraphQL در لاراول استفاده کنیم؟

در GraphQL روش قدیمی API نوشتن کنار گذاشته شده و دیگر شما نیاز به n تعداد روت برای کارهای مختلف ندارید. حالا شما با نوشتن کوئری‌های مختلف و ارسال آن به URL مورد نظر برنامه، می‌توانید با اطلاعات‌تان در سمت سرور کار کنید.

GraphQL یک دیدگاه جدید نسبت به ایجاد کردن APIهاست که هر روز مورد توجه تعداد بیشتری از برنامه‌نویسان زبان‌های مختلف قرار می‌گیرد. البته یادگیری GraphQL نسبت به REST API مقداری سخت‌تر است اما در دوره آموزش GraphQL در لاراول ما سعی کرده‌ایم تمام موارد لازم برای یادگیری GraphQL را قدم به قدم به شما به شکل کامل آموزش دهیم.

مزایای Graphql

فرق بین REST API و GraphQL

تفاوت در Endpoint

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

همانطور که در چند پاراگراف‌ قبل‌تر به آن اشاره ‌کرده‌ایم، ساخت یک API با روش REST نیازمند این است که برای هر عملیاتی یک URL داشته باشیم. برای درک این موضوع به مثال زیر دقت کنید:

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

تمام روت‌های که در بالا مشاهده می‌کنید فرضا برای کار با اطلاعات کاربران در API ایجاد شدن، یعنی هر URL با یک هدف مورد استفاده قرار می‌گیرد.

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

{
     Query {
          Post {
               title
               body
          }
     }
}

در مثال بالا ما این کوئری را به URL مورد نظر در GraphQL ارسال می‌کنیم و در نهایت نتیجه‌ای که از این کوئری انتظار داریم را دریافت خواهیم کرد.

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

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

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

اینکار با بزرگ‌تر شدن پروژه لاراولی شما دردسر‌های بیشتر برای‌تان ایجاد می‌کند.

البته این مورد را با مثال‌های بیشتری در دوره آموزش GraphQL در لاراول به شکل عملی به شما توضیح خواهم داد.

اما این داستان در GraphQL متفاوت است و دلیل این موضوع داشتن تنها یک URL است. اگر شما تصمیم بگیرید در ورژن جدید اپلیکیشن خود حالتی را تغییر دهید تنها نیاز است کوئری خود را به روز کنید. فقط همین! و اینجا دیگر خبری از مشکلاتی که در بالا برای آپدیت اپلیکیشن با REST API گفتیم وجود ندارد.

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

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

شما می‌توانید از GraphQL در زبان‌های Back-End مختلف استفاده کنید‌، اما برای این دوره، برای آنکه بتوانید به شکل کامل مطالب را مشاهده و استفاده کنید نیاز است که با لاراول به شکل کامل آشنا باشید.

اگر احساس می‌کنید که نیاز به یادگیری لاراول دارید می‌توانید از طریق چارت مهارت یادگیری لاراول قدم به قدم لاراول را همراه با راکت یاد بگیرید.

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

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

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

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

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

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

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

?

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

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

?

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

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

?

یادگیری graphql در لاراول چقدر زمان میبرد ؟

مدت زمان یادگیری graphql در لاراول تماما بستگی به میزان تلاش و وقتی که صرف اینکار می‌کنید دارد. اگر سعی کنید زمان بیشتری برای یادگیری graphql قرار دهید پس سریع‌تر می‌توانید این زبان کوئری را فرا بگیرید اما اگر وقت کمتری قرار دهید بنابراین زمان بیشتری باید مشغول یادگیری graphql شوید.

?

چرا graphql را انتخاب کنم؟

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

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

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

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

دیدگاه و پرسش

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

ورود یا ثبت‌نام

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

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

تکمیل ضبط
خیلی بد
بد
متوسط
خوب
عالی
4.38 از 13 رای
مدت دوره 04:46:15
تعداد جلسات: 17
نوع دوره: ویژه / نقدی
آخرین آپدیت: 20 / 11 / 1397

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

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

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