آموزش بیایید نسخه Go از لاراول بسازیم: بخش دوم - آخرین آپدیت

دانلود Let's Build a Go version of Laravel: Part Two

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

ادامه دوره "بیایید نسخه‌ای از لاراول را با زبان Go بسازیم"

بهینه‌سازی پروژه‌های Go با سیستم‌های فایل ریموت، احراز هویت اجتماعی و موارد دیگر

این دوره ادامه سری آموزشی "بیایید نسخه‌ای از لاراول را با زبان Go بسازیم" است و برای دانشجویانی طراحی شده که دوره اول را گذرانده‌اند.

چرا این دوره برای سئو گوگل بهینه است؟

  • پیاده‌سازی و استفاده از فراخوانی رویه‌ای از راه دور (RPC) در Go
  • بارگذاری امن فایل‌ها در Go
  • ادغام با سطل‌های AWS S3 در اپلیکیشن Go
  • ادغام سیستم فایل FTP/SFTP در Go
  • پیاده‌سازی احراز هویت اجتماعی در Go

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

در بخش اول این مجموعه، یک ماژول قابل استفاده مجدد Go ساختیم که قابلیت‌های فراوانی از جمله انواع پاسخ‌های html، json و xml، پشتیبانی از قالب‌های Go و Jet برای رندر کردن صفحات، پشتیبانی از چندین پایگاه داده، نشست‌ها و موارد دیگر را فراهم می‌کرد. در این دوره، بسته Celeritas خود را بهبود می‌بخشیم و قابلیت‌های زیر را اضافه خواهیم کرد:

  • اضافه کردن پشتیبانی از سیستم‌های فایل از راه دور، شامل سطل‌های Amazon S3، Minio، sFTP و WebDAV

  • اضافه کردن پشتیبانی از احراز هویت اجتماعی با استفاده از GitHub و Google (و امکان اضافه کردن موارد بیشتر)

  • اضافه کردن پشتیبانی از تست‌های بهبود یافته، از جمله نسخه Go از بسته Dusk لاراول که هنگام تست عملکرد رندر صفحه وب، اسکرین‌شات می‌گیرد.

  • اضافه کردن پشتیبانی از "حالت نگهداری" با استفاده از فراخوانی‌های رویه‌ای از راه دور (RPC)

  • بهبود مهاجرت‌های پایگاه داده برای پشتیبانی از هر دو فرمت فایل SQL خام و Fizz از soda

  • پیاده‌سازی قابلیت بارگذاری فایل (با پشتیبانی از سیستم‌های فایل محلی و از راه دور)

  • جداسازی منطق و مسیرها برای وب و API

  • فراهم کردن امکان ایجاد آسان تست برای کاربران با پیش‌فرض کردن فایل‌های نمونه تست و فایل‌های setup_test.go مناسب برای پروژه‌هایشان.

با اتمام این دوره، نه تنها درک کاملی از هر یک از موارد ذکر شده خواهید داشت، بلکه یک پایگاه کد قابل استفاده مجدد نیز خواهید داشت که به شما در شروع پروژه بعدی‌تان کمک می‌کند.

پیش‌نیازها:

  • درک پایه از زبان برنامه‌نویسی Go
  • درک پایه از HTML
  • درک پایه از JavaScript

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

مقدمه Introduction

  • مقدمه Introduction

  • درباره من About me

  • درخواست کمک Asking for help

  • نصب Go Installing Go

  • نصب IDE Installing an IDE

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

  • راه‌اندازی پروژه ما Setting up our project

  • اطمینان از کارکرد صحیح همه چیز Making sure everything works

راه‌اندازی سیستم‌های فایل راه دور خود Setting up our remote file systems

  • آنچه را که قرار است ایجاد کنیم What we're going to create

  • راه‌اندازی سیستم‌های فایل راه دور با استفاده از Docker Setting up our remote file systems using Docker

  • پیکربندی Minio Configuring Minio

  • پیکربندی sFTP Configuring sFTP

  • راه‌اندازی یک نوع برای سیستم‌های فایل Setting up a type for file systems

