آموزش دوره سقوط چکمه بهار

The Spring-Boot Crash Course

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:

مقدمه

این دوره همه چیزهایی است که برای شروع کار با چارچوب Spring-Boot در جاوا نیاز دارید، که محبوب‌ترین چارچوب وب مبتنی بر JVM برای ساخت میکروسرویس‌ها و سیستم‌های پشتیبان است که توسط بسیاری از شرکت‌های بزرگ فناوری استفاده می‌شود.

جاوا یک زبان واقعاً عالی است و تعدادی ویژگی را در اختیار شما قرار می‌دهد، اما اگر می‌خواهید یک REST API در جاوا خالص بسازید، ممکن است چندان ساده نباشد.

به همین دلیل، توسعه‌دهندگان چارچوب‌هایی ایجاد کرده‌اند که به شما امکان می‌دهد API را سریع، با بهترین روش‌ها از نظر طراحی کد و عملکرد/کارایی بسازید، و Spring-Boot چنین چارچوبی است.

چرا باید Spring-Boot Framework را یاد بگیرید؟

Spring-Boot به دلیل موارد زیر بسیار محبوب است:

  • این امکان را به شما می دهد که برنامه های کاربردی درجه تولید را بسیار سریع ایجاد کنید
  • این یک پایه کد خوب طراحی شده را ترویج می کند
  • به طور یکپارچه با سیستم های خارجی ادغام می شود
  • یک انجمن منبع باز بزرگ دارد که دائماً آن را بهبود می بخشد
  • و بسیاری دلایل دیگر

داشتن Spring-Boot در مجموعه مهارت های خود به عنوان یک توسعه دهنده جاوا، به شما اجازه می دهد:

  • در بازار کار رقابتی تر باشید
  • سازنده‌تر باشید زیرا با شناسایی و به‌کارگیری الگوهای طراحی جاسازی‌شده در Spring-Boot 
  • کد را سریع‌تر (و بهتر) می‌خوانید و می‌نویسید.
  • بتوانید با فرصت‌های فنی بیشتری مقابله کنید، زیرا بسیاری از پروژه‌های منبع باز از Spring-Boot استفاده می‌کنند  

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

آنچه در این دوره خواهید آموخت

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

فهرست غیر جامعی از چیزهایی که قرار است در این دوره یاد بگیرید به شرح زیر است:

  • Spring-Boot چیست و چگونه با یک برنامه جاوا خط فرمان سنتی مقایسه می شود
  • چگونه می توانید چارچوب Spring-Boot را در یک پروژه خالی IntelliJ Idea وارد کنید
  • چگونه می‌توانید وابستگی‌های بهار مناسب را در وب پیدا کنید
  • چگونه می‌توانید یک REST Controller ایجاد کنید و برخی از داده‌ها را از طریق HTTP دریافت کنید
  • چگونه می توانید کنترلر REST خود را برای ارسال داده ها و پیروی از بهترین شیوه ها پیکربندی کنید
  • چگونه می توانید سرویس ها را در Spring-Boot ایجاد کنید
  • نحوه استفاده از مکانیسم Spring-Configuration
  • تزریق وابستگی چیست و چگونه کار می کند
  • چگونه می‌توانید با استفاده از HTTP Client از طریق HTTP از برنامه خود یک API خارجی تماس بگیرید
  • چگونه می‌توانید سریال‌زدایی جکسون را برای استخراج فقط داده‌های مورد نیاز پیکربندی کنید
  • چگونه می توانید یک پایگاه داده MySQL را با استفاده از Docker ایجاد و پیکربندی کنید
  • چگونه می توانید یک برنامه Spring-Boot را برای اتصال و تعامل با پایگاه داده MySQL پیکربندی کنید
  • چگونه می توانید از Transactions در Spring-Boot برای اطمینان از عملیات اتمی در پایگاه داده استفاده کنید

این دوره با نشان دادن اینکه چگونه می‌توانید یک برنامه کاربردی ساده بسازید که به 2 سیستم دیگر متصل می‌شود، شما را از طریق این چارچوب راهنمایی کند. این بسیار کاربردی است، زیرا این بهترین راه برای یادگیری هر فن آوری جدید، با بازی تا حد امکان با آن است

برای تعیین انتظارات درست: این یک دوره آموزشی Spring-Boot کامل نیست، تمام تنظیمات و وابستگی‌های ممکن را که Spring-Boot ارائه می‌دهد را پوشش نمی‌دهد. درعوض، این دوره‌ای است که به شدت بر روی ساختن برنامه‌ای شبیه به یک میکروسرویس متمرکز شده است، و هدف اصلی این است که به شما درمورد نحوه ظاهر Spring-Boot به عنوان یک چارچوب وب و تجربه توسعه‌دهندگان برای استفاده از آن بچشید.

پیش نیازهای این دوره

این دوره برای توسعه دهندگان مبتدی جاوا، دانشجویان علوم کامپیوتر/مهندسی، توسعه دهندگان فعلی که می خواهند چیز جدیدی یاد بگیرند و البته برای هر کسی که می خواهد Spring-Boot را یاد بگیرد، ارائه می شود.

