آموزش Spring Boot REST APIs Ultimate Course

Spring Boot REST APIs Ultimate Course

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: توسعه عملی REST API با Spring Boot: طراحی، پیاده سازی، سند، ایمن، آزمایش، مصرف API های RESTful درک مفاهیم اصلی API های REST درک بهترین روش های طراحی REST API طراحی REST API با OpenAPI و Swagger Writing Code برای پیاده سازی REST API با Spring خطای مدیریت راه‌اندازی برای API‌های REST اعتبارسنجی درخواست‌های REST API آزمایش API‌های REST (تست‌های واحد، آزمایش‌های یکپارچه‌سازی) ایمن‌سازی API‌های REST با Spring Security، JWT و OAuth2 مستندسازی API‌های REST با اسناد Spring REST استقرار API‌های REST در Cloud (Heroku، Google Cloud، Google Cloud، Azure) Caching REST APIs with Redis as Cache Server API Rate Limiting با Bucket4J ساخت انواع مختلف REST Client (Spring MVC، React، Android و Java Swing) پیاده سازی صفحه بندی، مرتب سازی و فیلتر برای API ها پیش نیازها: دانش پایه در توسعه وب با HTML ، جاوا اسکریپت و CSS دانش پایه در چارچوب Java Spring و Spring Boot دانش پایه در برنامه نویسی جاوا (هسته جاوا و وب جاوا) بدون نیاز به دانش قبلی در REST API. من توسعه REST API را از ابتدا به شما آموزش خواهم داد

به دوره آموزشی Spring Boot REST APIs Ultimate خوش آمدید!

اسم من Nam Ha Minh است. من مربی هستم که شما را در این دوره راهنمایی می کنم. می دانید، من نزدیک به 2 دهه است که از زمان جاوا 1.3 و 1.4 با جاوا برنامه نویسی می کنم. من یک توسعه دهنده حرفه ای جاوا هستم که توسط Oracle تایید شده است.

خیلی خوشحالم که به این دوره علاقه مندید. بگذارید دقیقاً درباره این دوره و هر آنچه که باید قبل از ثبت نام بدانید، معرفی کنم.


  • این دوره دقیقاً درباره چه چیزی است:

این یک دوره جامع در مورد توسعه REST API است، از درک مفاهیم اصلی REST API تا بهترین روش‌های طراحی API و پیاده‌سازی APIها با Spring Boot. از ایمن سازی API ها تا تست کردن API ها. از Documenting APIs تا Deploying APIs.

این دوره همچنین در مورد توسعه انواع مختلف برنامه های REST Client مانند برنامه وب (Spring MVC)، برنامه React، برنامه دسکتاپ (Java Swing) و برنامه تلفن همراه (Android) است.


  • آنچه برای ساختن خواهید آموخت:

از طریق این دوره جامع، ساختن سرویس Weather APIs با استفاده از Spring Boot با پایگاه داده MySQL را خواهید آموخت.

سپس یاد خواهید گرفت که یک برنامه React برای مدیریت داده های آب و هوا بسازید.

از Spring MVC برای ایجاد یک برنامه وب برای مدیریت کاربران و مشتریان API استفاده کنید.

و یک برنامه MVC دیگر برای یک وب سایت پیش بینی آب و هوا.

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

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

برنامه React، وب‌سایت پیش‌بینی آب و هوا، برنامه Android و برنامه Swing از مصرف‌کنندگان سرویس APIs Weather هستند.


  • فن آوری های کلیدی استفاده خواهد شد:

نحوه استفاده از فناوری‌های زیر را خواهید آموخت (که همه آنها ذکر نشده‌اند):

- فناوری‌های پشتیبان: چارچوب Spring، Spring Boot، Spring Data JPA، Spring Data REST، Spring REST Docs، Spring HATEOAS

- Thymeleaf به عنوان موتور قالب سمت سرور برای برنامه Spring MVC