سیستم‌های فایل: Minio File systems: Minio

  • شروع کار با Minio: اتصال و تابع Put Getting started with Minio: connecting and the Put function

  • پیاده‌سازی تابع List در Minio Implementing the List function in Minio

  • پیاده‌سازی تابع Delete در Minio Implementing the Delete function in Minio

  • پیاده‌سازی تابع Get در Minio Implementing the Get function in Minio

  • ایجاد سیستم‌های فایل stub برای سه نوع دیگر Creating stub filesystems for the other three types

  • افزودن سیستم‌های فایل به Celeritas Adding filesystems to Celeritas

  • آزمایش سیستم فایل Minio ما Trying out our Minio filesystem

  • ایجاد یک هندلر برای لیست کردن سیستم فایل راه دور Creating a handler to list the remote file system

  • اتصال هندلر به یک مسیر و آزمایش کردن Connecting the handler to a route and trying things out

  • ایجاد هندلرها برای نمایش فرم آپلود Creating handlers to display the upload form

  • ایجاد هندلر برای پردازش آپلود فایل Creating the handler to process the file upload

  • ایجاد هندلر حذف Creating the delete handler

سیستم‌های فایل: sFTP File systems: sFTP

  • پیاده‌سازی تابع Put برای sFTP Implementing the Put function for sFTP

  • پیاده‌سازی تابع List برای sFTP Implementing the List function for sFTP

  • پیاده‌سازی تابع Delete برای sFTP Implementing the Delete function for sFTP

  • پیاده‌سازی تابع Get برای sFTP Implementing the Get function for sFTP

  • اتصال Celeritas به سیستم فایل sFTP ما Connecting Celeritas to our sFTP file system

  • به‌روزرسانی هندلر ListFS برای پشتیبانی از sFTP Updating our ListFS handler to support sFTP

  • به‌روزرسانی هندلر PostUploadToFS برای پشتیبانی از sFTP Updating our PostUploadToFS handler to support sFTP

  • به‌روزرسانی هندلر DeleteFromFS برای پشتیبانی از sFTP Updating our DeleteFromFS handler to support sFTP

  • پاکسازی تابع Get برای جلوگیری از نشت منابع Cleaning up the Get function to avoid resource leaks

سیستم‌های فایل: WebDAV File systems: WebDAV

  • پیاده‌سازی تابع Put برای WebDAV Implementing the Put function for WebDAV

  • پیاده‌سازی تابع List برای WebDAV Implementing the List function for WebDAV

  • پیاده‌سازی تابع Delete برای WebDAV Implementing the Delete function for WebDAV

  • پیاده‌سازی تابع Get برای WebDAV Implementing the Get function for WebDAV

  • آزمایش کردن Testing things out

سیستم‌های فایل: سطل‌های Amazon S3 File systems: Amazon S3 Buckets

  • پیاده‌سازی تابع List برای سیستم‌های فایل S3 Implementing the List function for S3 file systems

  • پیاده‌سازی تابع Put برای سیستم‌های فایل S3 Implementing the Put function for S3 file systems

  • پیاده‌سازی تابع Delete برای سیستم‌های فایل S3 Implementing the Delete function for S3 file systems

  • پیاده‌سازی تابع Get برای سطل‌های S3 Implementing the Get function for S3 buckets

  • اتصال Celeritas به سیستم فایل S3 ما Connecting Celeritas to our S3 file system

  • ایجاد یک سطل سازگار با S3 در Linode Creating an S3 compatible bucket on Linode

  • به‌روزرسانی هندلر‌های ما برای سطل‌های S3 Updating our handlers for S3 buckets

  • آزمایش کردن Trying things out

ساخت یک آپلود کننده فایل مستقل از سیستم فایل Building a File System Agnostic File Uploader

  • آنچه خواهیم ساخت What we'll build

  • افزودن سیستم‌های فایل به نوع Celeritas Adding file systems to the Celeritas type

  • ایجاد آپلود کننده فایل Creating the file uploader

  • محدود کردن آپلود بر اساس نوع mime Limiting upload by mime type

  • افزودن محدودیت‌های نوع mime و اندازه فایل به نوع پیکربندی Celeritas Adding the mime type and file size limitations to the Celeritas config type

  • راه‌اندازی هندلرها و مسیرها برای آزمایش Setting up handlers and routes to try things out

  • آزمایش کردن Trying things out

