قیمت 69,000 تومان 41,500 تومان

امتیاز
0 از 0 رأی
69,000 تومان 41,500 تومان
ویژگی های دوره
5 دانشجو
نوع دوره: غیر حضوری
سطح دوره: مقدماتی تا پیشرفته
پیش نیاز: دوره جاوااسکریپت ، دوره جاوااسکریپت 2015(ES6)
تاریخ شروع: 16 آذر 1398
6 ساعت و 46 دقیقه
37 درس
914 مگابایت
روش دریافت: دانلودی
روش پشتیبانی: ارتباط مستقیم با مدرس در بخش کامنت های دوره
158 بازدید 2 دیدگاه

در حال حاضر و در بین جوامع برنامه نویس شرایطی وجود دارد که آنها را به بدترین شکل ممکن به چالش می کشد. اینکه از بین ابزارهای محتلف که هرکدام در حد و اندازه و جایگاه خود محبوبیت دارند و مورد استفاده قرار می گیرند، بهترین این ابزارها را برای توسعه پروژه انتخاب کند.

در این دوره می خواهیم به شما یاد دهیم که چکونه یک API را، با یکی از بهترین ابزارهای موجود یعنی GraphQl توسعه دهید. در عین حال که در این دوره کاملا با معماری هایی که برای توسعه API وجود دارند آشنا می شوید می توانید برای هماهنگی بیشتر با مطالبی که در این دوره گفته می شود مقالات زیر رو مطالعه کنید.

  1. آشنایی با API
  2. Rest یا GraphQl

احتمالا قبلا نام GraphQl به گوشتان خورده باشد، GraphQl یک (Query Language) است، که در سال 2012 توسط فیسبوک توسعه داده شد و در سال 2015 در قالب یک زبان Open-Source منتشر شد از این رو به سرعت در حال توسعه می باشد و روز به روز به محبوبیت آن افزوده می شود.

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

  • تنها از طریق یک EndPoint یا اصطلاحا route با دیتا سورس ها تبادل دیتا انجام دهید.
  • کلاینت جریان داده ای که دریافت و ارسال می شود را از طریق query کنترل می کند.
  • نیازی به توسعه ورژن های مختلف از یک API ندارید.

و موارد دیگری که تنها برخی از خصوصیات ویژه این زبان کوئری نویسی می باشد.

همچنین در دوره جامع و پروژه محور NodeJS به خوبی با API و معماری های مختلف آن از جمله Rest و GraphQl آشنا می شوید و دوستانی که این دوره را تهیه کرده اند به خوبی با آن آشنا شده اند. هر چند که برای آشنایی با کلیه مفاهیم این زبان پیشنهاد می کنیم که این دوره را مشاهده کنید و در آینده ای نه چندان دور که GraphQl به یکی از گزینه های استخدام یک برنامه نویس Back-end تبدیل می شود حرفی برای گفتن داشته باشید.

آموزش GraphQl

0. معرفی دوره

در این دوره آموزشی قصد داریم شما را با نحوه API نویسی با استفاده از زبان کوئری نویسی GraphQl آشنا کنیم و در این جلسه با کاری که در این دوره انجام خواهیم داد کاملا آشنا می شوید.

1. آشنایی با API

API چیه و چه کاربردی میتونه برامون داشته باشه؟ سوالاتی هستند که در این جلسه به آن خواهیم پرداخت تا آماده فراگیری مفاهیم اصلی مربوط به API نویسی شویم.

2. REST یا GraphQl

برای توسعه API معماری های مختلفی وجود دارند. هر کدام ویژگی هایی حاص خود را دارند و در جایگاه مناسب می توانند بهترین عملکرد را داشته باشند در این جلسه به بررسی دو معماری REST و GraphQl می پردازیم.

3. نصب NodeJS

GraphQl ساختاری برای API نویسی که می توانید آن را با هر ساختار دیگری ترکیب کنید و در کنار هم مورد استفاده قرار دهید و در این دوره می خواهیم با استفاده از NodeJS و GraphQl یک API را توسعه دهیم. که البته دوره جامع و پروژه محور NodeJS می تواند به شما کمک کند تا در NodeJS حرفه ای شوید.

4. شروع کار با GraphQl

این جلسه شروع کار با زبان کوئری نویسی GraphQl است.با GraphQl آشنا شده و وارد مباحث اصلی در این زبان می شویم.

5. آشنایی با Schema

یکی از اصلی ترین بخش های توسعه API با GraphQl تعریف schema و نحوه استفاده از آن است که در این جلسه به خوبی با آن آشنا خواهید شد.

6. آشنایی با Query : Operation Type

یکی از بخش های مهم در هر schema کار با type های مختلف است که در این جلسه با یکی از operation type ها یعنی query کار خواهید کرد و با کاربر آن آشنا خواهید شد.

7. شروع کار با type و object type

در این جلسه نحوه استفاده از type های مختلف برای field ها را یاد خواهید گرفت همچنین با نحوه تعریف یک object type و کاربرد آن آشنا خواهید شد.

8. آشنایی با resolver

یکی دیگر از بخش های اصلی توسعه API برای اجرای query ها با توجه به schema، تعریف resolver و متودهای مربوط به schema داخل resolver است که کاملا در این جلسه یاد خواهید گرفت.

9. تست schema و resolver

در این جلسه پس از تعریف schema و resolver این دو را به صورت همزمان تست می کنیم تا با کاربرد این دو و نحوه اجرای فرآیندهای مرتبط آشنا شوید.

10. شروع کار با Database

یکی از مهمترین بخش های این دوره اتصال API و Database و نحوه کار با data می باشد در این جلسه نحوه config دیتابیس mongodb را یاد خواهید گرفت هرچند که در دوره جامع و پروژه محور NodeJS این موضوع را کامل بررسی کرده ایم.

11. تعریف Model

بعد از نصب mongodb و کانفیگ آن نیاز است تا schema هایی را برای ذخیره data روی دیتابیس و در collection های مجزا ایجاد کنیم.

12. ماژول faker

با تعریف model های مربوطه نیاز هست برای کار با data مربوط به هر مدل اطلاعات fake را داخل هر collection ایجاد کنیم که این کار را با استفاده از ماژول faker انجام می دهیم.

13. آشنایی با Argument

در این جلسه با argument و یا اصطلاحا ارسال پارامتر در بستر GraphQl آشنا خواهید شد.

14. آشنایی با non-null (!)

در این جلسه یاد خواهید گرفت که چکونه با استفاده از ! حالت require را به field ها اضافه کنید.

15. paginate - بخش اول

یکی از مهمترین مراحل کار با data صفحع بندی کردن و اصطلاحا paginate می باشد با استفاده از دو راه حل متفاوت این کار را انجام خواهیم داد که در این جلسه با یکی از اینها آشنا خواهید شد.

16. paginate - بخش دوم

همیشه ساده ترین راه حل بهترین نیست و در این جلسه با استفاده از روشی بهینه تر Data را صفحه بندی می کنیم.

17. آشنایی با operation name

شاید کار کردن با query ها گیج کننده باشد برا اینکه بتوانید این موضوع را به حداقل برسانید باید از operation namr استفاده کنید.

18. آشنایی با aliases

چندین متود یکسان با خروجی های متفاوت را در قالب یک query و با استفاده از aliases ارسال کنید. در این جلسه کاملا با آن آشنا خواهید شد.

19. آشنایی با fragment

شاید استفاده از aliases میزان تکرار در query را افزایش دهد که fragment این مسئله را برطرف کرده و این تکرارها را به حداقل می رساند.

20. روابط بین جداول

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

21. تعریف variable

تعریف متغییر می تواند به شما کمک کند تا query خود را برای دریافت اطلاعات مورد نیازتان بهینه تر کنید.

22. directive - بخش اول

ابزار دیگری که به شما در بهینه سازی query در سمت client و البته کد در سمت server کمک خواهد کرد directive می باشد.