- کتابخانه جاوا JSON FasterXML/jackson

- فناوری‌های امنیتی: Spring Security، Spring Security OAuth2، JSON Web Token (JWT) برای جاوا و Android

- فناوری های پایگاه داده: پایگاه داده رابطه ای MySQL، چارچوب ORM Hibernate

- فن آوری های آزمایش: mockito - چارچوب تمسخر آمیز برای تست های واحد، چارچوب تست JUnit

- Redis به عنوان راه حل حافظه پنهان

- Bucket4J به عنوان راه حل محدودیت نرخ API

- REST Clients: React for Single Page Application، Android برای برنامه تلفن همراه، Java Swing برای برنامه دسکتاپ

- فناوری‌های فرانت‌اند: HTML، CSS، Javascript، Bootstrap، jQuery.


  • ابزارهای اصلی برنامه های نرم افزاری استفاده خواهند شد:

برای توسعه برنامه های کاربردی در این دوره، باید از (همه موارد ذکر شده) استفاده کنید: کیت توسعه جاوا (JDK)، Spring Tool Suite IDE، سرور انجمن MySQL، MySQL Workbench، curl، Postman، Redis، Docker، Swagger ویرایشگر آنلاین و کدژن، Git، Heroku CLI، AWS CLI.


  • آنچه با اتمام این دوره به دست خواهید آورد:

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

همچنین در Backend (جاوا و Spring)، Frontend (React، Javascript، HTML، CSS)، پایگاه داده (MySQL)، Deployment (Heroku، AWS)، Version Control (Git) تخصص توسعه Full-stack دریافت خواهید کرد.

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

و در نهایت، گواهی پایان کار صادر شده توسط Udemy را دریافت خواهید کرد، که می توانید به رزومه خود اضافه کنید.


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

معرفی Introduction

  • مقدمه ای بر این دوره Introduction to this Course

نصب نرم افزار Software Installation

  • نکاتی در مورد نصب نرم افزار Notes about Software Installation

  • کیت توسعه جاوا را نصب کنید Install Java Development Kit

  • Spring Tool Suite IDE را نصب کنید Install Spring Tool Suite IDE

  • Curl and Postman را نصب کنید Install curl and Postman

  • Apache Maven را نصب کنید Install Apache Maven

  • Git را نصب کنید Install Git

  • MySQL Server را نصب کنید Install MySQL Server

  • MySQL Workbench را نصب کنید Install MySQL Workbench

REST API Fundamentals REST API Fundamentals

  • API چیست؟ What is an API?

  • REST API چیست؟ What is REST API?

  • چرا REST API است؟ Why is REST API?

  • URI ها را درک کنید Understand URIs

  • روش‌های HTTP و کدهای وضعیت HTTP Methods and Status Codes

  • HATEOAS را درک کنید Understand HATEOAS

  • زبان کاربرد فرامتن (HAL) Hypertext Application Language (HAL)

  • رابطه پیوند Link Relation

اولین API های REST خود را کد کنید Code Your First REST APIs

  • اولین API REST خود را کد کنید Code Your First REST API

  • دومین API REST خود را کد کنید Code Your Second REST API

  • سومین API REST خود را کد کنید Code Your Third REST API

بهترین روش‌های طراحی REST API REST API Design Best Practices

  • کنوانسیون نامگذاری منابع Resources Naming Convention

  • روش‌های HTTP و کدهای وضعیت HTTP Methods and Status Codes

  • استفاده از Hypermedia (HATEOAS) Use Hypermedia (HATEOAS)

  • نسخه API ها APIs Versioning

  • API های امن Secure APIs

  • APIهای سند Document APIs

  • APIs Caching APIs Caching

  • محدودیت نرخ API APIs Rate Limit