بهبود بسته Migrations ما Improving our Migrations package

  • Pop در مقابل SQL Pop vs. SQL

  • شروع کار با توابع Pop برای کد مهاجرت ما در Celeritas Getting started with Pop functions for our migrations code in Celeritas

  • پیاده‌سازی تابع CreatePopMigration() برای ایجاد مهاجرت‌های up و down Implementing the CreatePopMigration() function to create up and down migrations

  • پیاده‌سازی تابع RunPopMigrations() Implementing the RunPopMigrations() function

  • پیاده‌سازی تابع PopMigrateDown() Implementing the PopMigrateDown() function

  • پیاده‌سازی تابع PopMigrateReset() Implementing the PopMigrateReset() function

  • انجام تغییرات در CLI Celeritas برای مهاجرت‌های Pop ما Making changes in the Celeritas CLI for our pop migrations

  • آزمایش دستور make migration جدید ما Trying out our new make migration command

  • اطمینان از اتصال پایگاه داده قبل از اجازه دادن به افراد برای ایجاد مهاجرت Ensuring the database is connected before allowing people to make migrations

  • ایجاد فایل database.yml و اجرای مهاجرت‌ها Creating a database.yml file and running migrations

  • آزمایش دستور migrate Trying out the migrate command

  • به‌روزرسانی دستور "make auth" برای یکپارچه‌سازی Pop ما Updating the "make auth" command for our Pop integration

  • آزمایش make auth Trying out make auth

احراز هویت اجتماعی با OAuth2 Social Authentication with OAuth2

  • احراز هویت اجتماعی یا ورود تک‌باره: مروری کلی Social Authentication or Single Sign On: an Overview

  • شروع کار با Goth و احراز هویت اجتماعی Getting started with Goth and Social Authentication

  • راه‌اندازی مسیرهای احراز هویت Setting up authentication routes

  • راه‌اندازی ورود اجتماعی Initializing social sign on

  • پیاده‌سازی هندلر SocialLogin Implementing the SocialLogin handler

  • پیاده‌سازی هندلر SocialCallback Implementing the SocialCallback handler

  • اتصال هندلرهای احراز هویت اجتماعی ما به مسیرها Connecting our social authentication handlers to routes

  • راه‌اندازی GitHub برای احراز هویت اجتماعی Setting up GitHub for social authentication

  • آزمایش قابلیت ورود GitHub Trying out the GitHub login functionality

  • خروج از سیستم Logging out

  • خروج واقعی از سیستم Really logging out

  • آزمایش تابع socialLogout Trying the socialLogout function

  • افزودن پشتیبانی برای ورود گوگل Adding support for Google login

  • به‌روزرسانی فایل auth-handlers.go برای گوگل جهت فعال کردن ورود Updating the auth-handlers.go file for Google to enable login

  • آزمایش ورود با گوگل Trying out login with Google

  • افزودن مورد برای خروج از گوگل در socialLogout() Adding the case for logging out of Google in socialLogout()

  • آزمایش کردن Trying things out

RPC، خاموش شدن بدون خطا و تغییرات اضافی RPC, Graceful Shutdown, and additional changes

  • جداسازی مسیرهای وب و API Separating Web and API routes

  • شروع کار با قابلیت "حالت نگهداری" با استفاده از RPC Getting started with "Maintenance Mode" functionality using RPC

  • شروع RPC Starting RPC

  • افزودن میان‌افزار حالت نگهداری Adding maintenance mode middleware

  • به‌روزرسانی CLI برای حالت نگهداری Updating the CLI for maintenance mode

  • آزمایش قابلیت حالت نگهداری Testing the maintenance mode functionality

  • خاموش شدن بدون خطا Graceful Shutdown

تست‌ها Testing

  • افزودن یک فایل setup_test.go ساده به هندلرها Adding a simple setup_test.go file to handlers

  • افزودن دو تابع به فایل setup_test.go ما Adding two functions to our setup_test.go file

  • افزودن و اجرای یک تست نمونه Adding and running a sample test

  • افزودن تست‌های اضافی Adding some additional tests

  • پیاده‌سازی اسکرین‌شات‌های شبیه Laravel Dusk Implementing Laravel Dusk like screen captures

  • نوشتن تابع اسکرین‌شات Writing the screen capture function

  • آزمایش تابع اسکرین‌شات Trying out the screen capture function

  • نوشتن توابع کمکی اضافی برای تست Writing additional helper functions for testing

تغییرات نهایی در برنامه CLI Celeritas Final changes to the Celeritas CLI application

  • به‌روزرسانی قالب‌های ما در CLI، و انجام چند تغییر در myapp Updating our templates in the CLI, and making some changes to the myapp

  • ایجاد برنامه skeleton ما Creating our skeleton app

  • به‌روزرسانی‌های اضافی برای برنامه skeleton و پروژه celeritas Additional updates to the skeleton application and the celeritas project

  • آزمایش دستور "celeritas new <project>" Trying out the "celeritas new <project>" command

  • آزمایش کردن Trying things out

نمایش نظرات

آموزش بیایید نسخه Go از لاراول بسازیم: بخش دوم
جزییات دوره
8 hours
103
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,728
4.9 از 5
دارد
دارد
دارد
Trevor Sawler
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar