GO (golang): برنامه های کاربردی وب مدرن، سریع و ایمن را توسعه دهید

GO (golang): Develop Modern, Fast & Secure Web Applications

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: مقدمه ای جامع برای توسعه برنامه های کاربردی وب سریع و ایمن در GO (مبتدیان و توسعه دهندگان نسبتاً پیشرفته) نحوه ساخت برنامه های وب مدرن، سریع و ایمن در زبان برنامه نویسی GO گوگل نحوه کدنویسی برنامه های خود در زبان برنامه نویسی GO (golang) برنامه خود را در GO سازماندهی کنید و در حین توسعه صحیح بسته های شخص ثالث را با ماژول های GO ادغام کنید جاوا اسکریپت ساده بنویسید بدون وابستگی به چیزی مانند jQuery ایجاد صفحات HTML با استفاده از HTML5 ایجاد و استفاده از Cascading Style Sheets (CSS) نحوه نوشتن تست در GO بینش مختصر در ایجاد Entity نمودارهای ارتباط با استفاده از "migrations" (و FIZZ) برای ایجاد یک محیط در حال توسعه برای پایگاه داده PostgreSQL نحوه راه اندازی و اتصال به پایگاه داده (سرور) PostgreSQL در GO مدیریت جلسات در GO بهترین شیوه ها برای امنیت در برنامه های کاربردی وب ایجاد و استفاده از میان افزار در GO پیاده سازی احراز هویت امن کاربر در GO استقرار یک برنامه وب GO بر روی سرور واقعی راه اندازی Caddy 2 به عنوان Reverse Proxy با HTTPS بسیاری از شایستگی های دیگر که یک توسعه دهنده فول استک باید داشته باشد. این دوره (اما به شدت توصیه می شود!). این دوره با آموزش مهارت های بسیار ابتدایی شروع می شود و قدم به قدم شما را برای ایجاد اپلیکیشن های وب مدرن در Go راهنمایی می کند. تجربه اولیه کدگذاری GO و یک GO IDE (محیط توسعه یکپارچه) مفید است اما اجباری نیست. آشنایی با HTML5، جاوا اسکریپت، CSS، SQL، لینوکس، درک کلی فرآیندها در کامپیوتر کمک می کند و همچنین در این دوره پوشش داده خواهد شد. تمایل به یادگیری و مقدار زیادی کنجکاوی برای فهمیدن اینکه کارها چگونه کار می کنند!

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

این دوره به عنوان منبعی غنی برای یادگیری اصول برنامه نویسی و همچنین مفاهیم به طور کلی و توسعه برنامه های وب مدرن و سریع با زبان برنامه نویسی GO (golang) گوگل به طور خاص - یک تجربه یادگیری جامع در نظر گرفته شده است.

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

درباره مزایای زبان برنامه نویسی GO و در راه رسیدن به یک برنامه کاربردی، نحوه ادغام عناصر دیگر مانند پایگاه های داده SQL/PostgreSQL، جاوا اسکریپت (سمت مشتری و سمت سرور)، تکنیک های AJAX، آشنا خواهید شد. HTML، CSS و نحوه استفاده از ابزارهای ضروری برای توسعه دهندگان فول استک .

علاوه بر برنامه نویسی در GO، این دوره به

نیز می پردازد
  • HTML5/CSS/DOM

  • جاوا اسکریپت (وانیل، بدون وابستگی به جی کوئری)

  • SQL/PostgreSQL

  • مهاجرت ها/FIZZ

  • JSON

  • مسیرها، هندلرها، مدل‌ها

  • تست‌ها، مدیریت خطا

  • Linux (bash)، Windows (Command Line)، macOS (bash)

  • git/github

  • نصب بر روی سرور وب

  • و خیلی چیزهای دیگر

در حالی که برای مبتدیان با تجربه اولیه برنامه نویسی مناسب است، به گونه ای طراحی شده است که منبعی برای توسعه دهندگان نسبتاً پیشرفته باشد. این مملو از مثال‌ها، توضیح‌ها و توضیح مفاهیم مورد نیاز برای توسعه برنامه‌های کاربردی وب مدرن، سریع و ایمن است و با یک مخزن کد در Github و یک طرح کلی دوره دقیق به‌عنوان PDF، که به عنوان بخشی از دوره عمل می‌کند، ارائه می‌شود.

شامل بسته‌های خارجی و وابستگی‌ها:

  • گو-چی | روتر

  • scs | جلسات

  • نوسرف | CSRF-Token

  • گوالیداتور | اعتبار سنجی (در سمت سرور)

  • pgx/v5 | جعبه ابزار درایور PostgreSQL

  • go-simple-mail | بسته گلانگ برای ارسال ایمیل

  • کدی 2 | یک وب سرور قدرتمند، آماده برای شرکت و منبع باز با HTTPS خودکار که در GO

    نوشته شده است

همچنین در حال بازی کردن یک نقش:

  • بوت استرپ | بوت استرپ - چارچوب HTML، CSS و جاوا اسکریپت (بدون jQuery)

  • RoyalUI-Free-Bootstrap-Admin-Template | قالب رایگان Bootstrap 4 Admin

  • Simple-DataTables | DataTables اما در TypeScript به Vanilla JS

    منتقل شده است
  • postgres | سرور PostgreSQL (فقط آینه)

  • پاپ | سودا/مهاجرت - استانداردسازی وظایف پایگاه داده

  • dbeaver | Dbeaver - ابزار رایگان پایگاه داده چند پلتفرمی

  • vanillajs-datepicker | تاریخ انتخاب جاوا اسکریپت وانیلی

  • توجه کنید | اعلان های محجوب - جاوا اسکریپت تمیز و ساده

  • SweetAlert2 | گزینه های بسیار زیادی برای پاپ آپ های جاوا اسکریپت

  • MailHog | آزمایش SMTP مبتنی بر وب و API

  • بنیاد ایمیل 2 | به سرعت ایمیل های پاسخگو HTML ایجاد کنید که کار می کنند

  • کبرا | چارچوبی برای برنامه های مدرن CLI در GO

  • GoDotEnv | پورت GO کتابخانه dotenv Ruby

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

  • این دوره همچنین با ضمانت 100٪ بازگشت وجه ارائه می شود.

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

  • و اگر به دلایلی این دوره برای شما کار نکرد، می‌توانید در 14 روز اول بازپرداخت کامل دریافت کنید*.

اکنون ثبت نام کنید!


شما می‌توانید ارزش زیادی از این دوره دریافت کنید و مهمتر از آن، زمان بسیار خوبی را با یادگیری یکی از بهترین زبان‌های برنامه‌نویسی گذرانده‌اید - زبان برنامه‌نویسی GO، سریع‌ترین زبان برنامه‌نویسی در حال رشد با پردرآمدترین برنامه‌نویسان در ایالات متحده در سال های گذشته.

GO یک زبان برنامه نویسی منبع باز است که توسعه نرم افزار ساده، قابل اعتماد و کارآمد را آسان می کند.

GO توسط بزرگان علم کامپیوتر در یکی از بهترین، اگر نگوییم بهترین، شرکت‌های توسعه نرم‌افزار تا کنون - Google- توسعه داده شد. طراحی و پیاده سازی توسط Robert Griesemer، Rob Pike و Ken Thompson انجام شده است.

GO انتخاب بسیار خوبی برای یادگیری یک زبان برنامه نویسی است زیرا توسط برخی از همان افرادی که زبان برنامه نویسی C، Unix و UTF-8 را ایجاد کردند - برخی از تأثیرگذارترین کمک ها به علم کامپیوتر - توسعه یافته است. با GO Robert Griesemer، Rob Pike و Ken Thompson یک زبان برنامه نویسی مدرن ایجاد کردند که به راحتی می تواند بر روی چندین پردازنده به صورت موازی اجرا شود، در محیط های مختلف به راحتی کار می کند و نوشتن برنامه ها را برای برنامه نویسان با نحو بسیار ساده و کاربر پسند آسان می کند. .

چرا گوگل یک زبان برنامه نویسی جدید ایجاد کرد؟

به قول گوگل، "GO به دلیل ناامیدی از زبان ها و محیط های موجود برای برنامه نویسی سیستم ها به وجود آمد. برنامه نویسی بسیار دشوار شده بود و انتخاب زبان ها تا حدی مقصر بود. یکی باید یکی را انتخاب می کرد

  • کامپایل کارآمد،

  • اجرای کارآمد، یا

  • سهولت برنامه نویسی.

هر سه به یک زبان اصلی در دسترس نبودند. برنامه نویسانی که می توانستند با حرکت به زبان های تایپ شده پویا مانند پایتون و جاوا اسکریپت به جای C++ یا تا حدی جاوا، سهولت را به جای ایمنی و کارایی انتخاب کنند. GO تلاشی برای ترکیب سهولت برنامه نویسی یک زبان تفسیر شده و پویا تایپ شده با کارایی و ایمنی یک زبان تایپ ایستا و کامپایل شده است. همچنین هدف آن مدرن بودن با پشتیبانی از محاسبات شبکه ای و چند هسته ای است.

در نهایت، کار با GO سریع است: ساخت یک فایل اجرایی بزرگ بر روی یک کامپیوتر تنها باید حداکثر چند ثانیه طول بکشد. برای دستیابی به این اهداف نیاز به پرداختن به تعدادی از مسائل زبانی است: یک سیستم از نوع رسا اما سبک وزن. همزمانی و جمع آوری زباله; مشخصات وابستگی صلب؛ و غیره اینها را نمی توان به خوبی توسط کتابخانه ها یا ابزارها بررسی کرد. زبان جدیدی فراخوانده شد. "