نمای کلی از سیستم نمونه Overview of the Sample System

  • نمای کلی سیستم API پیش بینی آب و هوا Overview of Weather Forecast API System

  • گردش کار اولیه استفاده از API Primary Workflows of API Usage

  • مروری بر نمونه های کاربردی Overview of Sample Applications

  • مروری بر طراحی پایگاه داده Overview of Database Design

  • مروری بر معماری سیستم Overview of System Architecture

API های REST ما را طراحی کنید Design Our REST APIs

  • OpenAPI و Swagger چیست؟ What are OpenAPI and Swagger

  • یک نمونه طراحی API را با Swagger کاوش کنید Explore a Sample APIs Design with Swagger

  • یک نمونه API با Swagger طراحی کنید Design an Example API with Swagger

  • کد سرور را برای مثال API ایجاد کنید Generate Server Code for Example API

  • Embedded Docs را برای مثال API بررسی کنید Check Embedded Docs for Example API

  • کد مشتری را برای مثال API ایجاد کنید Generate Client Code for Example API

  • بسته بندی و اجرای مثال API در Localhost Package and Run Example API on Localhost

  • Example API را در Heroku مستقر کنید Deploy Example API on Heroku

  • تمرین طراحی API API Design Exercise

  • طراحی API های پیش بینی آب و هوا (نسخه 1) Design Weather Forecast APIs (Version 1)

  • هنگام استفاده از Swagger When Using Swagger

  • نکات کلیدی 1 Key Notes 1

راه اندازی پروژه Project Setup

  • پروژه Maven چند ماژول ایجاد کنید Create Multi-Module Maven Project

  • ایجاد پایگاه داده MySQL Create MySQL Database

  • ویژگی های منبع داده را پیکربندی کنید Configure Data Source Properties

  • پایگاه داده موقعیت جغرافیایی را دریافت کنید Get Geolocation Database

  • مراحل پیاده سازی API Steps to Implement an API

API های مکان را پیاده سازی کنید Implement Location APIs

  • کلاس موجودیت مکان ایجاد کنید Create Location Entity Class

  • کد افزودن مکان API Code Add Location API

  • تست واحد برای REST API Unit Testing for REST API

  • تست ادغام با کرل و پستچی Integration Testing with curl and Postman

  • کد فهرست مکان‌های API Code List Locations API

  • کد دریافت مکان API Code Get Location API

  • کد به‌روزرسانی مکان API Code Update Location API

  • کد حذف مکان API Code Delete Location API

  • نکات کلیدی 2 Key Notes 2

مدیریت خطا برای REST API Error Handling for REST APIs

  • چرا سفارشی کردن پاسخ خطای پیش فرض؟ Why Customizing Default Error Response

  • کنترل کننده استثنای جهانی کد Code Global Exception Handler

درخواست های REST API را تأیید کنید Validate REST API Requests

  • اصول اعتبار سنجی درخواست API Fundamentals of API Request Validation

  • سفارشی کردن پاسخ به خطا Customize Error Response

  • اعتبار بخشیدن به بدنه درخواست Validate Request Body

  • اعتبارسنجی پارامترهای مسیر Validate Path Parameters

  • اعتبارسنجی پارامترهای درخواست Validate Request Parameters

API های Realtime Weather را پیاده سازی کنید Implement Realtime Weather APIs

  • نیازهای APIهای آب و هوای بیدرنگ را درک کنید Understand Requirement of Realtime Weather APIs

  • لایه مخزن کد برای APIهای آب و هوای بیدرنگ Code Repository Layer for Realtime Weather APIs

  • سرویس مکان یابی کد Code Geolocation Service

  • آدرس IP مشتری را دریافت کنید Get IP Address of Client

  • آب و هوای بیدرنگ را با آدرس IP دریافت کنید Get Realtime Weather by IP Address

  • از DTO و Model Mapper استفاده کنید Use DTO and Model Mapper

  • آب و هوای بیدرنگ را با کد مکان دریافت کنید Get Realtime Weather by Location Code

  • کد به روز رسانی بیدرنگ Weather API Code Update Realtime Weather API

  • نکات کلیدی 3 Key Notes 3

API های پیش بینی ساعتی را پیاده سازی کنید Implement Hourly Forecast APIs

  • درک نیاز API های پیش بینی ساعتی Understand Requirement of Hourly Forecast APIs

  • لایه مخزن کد برای API های پیش بینی ساعتی Code Repository Layer for Hourly Forecast APIs

  • تست واحد کد برای لایه مخزن Code Unit Tests for Repository Layer

  • پیش بینی ساعتی را با آدرس IP دریافت کنید Get Hourly Forecast by IP Address

  • تست های دریافت پیش بینی ساعتی با آدرس IP Tests for Get Hourly Forecast by IP Address

  • پیش بینی ساعتی را بر اساس کد مکان دریافت کنید Get Hourly Forecast by Location Code

  • کد به‌روزرسانی Hourly Forecast API - قسمت 1 Code Update Hourly Forecast API - Part 1

  • کد به‌روزرسانی Hourly Forecast API - قسمت 2 Code Update Hourly Forecast API - Part 2

  • کد به‌روزرسانی Hourly Forecast API - قسمت 3 Code Update Hourly Forecast API - Part 3

  • API های مکان را به روز کنید Update Location APIs

  • کد Refactor 1 Code Refactor 1

  • نکات کلیدی 4 Key Notes 4

آماده شدن برای استقرار Prepare for Deployment

  • برنامه WeatherApiService را در Localhost بسازید و اجرا کنید Build & Run WeatherApiService App on Localhost

  • قرار دادن پایگاه داده موقعیت جغرافیایی در فایل JAR Embed Geolocation Database in JAR File

استقرار در هروکو Deployment on Heroku

  • اصول هروکو را بدانید Understand Basics of Heroku

  • یک اکانت Heroku ایجاد کنید Create a Heroku Account

  • Heroku CLI را نصب کنید Install Heroku CLI

  • برنامه WeatherApiService را با MySQL اجرا کنید Deploy WeatherApiService App with MySQL

  • برنامه WeatherApiService را با PostgreSQL اجرا کنید Deploy WeatherApiService App with PostgreSQL

استقرار در AWS Elastic Beanstalk Deployment on AWS Elastic Beanstalk

  • مروری بر AWS Overview of AWS

  • نمای کلی AWS Elastic Beanstalk Overview of AWS Elastic Beanstalk

  • مفاهیم کلیدی ساقه لوبیا الاستیک Elastic Beanstalk Key Concepts

  • یک حساب AWS ایجاد کنید Create an AWS Account

  • کاربران IAM را ایجاد کنید Create IAM Users

  • برنامه WeatherApiService را با MySQL اجرا کنید Deploy WeatherApiService App with MySQL

API های REST را با استفاده از Spring RestTemplate مصرف کنید Consume REST APIs using Spring RestTemplate

  • نمای کلی Spring RestTemplate Overview of Spring RestTemplate

  • یک پروژه مشتری REST ایجاد کنید Create a REST Client Project

  • Consume List Locations API Consume List Locations API

  • مصرف افزودن مکان API Consume Add Location API

  • API Get Location را مصرف کنید Consume Get Location API

  • Consume Update Location API Consume Update Location API

  • API حذف مکان را مصرف کنید Consume Delete Location API

  • تمرین: APIهای آب و هوای بیدرنگ را مصرف کنید Exercise: Consume Realtime Weather APIs

  • API دریافت ساعتی آب و هوا را مصرف کنید Consume Get Hourly Weather API

  • Consume Update Hourly Weather API Consume Update Hourly Weather API

  • از RestTemplate در برنامه Spring MVC استفاده کنید Use RestTemplate in Spring MVC Application

  • نکات کلیدی 5 Key Notes 5

API های پیش بینی روزانه را پیاده سازی کنید Implement Daily Forecast APIs

  • نیازهای API های پیش بینی روزانه را درک کنید Understand Requirement of Daily Forecast APIs

  • لایه مخزن کد برای API های پیش بینی روزانه Code Repository Layer for Daily Forecast APIs

  • تست واحد کد برای لایه مخزن Code Unit Tests for Repository Layer

  • تمرین: دریافت پیش بینی روزانه با آدرس IP را پیاده سازی کنید Exercise: Implement Get Daily Forecast by IP Address

  • تمرین: دریافت پیش‌بینی روزانه را براساس کد مکان پیاده‌سازی کنید Exercise: Implement Get Daily Forecast by Location Code

  • تمرین: به روز رسانی API پیش بینی روزانه را پیاده سازی کنید Exercise: Implement Update Daily Forecast API

  • کد Refactor 2 Code Refactor 2

API های Full Weather را پیاده سازی کنید Implement Full Weather APIs

  • نیازهای APIهای آب و هوای کامل را درک کنید Understand Requirement of Full Weather APIs

  • کد دریافت آب و هوای کامل با آدرس IP Code Get Full Weather by IP Address

  • تست های یکپارچه سازی برای دریافت آب و هوای کامل با آدرس IP Integration Tests for Get Full Weather by IP Address

  • استفاده از فیلتر سفارشی JSON Using JSON Custom Filter

  • تمرین: Get Full Weather را بر اساس کد مکان پیاده سازی کنید Exercise: Implement Get Full Weather by Location Code

  • API Update Full Weather را پیاده سازی کنید Implement Update Full Weather API

  • تست های یکپارچه سازی برای به روز رسانی API آب و هوای کامل Integration Tests for Update Full Weather API

  • کد Refactor 3 Code Refactor 3

  • نکات کلیدی 6 Key Notes 6

APIهای مبتنی بر رسانه ها را بسازید Build Hypermedia-Driven APIs

  • چرا APIهای Hypermedia-Driven؟ Why Hypermedia-Driven APIs?

  • HATEOAS، HAL و رابطه پیوند را مرور کنید Review HATEOAS, HAL and Link Relation

  • به‌روزرسانی سند طراحی API (نسخه 1.1) Update API Design Document (Version 1.1)

  • Spring HATEOAS را درک کنید Understand Spring HATEOAS

  • پیوندهایی برای پایگاه URI اضافه کنید Add Links for Base URI

  • پیکربندی Jackson Object Mapper Configure Jackson Object Mapper

  • پیوندهایی برای APIهای آب و هوای بیدرنگ اضافه کنید Add Links for Realtime Weather APIs

  • تمرین: پیوندهایی برای API های پیش بینی ساعتی اضافه کنید Exercise: Add Links for Hourly Forecast APIs

  • پیوندهایی برای API های پیش بینی روزانه اضافه کنید Add Links for Daily Forecast APIs

  • پیوندهایی برای API های پیش بینی آب و هوای کامل اضافه کنید Add Links for Full Weather Forecast APIs

  • API ها را با استفاده از مرورگر وب تست کنید Test APIs using Web Browser

  • نکات کلیدی 7 Key Notes 7

صفحه بندی، مرتب سازی و فیلتر را برای API ها پیاده سازی کنید Implement Pagination, Sort and Filter for APIs

  • به روز رسانی برای API های مکان را درک کنید Understand Updates for Location APIs

  • به‌روزرسانی سند طراحی API (نسخه 1.2) Update API Design Document (Version 1.2)

  • API صفحه‌بندی و مرتب‌سازی برای فهرست مکان‌ها را پیاده‌سازی کنید Implement Pagination and Sort for List Locations API

  • اعتبارسنجی صفحه بندی و مرتب سازی پارامترهای پرس و جو Validate Pagination and Sort Query Parameters

  • متادیتای صفحه را به Response اضافه کنید Add Page Metadata to Response

  • پیوندهای صفحه بندی را به پاسخ اضافه کنید Add Pagination Links to Response

  • تمرین: تست واحد کد برای پیوندهای صفحه بندی Exercise: Code Unit Tests for Pagination Links

  • API معیارهای JPA را درک کنید Understand JPA Criteria API

  • صفحه بندی، مرتب سازی و فیلتر را با استفاده از JPA Criteria API پیاده سازی کنید Implement Pagination, Sort and Filter using JPA Criteria API

  • تعداد کل ردیف را دریافت کنید Get Total Row Count

  • کدگذاری کامل API مکان‌های فهرست Complete Coding of List Locations API

  • API تست های یکپارچه سازی برای لیست مکان ها Integration Tests for List Locations API

  • تمرین: پیوندهایی را برای سایر APIهای مکان اضافه کنید Exercise: Add Links for Other Location APIs

  • مرتب سازی پیشرفته را پیاده سازی کنید Implement Advanced Sort

  • کد Refactor 4 Code Refactor 4

  • نکات کلیدی 8 Key Notes 8

امنیت API را درک کنید Understand API Security

  • مبانی امنیت API API Security Basics

  • الزامات امنیتی برای API های آب و هوا Security Requirements for Weather APIs

  • مروری کوتاه بر OAuth 2.0 A Brief Overview of OAuth 2.0

  • معرفی سریع JWT A Quick Introduction to JWT

  • گردش کار امنیتی APIهای آب و هوا Security Workflow of Weather APIs

  • امنیت را در طراحی API توضیح دهید Describe Security in API Design

API ها را با HTTP Basic ایمن کنید Secure APIs with HTTP Basic

  • احراز هویت پایه HTTP را درک کنید Understand HTTP Basic Authentication

  • API Hello World را با کاربران درون حافظه ایمن کنید Secure Hello World API with In-memory Users

  • تست واحد کد برای احراز هویت پایه HTTP Code Unit Tests for HTTP Basic Authentication

  • Secure Unit Conversion API با کاربران پایگاه داده Secure Unit Conversion API with Database Users

  • نکات کلیدی 9 Key Notes 9

APIهای دانشجویی را با OAuth2 و JWT ایمن کنید Secure Student APIs with OAuth2 and JWT

  • الزامات امنیتی برای دانش آموز API Security Requirements for Student APIs

  • چرا از فیلتر سفارشی و کتابخانه JWT شخص ثالث استفاده می کنیم؟ Why Using Custom Filter and Third-party JWT Library

  • پروژه را برای استفاده از پایگاه داده MySQL به روز کنید Update Project to Use MySQL Database

  • لایه مخزن کد برای APIهای دانشجویی Code Repository Layer for Student APIs

  • لایه کنترلر را برای APIهای دانشجویی به روز کنید Update Controller Layer for Student APIs

  • کد JWT Utility Class Code JWT Utility Class

  • به روز رسانی مخزن کاربر برای احراز هویت Update User Repository for Authentication

  • پیکربندی احراز هویت کاربر Configure User Authentication

  • فیلتر امنیتی Spring را پیکربندی کنید Configure Spring Security Filter

  • API Get Access Token را پیاده سازی کنید Implement Get Access Token API

  • Get Access Token API را با Postman تست کنید Test Get Access Token API with Postman

  • پیاده سازی فیلتر امنیتی سفارشی Implement Custom Security Filter

  • Test List Student API با Postman Test List Student API with Postman

  • احراز هویت JWT را با تست امنیتی Spring تست کنید Test JWT Authentication with Spring Security Test

  • مجوز را با روش امنیت پیکربندی کنید Configure Authorization with Method Security

  • APIهای باقیمانده دانشجویی را با Postman تست کنید Test Remaining Student APIs with Postman

نمایش نظرات

آموزش Spring Boot REST APIs Ultimate Course
جزییات دوره
42 hours
183
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
761
4.6 از 5
دارد
دارد
دارد
Nam Ha Minh
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Nam Ha Minh Nam Ha Minh

برنامه نویس پرشور جاوا