تنها پیش نیازهای این دوره موارد زیر است:

  • نسخه انجمن IntellIJ IDEA (رایگان)
  • دانش پایه جاوا (کلاس ها، رابط ها، ژنریک ها)
  • تمایل به یادگیری :-)

در 2 سخنرانی آخر، من از ترمینال و Docker استفاده خواهم کرد، بنابراین اگر با آنها آشنا هستید، دنبال کردن آنها آسان تر خواهد بود، اما آنها لازم نیستند زیرا هر دستوری را که اجرا می کنم توضیح می دهم. گام به گام.

از حضور شما سپاسگزاریم و بیایید در اولین سخنرانی شرکت کنیم!

بیانیه پروژه: یک برنامه Spring-Boot ایجاد کنید که تصاویر را از یک API خارجی بارگیری می کند و آنها را به صورت HTML برمی گرداند تا بتوانید آنها را در مرورگر ببینید.

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

مراحل:

  1. یک API را انتخاب کنید که بتوانید از آن برای جستجوی تصاویر استفاده کنید. یک مثال می تواند این باشد. این یک API بسیار ساده دارد که می توانید با ارائه یک کلمه یا یک عبارت فراخوانی کنید و پاسخ JSON را با پیوندهایی به تصاویر مرتبط با جستجوی شما برمی گرداند.
  2. توجه:  لازم نیست واقعاً تصویر را (مانند بایت‌های واقعی) در برنامه Spring-Boot خود بارگیری کنید، فقط به پیوند آن تصویر نیاز دارید.
  3. با آن API از Postman بازی کنید تا ببینید چگونه کار می کند. پیوندها را بررسی کنید، مطمئن شوید که آنها واقعاً با جستجوی شما مرتبط هستند.
  4. از Unirest یا هر سرویس گیرنده HTTP دیگری استفاده کنید تا از برنامه Spring-Boot خود به آن API خارجی درخواست دهید و مطمئن شوید که پاسخ درست را دریافت می‌کنید. ممکن است مجبور شوید یک کلید API را به عنوان سرصفحه در درخواست ارسال کنید.
  5. پاسخی که از API دریافت می کنید را تجزیه کنید. در نهایت باید فهرستی از نشانی‌های وب که به سمت تصاویر مربوطه اشاره می‌کنند، داشته باشید.
  6. توجه: API شما از مرورگر: localhost:8080/api/dog به این صورت فراخوانی می‌شود و باید یک متن HTML حاوی تصاویر سگ‌ها را برگرداند. نکته: باید کلید جستجو (در این مورد سگ) را با استفاده از @PathVariable استخراج کنید.
  7. پاسخ HTML را که به مرورگر برمی گردانید آماده کنید. یک HTML ساده که یک تصویر را رندر می کند به این صورت است:

شما باید یک تگ img را برای هر تصویر در مجموعه نتایج خود وارد کنید.

قابل تحویل:

پروژه IntelliJ IDEA با اجرای این پروژه. سعی کنید از بهترین شیوه ها در زمینه طراحی کد پیروی کنید، مشابه آنچه در سخنرانی های دوره دیده ایم.

نقطه عطف پاداش (اختیاری):

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

Spring-Boot به ما امکان می دهد نتایج را به روشی آسان و قابل تنظیم کش کنیم. وظیفه شما برای این نقطه عطف این است که در مورد نحوه عملکرد کش در Spring-Boot تحقیق کنید و آن را در این پروژه اعمال کنید.

موفق باشید و هر سوالی در مورد این دوره/پروژه دارید از من بپرسید! من خیلی پاسخگو هستم :-)


سرفصل ها و درس ها

درس ها Lessons

  • مقدمه Intro

  • ایجاد خدمات در Spring-Boot Creating Services in Spring-Boot

  • تماس با خدمات خارجی از طریق HTTP Calling external services via HTTP

  • اولین اپلیکیشن Spring-Boot خود را ایجاد کنید Create your first Spring-Boot App

  • افزودن تنظیمات در application.yaml Adding configs in application.yaml

  • چرا SpringBoot؟ Why SpringBoot?

  • چگونه می توانیم از درخواست های POST استفاده کنیم؟ How can we use POST requests?

  • پیاده سازی پاسخ های استاندارد Implementing standard responses

  • در حال پیکربندی برنامه Spring-Boot ما برای کار با MySQL Configuring our Spring-Boot app to work with MySQL

  • پیکربندی MySQL با Docker Configuring MySQL with Docker

نمایش نظرات

آموزش دوره سقوط چکمه بهار
جزییات دوره
1h 25m
10
Skillshare (اسکیل شیر) Skillshare (اسکیل شیر)
(آخرین آپدیت)
10
از 5
ندارد
دارد
دارد
Cosmin Ionita
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Cosmin Ionita Cosmin Ionita

مهندس ارشد نرم افزار

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

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

تخصص من حول برنامه‌های مبتنی بر JVM و سیستم‌ها/تکنیک‌های اطراف برای مدیریت کانتینر، گردش‌های کاری استقرار، نظارت و هشدار، بهینه‌سازی عملکرد، کیفیت کد، کارایی منابع و بسیاری موارد دیگر می‌چرخد.

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

در اوقات فراغت از نواختن پیانو لذت می برم :-)