با من مزایای برنامه نویسی وب یکی از بهترین زبان های برنامه نویسی توسعه یافته را با من بیاموزید. دانش، ایده‌ها، مفاهیم، ​​الهام‌بخش و نمونه‌های کد برای طراحی نرم‌افزار و برنامه‌های کاربردی مطابق با خواسته‌هایتان را خودتان دریافت خواهید کرد.

* برای جزئیات، شرایط و ضوابط Udemy را بررسی کنید.


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

معرفی Introduction

  • به من اجازه دهید تا خودم را معرفی کنم - "whoami" برای دوره های Udemy Allow Me To Introduce Myself - The “whoami” For Udemy Courses

  • چرا GO Of All Things؟ چرا Node.js یا زبان برنامه نویسی دیگری نیست؟ Why GO Of All Things? Why Not Node.js Or Another Programming Language?

  • نصب GO و راه اندازی یک محیط توسعه یکپارچه رایگان (IDE) Installation Of GO And Setup Of A Free Integrated Development Environment (IDE)

  • نکات یادگیری در این دوره Learning Notes On This Course

  • طرح کلی دوره همراه به صورت PDF (همچنین در Github موجود است) Accompanying Course Outline As PDF (Also Available On Github)

  • بخش مختصر و مروری بر محتوا Brief Section And Content Overview

  • منابع اولیه اطلاعات در وب درباره GO و نرم افزارهای مورد استفاده Basic Sources Of Information On The Web About GO And Used Software

شیرجه رفتن مختصر Into Go As A Crash Course Brief Dive Into Go As A Crash Course

  • این اشاره و این یکی و این یکی را نیز بگیرید! Take This Hint And This One, And This One Too!

  • سلام دنیا Hello, World

  • متغیرها - اول چیزها Variables - First Things First

  • همه کاربردی؟ All Functional?

  • اشاره گر – اشاره انگشت به سمت دیگران Pointer – Pointing The Finger At Others

  • دنیای سایه - همیشه در مورد انواع و ساختارها است The Shadow World - It's Always About Types And Structs

  • گیرنده - روش جنون می شود Receiver - The Madness Gets Method

  • نقشه ها و برش ها Maps And Slices

  • تصمیمات و شرایط - اگر، در غیر این صورت، اگر، تغییر دهید Decisions & Conditionals – If, Else, Else If, Switch

  • در دا لوپ: "برای" و "محدوده" به عنوان یک تیم In Da Loop: "For" And "Range" As A Team

  • چند شکلی: رابط ها - نام همه چیز را می گوید Polymorphism: Interfaces - The Name Says It All

  • برو ماژول ها Go Modules

  • کانال‌ها کلید ارتباطات همزمان هستند! Channels Are The Key To Concurrent Communication In Go!

  • واردات و صادرات داده ها با فرمت Json Import And Export Of Data In Json Format

  • تست های واحد Unit Tests

برنامه وب پایه - آغاز Basic Web Application - The Beginning

  • چرخه درخواست/پاسخ HTTP The HTTP Request/Response Cycle

  • اولین برنامه وب: "این زنده است! زنده است!" The First Web Application: "It's Alive! It's Alive!"

  • با جادوی عملکردها، پتانسیل کامل هندلرها را آزاد کنید! Unleash The Full Potential Of Handlers With The Magic Of Functions!

  • خطاها دارای ارزش هستند و یک ارزش هستند Errors Have Value And Are A Value

  • قالب های HTML: چون هیچ کس وقت ندارد آن را از ابتدا کدنویسی کند! HTML Templates: Because Ain't Nobody Got Time To Code That From Scratch!

  • سازماندهی و تسخیر: بیایید فضای خود را مرتب و بهینه کنیم! Organize And Conquer: Let's Tidy Up And Optimize Our Space!

  • بازسازی - ساختاری مانند کتاب درسی Restructuring – A Structure Like From The Textbook

  • چیدمان مانند یک رئیس Layouts Like A Boss

  • حافظه پنهان پویا برای پردازش قالب موثر A Dynamic Cache For Effective Template Processing

  • ایجاد یک کش ثابت شماره 1: پردازش الگوی کارآمد Creating A Static Cache #1: Efficient Template Processing

  • ایجاد یک کش ثابت شماره 2: معرفی فایل پیکربندی برای متغیرهای جهانی Creating A Static Cache #2: Introducing Configuration File For Global Variables

  • ایجاد یک کش ثابت شماره 3: مرحله نهایی پیاده سازی با استفاده از متغیرهای جهانی Creating A Static Cache #3: Final Step Of Implementation Using Global Variables

  • کارهای دیگری که می توانید با یک فایل پیکربندی انجام دهید What Else You Can Do With A Configuration File

  • اشتراک گذاری مراقبت است: به اشتراک گذاری داده ها با الگوها Sharing Is Caring: Sharing Data With Templates

GO With The Flow: مقدمه ای بر Middlewares In GO! GO With The Flow: An Introduction To Middlewares In GO!

  • معرفی میان افزار و مسیریابی در GO Introduction Of Middleware And Routing In GO

  • پیاده سازی بسته مسیریابی ساده (bmizerany/pat) Implementation Of A Simple Routing Package (bmizerany/pat)

  • مورد علاقه توسعه دهنده: go-hhi/chi به عنوان بسته مسیریابی خارجی جدید Developer's Favorite: go-hhi/chi As New External Routing Package

  • میان‌افزار: امروز خودتان میدل‌افزار خودتان را انجام دهید و جالب‌ترین کدنویس شهر باشید Middleware: DIY Your Own Middleware Today And Be The Coolest Coder In Town

  • مدیریت دولتی با جلسه(های) State Management With Session(s)

  • آزمون تابع مختصر برای داده های جلسه Brief Function Test For Session Data

انتخاب پروژه و کار با فرم ها: رویای بدون کاغذ! Project Picking And Working With Forms: A Paperless Dream!

  • افکار در مورد انتخاب پروژه Thoughts On Project Selection

  • یادداشت کوتاه در Github Brief Note On Github

  • فایل های استاتیک: ثابت نگه دارید و یکپارچه شوید! Static Files: Hold Still And Get Integrated!

  • HTML - سفری به سال 1990 HTML - A Trip To The 1990th

  • فرود نقطه ای! ما یک صفحه فرود ایجاد می کنیم Spot Landing! We Create A Landing Page

  • آماده سازی HTML صفحات خانه های ییلاقی Preparing The HTML Of The Bungalow Pages

  • ایجاد و تنظیم یک صفحه HTML بررسی در دسترس بودن Create And Pimp An Availability Check HTML Page

  • make-reservation.html پاسخ ما به: "آیا رزرو دارید؟" make-reservation.html Is Our Answer To: "Do You Have A Reservation?"

کد-کابوم! جاوا اسکریپت و CSS وارد بازی می شوند Code-Kaboom! JavaScript And CSS Come Into Play

  • جاوا اسکریپت: دوست یا دشمن؟ JavaScript: Friend Or Foe?

  • بدون زحمت تاریخ ها را انتخاب کنید: اکنون یک بسته خرما JS وانیلی را بگیرید! Effortlessly Pick Dates: Grabbing A Vanilla JS Datepicker Package Now!

  • Notie By Nature: نمایش پیام های ساده Notie By Nature: Show Simple Messages

  • Sweetalert: زمان آب نبات! Sweetalert: Candy Time!

  • Sweetalert یک فروشگاه آب نبات است - ماژول جاوا اسکریپت خودمان Sweetalert Is A Candy Store - Our Own JavaScript Module

  • از دکمه خسته کننده تا سوپراستار: یک عملکرد جدید در JS Mod ما From Boring Button To Superstar: A New Functionality In Our JS Mod

  • CSS: از سال 1996 وب سایت ها را کمتر زشت کنیم CSS: Making Websites Less Ugly Since 1996

HTML را به قالب‌های GO، اعتبارسنجی سمت سرور و حتی هندلرهای بیشتر تبدیل کنید Turn HTML Into GO Templates, Server-Side Validation And Even More Handlers

  • مروری کوتاه بر آنچه در این بخش می گذرد Brief Overview What's Going On In This Section

  • از HTML به "Happily Ever After": تبدیل به الگوهای GO From HTML To "Happily Ever After": Conversion Into GO Templates

  • CSRF-Token – پیاده سازی CSRF-Token – Implementation

  • باز کردن قفل قدرت JSON در Golang: هندلری که داده ها را به JSON برمی گرداند Unlocking The Power Of JSON In Golang: A Handler That Returns Data In JSON

  • آماده سازی برای ارسال و پردازش درخواست های AJAX Preparations For Submitting And Processing AJAX Requests

  • از GET to POST: بیایید AJAX را که برخی از رفتارها را درخواست می کند آموزش دهیم! From GET To POST: Let'S Teach The AJAX Requests Some Manners!

  • Pimp Your Code: Refactoring آسان شد! Pimp Your Code: Refactoring Made Easy!

  • اعتبارسنجی سمت سرور - همه چیز چیست، چگونه و چرا! Server-Sided Validation - The What, The How And The Why Of It All!

  • اعتبارسنجی فرم سمت سرور پیاده سازی I - داده ها و خطاهای فیلد فرم Implementation Server-Side Form Validation I - Form Field Data & Errors

  • اعتبارسنجی فرم سمت سرور پیاده سازی II - مدل فرم ها و نمایش خطا Implementation Server-Side Form Validation II - Forms Model & Error Displaying

  • اعتبارسنجی فرم سمت سرور پیاده سازی III - فیلدهای بیشتر و تابع مورد نیاز Implementation Server-Side Form Validation III - More Fields & A Required Func

  • اعتبار سنجی فرم سمت سرور پیاده سازی IV - اعتبار سنجی و اعتبار سنجی بیشتر Implementation Server-Side Form Validation IV - More Validators & govalidator

  • نمایش یک نمای کلی از داده های رزرو (با استفاده از Sessions) Display Of An Overview Of The Reservation Data (By Using Sessions)

  • بازخورد سریع: هشدارهای خروجی به عنوان بازخورد به کاربر از طریق اطلاعیه Fast Feedback: Output Alerts As Feedback To The User Via notie

  • موتور الگوی جایگزین: از قدرت موتور جت استفاده کنید Alternative Template Engine: Use The Power Of A Jet Engine

قرار دادن کد خود در آزمون: چگونه تست های نوشتن می توانند روز (یا روزها) را نجات دهند! Putting Your Code To The Test: How Writing Tests Can Save The Day (Or Days!)

  • تست در GO: چرا و چرا Testing In GO: The Why And Wherefore

  • موفقیت در تست: تسلط بر تست ها برای بسته اصلی برنامه وب ما Testing Success: Mastering Tests For Package Main Of Our Web Application

  • تست‌های هندلر I - آغاز: راه‌اندازی اولیه/دسترسی به کنترل‌کننده‌های درخواست GET Handlers Tests I - The Beginning: Initial Setup/Handling GET-Request Handlers

  • Handlers Tests II - ادامه: Handling Post Request Handlers Handlers Tests II - Continued: Handling Post Request Handlers

  • Render Tests I - ایجاد یک محیط آزمایشی و تابع Testadddefaultdata() Render Tests I - Creating A Test Environment And Function Testadddefaultdata()

  • Render Tests II - ایجاد تست برای تابع Testrendertemplate() و بقیه Render Tests II - Creating Tests For Function Testrendertemplate() And The Rest

  • پوشش گردانندگان بسته و تست های رندر بسته Coverage Of Package Handlers And Package Render Tests

  • تمرین عملی: یک تست پایه برای "فرم‌های" بسته بنویسید Hands-On Exercise: Write A Basic Test For Package "forms"

  • یک راه حل: [حل شده] آزمایش برای «فرم‌های» بسته A Solution: [Solved] Testing For Package "forms"

  • نکات و نکات پایانی برای راه اندازی برنامه وب ما Final Notes And Tips For Starting Our Web Application

تلاش برای بهبود: مدیریت خطا Striving for Improvement: ErrorHandling

  • ادغام رسیدگی به خطا در بسته "کمک کنندگان" Consolidation Of Error Handling In A Package "helpers"

  • استفاده از ClientError و ServerError و به روز رسانی تست های مربوطه Use Of ClientError And ServerError And Updates Of The Relevant Tests

پایگاه داده I - مقدمه ای بر استفاده از پایگاه داده و SQL با PostgreSQL و DBeaver Database I - Introduction To Database Usage And SQL With PostgreSQL And DBeaver

  • مرور مختصر بخش و دانلود/نصب PostgreSQL و DBeaver Brief Section Overview And Download/Installation Of PostgreSQL And DBeaver

  • لینوکس: نصب PostgreSQL و DBeaver و ایجاد اتصال Linux: Installing PostgreSQL And DBeaver And Making A Connection

  • macOS: نصب PostgreSQL و DBeaver و ایجاد اتصال macOS: Installing PostgreSQL And DBeaver And Making A Connection

  • ویندوز: نصب PostgreSQL و DBeaver و ایجاد اتصال Windows: Installing PostgreSQL And DBeaver And Making A Connection

  • CRUD - حالا داره کثیف میشه! SQL-Statements In Action CRUD - Now It's Getting Dirty! SQL-Statements In Action

  • پرس و جوهای SQL برای کاربران پیشرفته - لزوماً پیچیده نیست، اما پیچیده است SQL Queries For Advanced Users - Not Necessarily Complicated, But Complex

پایگاه داده II - ایجاد و ساختار لازم پایگاه داده Database II - Creation and Necessary Structuring of the Database

  • ساختار پایگاه داده مجذوب: ایجاد نمودار رابطه موجودیت! Fascination Database Structure: Creation Of An Entity Relationship Diagram!

  • *پاپ* "نوشابه میخواهی؟" - نصب gobuffalo/pop به نام سودا! *pop* "Want A Soda?" - Installation Of gobuffalo/pop Called Soda!

  • مهاجرت I - ایجاد جدول "کاربران". Migrations I - Creation Of The "Users" Table

  • Migrations II - تولید انبوه: ایجاد همه جداول دیگر Migrations II - Mass Production: Creation Of All Other Tables

  • مهاجرت III - ایجاد یک کلید خارجی برای جدول "رزروها". Migrations III - Creation Of A Foreign Key For The "Reservations" Table

  • مهاجرت چهارم - ادامه دارد ... کلیدهای خارجی باقی مانده Migrations IV - To Be Continued ... The Remaining Foreign Keys

  • تمرین دستی: کلید خارجی گمشده را به "bungalow_restrictions" اضافه کنید Hands-On Exercise: Add The Missing Foreign Key To "bungalow_restrictions"

  • یک راه حل: [حل شده] کلید خارجی گمشده برای "bungalow_restrictions" A Solution: [SOLVED] The Missing Foreign Key For "bungalow_restrictions"

  • Migrations V - Nitro Injection: Index برای "کاربران" و "bungalow_restrictions" Migrations V - Nitro Injection: Index For "users" And "bungalow_restrictions"

  • تمرین دستی: شاخص های مفید را به جدول "رزروها" اضافه کنید Hands-On Exercise: Add Useful Indexes To The "reservations" Table

  • یک راه حل: [حل شده] شاخص های مفید برای جدول "رزروها". A Solution: [SOLVED] Useful Indexes For The "reservations" Table

  • مهاجرت ششم - "نیش" برای مرحله توسعه پایگاه داده Migrations VI - "The Sting" For The Development Phase Of The Database

پایگاه داده III - اتصال پایگاه داده PostgreSQL به برنامه وب Database III - Connection of the PostgreSQL Database to the Web Application

  • مثال: نحوه اتصال یک برنامه به یک پایگاه داده در GO Example: How To Connect An Application To A Database In GO

  • اتصال PostgreSQL: درست مانند گلف! بدون راننده در صورت نیاز فوری به یک راننده! PostgreSQL Connection: Just like Golf! No Driver When You Need One Urgently!

  • کار یکپارچه سازی: درج اتصال درایور/پایگاه داده (الگوی مخزن) Integration Work: Inserting the Driver/Database Connection (Repository Pattern)

  • زمان آسان: ایجاد مدل های لازم An Easy Time: Creation Of The Necessary Models

  • پاک کردن کد شما: تعمیر و نگهداری منظم و یک تغییر کوچک برای پروژه شما Cleaning up Your Code: Regular Maintenance and a Tiny Makeover For Your Project

  • آن را پیچیده نکنید - اما اگر دوست دارید می توانید: نقشه برداری شی - رابطه ای Don't Make It Complicated - But You Can If You Like: Object-Relational Mapping

  • مشکل دوگانه: ایجاد رزرو و ذخیره سازی در پایگاه داده Double Trouble: Reservation Creation And Storage In The Database

  • Poking With A Stick: تست عملکردی کوتاه تابع رزرو Poking With A Stick: Short Functional Test Of The Reservation Function

  • یک قدم کوچک برای انسان ... ورود به پایگاه داده در خانه ییلاقی محدودیت ها One Small Step For Man... Database Entry In BungalowRestrictions

  • بررسی در دسترس بودن: در دسترس بودن را برای یک محدوده تاریخی خاص در هر خانه ییلاقی بررسی کنید Availability Check: Check Availability For A Specific Date Range Per Bungalow

  • بررسی در دسترس بودن: در دسترس بودن برای یک محدوده تاریخی خاص برای همه خانه‌های ییلاقی Availability Check: Availability For A Specific Date Range For All Bungalows

  • پیوندهای ظریف: ایجاد ارتباط بین عملکردهای پایگاه داده و هندلرها Delicate Ties: Creating Connections Between Database Functions And Handlers

  • چی میتونه باشه؟ اتصال در دسترس بودن را به صفحه رزرو بررسی کنید What Can It Be? Connection Of The Availability Check To The Reservation Page

  • ماموریت انجام شد: ما با موفقیت رزرو کردیم! Mission Accomplished: We Sucessfully Make A Reservation!

  • عواقب: نهایی کردن صفحه مرور کلی، محدود کردن انتخاب تاریخ، اشکال زدایی Aftermath: Finalize Overview Page, Restrict Date Selection, Debugging

  • مهاجرت VII - جلوگیری از "اسب زدن به اطراف" با ورودی های پایگاه داده Migrations VII - Preventing "Horsing Around" With Database Entries

  • جاوا اسکریپت در یک تاریخ با JSON: بررسی در دسترس بودن و کنترل کننده پردازش JSON JavaScript On A Date With JSON: Availability Check And A JSON-Processing Handler

  • نمایش نتیجه درخواست در دسترس بودن خانه ییلاقی به کاربر Displaying the Result Of The Bungalow Availability Query To The User

  • ایجاد جلسه: رابطی بین بررسی در دسترس بودن و رزرو Session Creation: A Connector Between Availability Check And Reservation

  • انتقال داده: جاوا اسکریپت را در قالب ها کپی کنید، ایده ای برای انتزاع کد Data transfer: Copy JavaScript Into Templates, Idea For Code Abstraction

بررسی: به‌روزرسانی تست‌ها برای تناسب و سالم نگه داشتن کد شما Checkup: Updating Tests To Keep Your Code Fit And Healthy

  • پایگاه داده ای برای تنظیم تست شما وجود ندارد؟ جعلی! No Database For Your Test Setup? Fake One!

  • تعمیر تست ها برای گردانندگان - رزرو در جلسات به عنوان زمینه Repairing The Tests For The Handlers - Reservation In Sessions As Context

  • بهبود پوشش تست و موارد آزمایشی متعدد برای کنترل کنندگان درخواست GET Improving Test Coverage And Multiple Test Cases For GET-Request Handlers

  • نمونه ای از نحوه نوشتن تست برای کنترل کننده های درخواست POST An Example How To Write Tests For POST-Request Handlers

  • مورد ویژه: تست POST Request Handler ReservationJSON Special Case: Testing POST Request Handler ReservationJSON

  • در صورت تمایل، نگاهی کوتاه به بقیه تست‌های POST-Request Handlers Brief Look At The Rest Of The POST-Request Handlers Tests if you please

  • تبادل و تغییر نوع: reqBody PostedData Of Type url.Values ​​می شود{} Exchange and Type Change: reqBody Becomes postedData Of Type url.Values{}

  • هوستون، ما یک مشکل داریم! اشکال زدایی اضطراری در حال پرواز! Houston, We Have A Problem! Emergency Debugging On The Fly!

پستچی همیشه دوبار زنگ می زند: ادغام ایمیل در برنامه وب The Postman Always Rings Twice: Integration Of E-Mail Into The Web Application

  • آن دوباره چه بود؟ نحوه کار ایمیل و پروتکل SMTP... What Was That Again? How E-Mail And The SMTP Protocol Work...

  • نصب MailHog برای اهداف آزمایشی: کل Hog را انجام دهید! MailHog Installation For Testing Purposes: Go The Whole Hog!

  • ارسال ایمیل با کتابخانه استاندارد - فقط به خاطر کامل بودن! Sending E-Mails With The Standard Library - Just For The Sake Of Completeness!

  • برو به ایمیل ساده: یک کانال گسترده برای ارسال ایمیل باز کنید Go Simple Mail: Open An Application-Wide Channel For Sending E-Mails

  • #MEGA - ایمیل را دوباره عالی کنید! - ایجاد و ارسال اعلان های ایمیل #MEGA - Make E-Mail Great Again! - Creating And Sending E-Mail Notifications

  • مطلع باشید: راه حلی برای ارسال ایمیل به اپراتور Stay Informed: A Solution To Send E-Mails To The Operator

  • ... بار دیگر با احساس: ایمیل های فرمت شده زیبا با پایه ... Once Again With Feeling: Beautifully Formatted E-Mails With Foundations

  • به روز رسانی تست ها - کمکی نمی کند، باید انجام شود! Updating The Tests - Doesn't Help, It's Got To Be Done!

ثابت کنید این شما هستید: هویت خود را تأیید کنید و به همه کالاها دسترسی پیدا کنید! Prove It's You: Authenticate Your Identity And Access All The Goods!

  • برنامه خود را بالا ببرید: یک صفحه ورود آسان بسازید! Elevate Your App: Craft an Easy Login Screen!

  • به سمت موفقیت حرکت کنید: ایجاد مسیر ورود و مدیریت Navigate To Success: Crafting A Login Route And Handler

  • باز کردن قفل امنیت: احراز هویت ساختمان و توابع DB Unlocking Security: Building Authentication And DB Functions

  • بعد از فرم: یک کنترل کننده ورود که ارائه می کند! After The Form: A Login Handler That Delivers!

  • شوخ‌تر شدن: پختن جادوی میان‌افزار! Getting Middle-witty: Cooking Up Some Middleware Magic!

  • جدول پایگاه داده برای عالی: ساخت کاربر با مهاجرت! Database Table For Awesome: Crafting A User With Migrations!

  • قرار دادن صفحه ورود به آزمون: موفقیت در انتظار است! Putting The Login Page To The Test: Success Awaits!

  • رونمایی از کاربران احراز هویت شده و سبک خروج از سیستم! Unveiling Authenticated Users And Log Out In Style!

  • برنامه خود را تقویت کنید: ایجاد یک منطقه مدیریت امن با میان افزار! Fortify Your App: Building A Secure Admin Zone With The Middleware!

  • پاک کردن کد شما: اقدامات پاکسازی کوچکتر - دوباره به سرعت عبور کنید! Cleaning up Your Code: Smaller Cleaning Actions - Sweep Through Again Quickly!

خانه، خانه شیرین: پشتیبان سفارشی برای نگهداری آسان با امنیت Home, Sweet Home: A Customized Backend For Easy Maintenance With Security

  • ایجاد یک داشبورد مدیریت به روش آماده - انتخاب یک الگو Creating An Admin Dashboard In A Ready-Made Way - Choosing A Template

  • مانند روی خط مونتاژ: ایجاد انبوه مسیرها، هندلرها و الگوها Like On An Assembly Line: Bulk Creation Of Routes, Handlers And Templates

  • نمایش همه رزروها: جایی که DB Records در میز شیک جای می گیرد Displaying All Reservations: Where DB Records Get A Seat At The Stylish Table

  • یک عید کپی و چسباندن: ایجاد یک لیست فقط با رزروهای جدید A Copy & Paste Orgy: Creating A List With Only New Reservations

  • میان‌آهنگ: اصلاح و رفع اشتباهات کوچک Interlude: Makeover And Iron Out Small Mistakes

  • نمایش یک رزرو واحد: آماده سازی برای بیشتر در آینده Displaying A Single Reservation: Preparation For More To Come

  • امکانات جدید: ایجاد توابع دسترسی به پایگاه داده New Possibilities: Creating the Database Access Functions

  • بسیار بتن: اجرای عملکرد ویرایش Very Concrete: Implementation Of The Editing Function

  • Shift Up A Gear: تغییر وضعیت رزرو Shift Up A Gear: Change The Status Of A Reservation

  • یک رزرو را حذف کنید: آیا این هنر است یا می تواند از بین برود؟ Delete a Reservation: Is This Art Or Can It GO Away?

  • تقویم رزرو I: عنوان و پیمایش Reservation Calendar I: Heading and Navigation

  • تقویم رزرو II: خانه های ییلاقی، روزها و چک باکس ها Reservation Calendar II: Bungalows, Days and Checkboxes

  • تقویم رزرو III: رزروها و روزهای مسدود Reservation Calendar III: Reservations and Blocked Days

  • تقویم رزرو IV: رندر که! نمایش تقویم! Reservation Calendar IV: Render That! Display The Calendar!

  • پردازش رزرو I: ارسال درخواست، مسیر و مدیریت Reservation Processing I: Post Request, Route, And Handler

  • پردازش رزرو II: بازگشت صحیح پس از پردازش Reservation Processing II: Correct Return After Processing

  • Reservation Editing III: Handlers to Perform Actions Reservation Editing III: Handlers To Perform Actions

  • Reservation Processing IV: Database Functions For Actions Reservation Processing IV: Database Functions For Actions

  • Quo Vadis؟ تصحیح تغییر مسیرها پس از ویرایش Quo Vadis? Correction Of Redirects After Editing

  • اجرای مجدد تست های هندلر و چند تست Making The Handler Tests Run Again And A Few Tests

پخش زنده: استقرار برنامه وب خود در یک سرور در اینترنت! Going Live: Deploying Your Web Application To A Server On The Internet!

  • برنامه وب خود را به صورت انعطاف پذیر راه اندازی کنید: از پرچم های خط فرمان استفاده کنید Launch Your Web Application Flexibly: Use Command Line Flags

  • نکته در مورد استفاده از فایل‌های env برای برنامه وب شما Note On Using .env Files For Your Web Application

  • ویرایشگرهای متن Nano و Vi/Vim: نکات عملیاتی کوتاه Text Editors Nano And Vi/Vim: Short Operating Remarks

  • سرور را دریافت کنید و نرم افزار مورد نیاز سمت سرور را راه اندازی کنید Get Server And Set Up The Necessary Server-Side Software

  • برنامه Go و دریافت وب را روی سرور نصب کنید Install Go And Get The Web Application On The Server

  • هیچ عامل انتقال نامه (MTA) موجود نیست؟ تا انجامش نداده ای اعتباری ندارد! No Mail Transfer Agent (MTA) Available? Fake It Till You Make It!

  • سرپرست - زمانی که شما دور هستید، شخصی باید تماشا کند Supervisor - Someone Has To Watch While You're Away

  • لوگو، محتوای پاورقی: آخرین لمس قبل از اینکه پرده بلند شود! Logo, Footer Content: Final Touches Before The Curtain Rises!

خداحافظی و چگونه می تواند از اینجا ادامه یابد (و فضایی برای رفع اشکالات) Farewell & How It Could Go On From Here (And Room For Bugfixes)

  • خداحافظ و چگونه می تواند با برنامه وب شما ادامه یابد Goodbye And How It Could Go On With Your Web Application

نمایش نظرات

GO (golang): برنامه های کاربردی وب مدرن، سریع و ایمن را توسعه دهید
جزییات دوره
50.5 hours
177
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,882
4.7 از 5
دارد
دارد
دارد
Jens Schendel
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Jens Schendel Jens Schendel

jens schendel — شهروند، محقق، سرکار

CLA CLE – برنامه نویس دارای مدرک زبان C در سطح ورودی برنامه نویس

Harvard/edX CS50x مقدمه ای بر علوم کامپیوتر

LPIC-2 1 لینوکس مهندس ادمین

CBSA CBBF - معمار راه حل بلاک چین دارای گواهینامه BTA مبانی کسب و کار بلاک چین

CompTIA Linux+


تاریخچه دیجیتال:

Atari 2600، Commodore VIC-20، Commodore C64، Dragon 32، Dragon 64، Apple II، Amiga، x286، x386، x486، Pentium، Pentium II-4، Apple Mac G3، G4، G5، MacMini ، MacBook، RasPi، ایستگاه های کاری از i3-i7 و همه مکان هایی که می توانید پوسته را در آنها باز کنید! :-)