23. directive - بخش دوم

24. کار با graphql-tools

همیشه راه حل هایی برای تمیز نوشتن و جلوگیری از افزونگی کد وجود دارد. یکی از این راه حل ها استفاده از graphql-tools است. هرچند کربردهای دیگری مانند ایجاد directive های کاستو شده هم جزعی از وظایف این ابزار می باشد که در این جلسه کاملا با آن آشنا خواهید شد.

25. آشنایی با Mutation: Operation Type

با Query آشنا شدید، operation type که تنها امکان ارسال و دریافت دیتا را میدهد اما برای اعمال تغییرات روی دیتا نیاز است تا از mutation استفاده کنید. در این جلسه با کاربردهای آن بیشتر آشنا خواهید شد.

26. ماژول bcrypt

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

27. نصب apollo server

به روشی کاملا متفاوت برای بهبود کد GraphQl از Apollo server استفاده می کنیم. ابزاری که روند پیاده سازی بسیاری از بخش های API را راحتر می کند.

28. روابط بین جداول در Apollo server

29. اعتبارسنجی input types

در این جلسه با نحوه validation کردن input type ها آشنا خواهید شد و در نهایت می توانید ارورهای مختلف را به آن شکلی که مدنطرتان است customize کنید.

30. مدیریت خطاها (error handling)

از آنجایی که با نحوه validation تا به این لحظه آشنا شده اید نیاز است تا ارورهایی که ممکن است به واسطه اجرای فرآیندها رخ دهد را مدیریت کنید.

31. ارسال request از طریق client

تا این جلسه از دوره GraphQl به خوبی با نحوه اجرای کوئری ها البته در حالت گرافیکی و ابزاری که Apollo server در اختیارتان قرار می دهد آشنا شده اید آنچه مهم است نحوه ارسال query از طرف client می باشد.

32. login

نحوه ایجاد حساب کاربری (register) را در جلسات گذشته بررسی کرده ایم و در این جلسه می خواهیم نحوه login از طریق API و حساب کاربری که ایجاد شده است را یادبگیریم.

33. ایجاد token با استفاده از JWT

در این جلسه یاد خواهید گرفت که چگونه یک token را ایجاد کرده و از آن برای authenticate کاربران استفاده کنید.

34. authenticate

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

35. تمرین : ایجاد Article

در این جلسه به منظور مرور مطالب گذشته نحوه ایجاد مقاله و ارسال پارامترهای مورد نیاز را بررسی میکنیم.

36. upload file - بخش اول

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

37. upload file - بخش دوم

moreدوره های مرتبط

آموزش مقدماتی react native

سلام عرض میکنم خدمت شما دوستان عزیز.خیلی خوشحال و مفتخریم که با اولین دوره آموزش برنامه نویسی React Native در خدمت شما…
3,472
رایگان!

آموزش react navigation 3

React navigation یک کتابخونه برای جابجایی بین صفحات در react native هست.تقریبا در تمامی اپلیکیشن هایی که ما توسعه میدیم نیاز…
333
رایگان!

ساخت ToDo App با React Native

در این دوره آموزشی نحوه ساخت یک todo app با React Native رو یاد میگیریم.یک todo app بر روی همه بخش های…
124
رایگان!

chat_bubble_outlineنظرات

  • Mojtaba

    سلام، بی صبرانه منتظر این اموزش جالب هستیم

    • علی(مدیریت)

      سلام. ممنون از لطف و اعتمادی که به reactapp دارین

  • seyedabbasseyedi

    عرض سلام و وقت بخیر خدمت شما
    لطفا به authorization و سطح دسترسی‌ها در GraphQl نیز بپردازید.

    • علی(مدیریت)

      سلام وقت شما بخیر.
      ممنون بابت توجهتون. هدف از این دوره، آشنایی و کار با ساختار graphql بود. و موردی که بهش اشاره کردین واقعا جای کار داره و در قالب آپدیت دوره حتما اضافه میشه.

قوانین ثبت دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *