متخصص Golang سون لرن
محتوای این دوره، شامل ویدئوها، فایلهای پیوست، پروژهها و یادداشتها، با هدف یادگیری سریعتر و مؤثرتر طراحی شدهاند. تمامی دوره های رایگان کده بهصورت رایگان و همچنین از طریق خرید اشتراکی در دسترس بوده و سعی شده همواره تمامی دوره ها بدون قفل و دارای آخرین آپدیت باشند. دوره ها فقط از سمت ربات تلگرامی رایگان کده قابل دانلود هستند.
متخصص Golang سون لرن
محتوای این دوره، شامل ویدئوها، فایلهای پیوست، پروژهها و یادداشتها، با هدف یادگیری سریعتر و مؤثرتر طراحی شدهاند. تمامی دوره های رایگان کده بهصورت رایگان و همچنین از طریق خرید اشتراکی در دسترس بوده و سعی شده همواره تمامی دوره ها بدون قفل و دارای آخرین آپدیت باشند.
این دوره تا آخرین پارت منتشر شده از سوی سازنده(Deploy پروژه روی سرور) قرار گرفته است!
این دوره بدون هیچ لایسنس و قفل نرمافزاری با فرمت MP4 قرار گرفته است!
گولنگ (Golang) یک زبان متن باز برای توسعه سریع و مقیاس بزرگ نرمافزار است که توسط گوگل ساخته و پشتیبانی میشود. از این زبان در موارد زیادی از جمله خدمات ابری و شبکه، هوش مصنوعی، توسعه وب و دواپس استفاده میشود که در شرکتهای ایرانی مهمترین مورد استفاده این زبان در حوزه توسعه وب است. گولنگ یکی از زبانهای محبوب بین تازه واردان به دنیای برنامهنویسی است و داشتن مزایایی چون سرعت بالا، پشتیبانی شدن توسط سیستمعاملهای مختلف و یادگیری ساده آن باعث شده یکی از گزینههای بسیاری از علاقمندان به این حوزه باشد.
درحال حاضر از این زبان برای توسعه نرمافزار در بسیاری از شرکتهای مطرح خارجی و ایرانی استفاده میشود. این زبان همچنین ابزارهای گستردهای نیز دارد بهعنوان مثال مخزن گیتهاب Go دارای پلاگینهای متنوعیست مانند ابزار Gotests که راه حلی برای تولید تستهای جدول محور ارائه میدهد.
- چرا Golang را یاد بگیریم؟
- آشنایی با گولنگ
- مقایسه گولنگ با زبانهای دیگر
- آشنایی با بازار کار گولنگ و فرصتهای شغلی
- معرفی ابزارهای موردنیاز
- نصب ابزارهای موردنیاز در محیط ویندوز
- نصب ابزارهای موردنیاز در محیط لینوکس
- آشنایی با ساختار پروژه
- آشنایی با Package
- آشنایی با Module
- پروژه Hello World!
- آشنایی با Go CLI
- آشنایی با حافظه
- آشنایی با Basic Datatype ها
- معرفی Composite Datatypeها قسمت اول
- معرفی Composite Datatypeها قسمت دوم
- تفاوت Value Type و Reference Type
- آشنایی با Const و Enum
- آشنایی با Pointer
- آشنایی با Rune
- انواع روشهای تعریف متغیر
- کار با Constants
- آشنایی با دامنه Variableها و Constant ها
- آشنایی با رشته و توابع کار با آن – قسمت اول
- آشنایی با رشته و توابع کار با آن – قسمت دوم
- کار با If و Else
- کار با Switch و Case
- کار با Fallthrough و Break در Switch + مثال عملی
- ایجاد همه انواع حلقهها با For
- کار با Break و Continue در For
- حل مسئله Maximum Number of Words Found in Sentences
- آشنایی با آرایهها (Array)
- آشنایی با توابع کار با آرایه
- آشنایی با Slice ها
- کار با Slice ها
- حل مسئله Two Sum با استفاده از Slice
- آشنایی با Map
- کار با Map
- حل مسئله Two Sum با استفاده از Map
- ساختار کلی توابع
- توابع با خروجی چندتایی
- آشنایی با Named return values
- کار با Variadic Functions
- کار با Anonymous functions
- کار با Closures
- آشنایی با Defer
- مینی پروژه رزرو اتاق هتل در محیط کنسول
- آشنایی با شی گرایی در مهندسی نرم افزار
- آشنایی با رویکرد متفاوت شی گرا در Go
- روشهای نمونه سازی Struct
- تعریف Method و تفاوت Method با Function
- Abstraction در Golang با طراحی مینی پروژه محاسبه حقوق
- آشنایی با Polymorphism در قالب مثال چاپ انواع بلیط
- آشنایی با Encapsulation
- Inheritance و آشنایی با Embedded Struct و Composition
- بهینه سازی مینی پروژه محاسبه حقوق با استفاده از Composition
- آشنایی با توابع Functional options pattern
- آشنایی با کاربرد Struct Tag ها
- آشنایی با Anonymous Structها و Anonymous Filed ها
- چرا از Interface استفاده میکنیم؟
- آشنایی با Interface در Go و مقایسه با زبانهای دیگر
- طراحی و پیاده سازی یک Interface ساده
- آشنایی با Embedded Interface
- آشنایی با Empty Interface
- مینی پروژه ارسال نوتیفیکیشن به کاربر در محیط کنسول
- آشنایی با مفهوم Module
- ایجاد پروژه و آشنایی با فایلهای go.mod ، go.sum و go.work
- ایجاد پروژه و آشنایی با فایلهای go.mod ، go.sum و go.work قسمت دوم
- ایجاد و پابلیش یک Module
- نگاهی به مفهوم Generic به همراه کاربردهای آن
- کار با Generic ها
- مینی پروژه پیاده سازی یک لیست Generic
- آشنایی با رویکرد مدیریت خطا در Golang
- کار با Errorsها و Custom Errors
- نحوه ایجاد و کار با Wrapping Error
- آشنایی و کار با Panic و Recover
- آشنایی با مفاهیم عمومی Logging
- نحوه ثبت رویدادها در log
- کار با Zerolog
- مینی پروژه افزودن Error و Logging به پروژه Notification
- مقدمات: آشنایی با Concurrency و Parallelism و تفاوتهای آنها
- آشنایی با Concurrency در Golang و مقایسه با سایر رویکردها
- آشنایی با Goroutine
- کار با WaitGroup
- کار با RWMutex ، Mutex و Atomic
- کار با Sync.Cond
- کار با Sync.Once
- کار با Sync.Pool
- معرفی و کار با Channel
- کار با Unbuffered Channels
- کار با Buffered Channels
- کار با Select در قالب یک پروژه کوچک
- آشنایی با ساختار JSON
- آشنایی با Marshal و Unmarshal و نکات کاربردی
- آشنایی با مفاهیم کلی پروتکل HTTP
- نحوه ایجاد HTTP Server
- آشنایی با Routing و کار با ServeMux
- کار با Request درخواستهای Web API
- کار با Response درخواستهای Web API
- کار با Context بخش اول – آشنایی، کاربرد، Cancellation
- کار با Context بخش دوم – (WithValue, Timeout, Deadline)
- آشنایی با تست و اهمیت آن
- چگونه تست بنویسیم؟
- نوشتن Benchmark
- توسعه به روش TDD
- مقدمه: معرفی پروژه، تکنولوژیها و ابزارهای استفاده شده
- آشنایی با فریمورکهای وب در Go
- آشنایی اولیه با Docker
- نصب و راه اندازی اولیه – کار با Image و Container
- ایجاد تغییرات روی Container و کار با DockerFile (Dockerize کردن پروژه و اجرای چند نسخه از آن )
- آشنایی با Networking کانتینرها – کار با Docker Compose
- تحلیل، شناسایی و طراحی موجودیتهای مورد نیاز و دیتابیس
- معرفی ساختار کلی و معماری پروژه
- راه اندازی ابزارهای مورد نیاز روی Docker
- راه اندازی و آشنایی اولیه با gin و نوشتن چند Endpoint ساده
- آشنایی با Environmentهای مختلف و مدیریت Environment variable ها
- Routing
- معرفی انواع Binding
- کار با انواع Binding ها
- آشنایی با Validation و پیاده سازی Custom Validation
- کار با Middleware ها
- راه اندازی Github Actions
- ساخت Base Response و نمایش خطا ها
- پیاده سازی ارتباط با Redis
- پیاده سازی ارتباط با Postgres
- پیاده سازی Swagger
- طراحی Logging Interface
- پیاده سازی Zap
- پیاده سازی Zerolog
- راه اندازی Elasticsearch ،Filebeat و Kibana روی Docker
- افزودن Logger Middleware و کار با Kibana
- ساخت Base Model ها
- جداول مدیریت کاربران
- نحوه ساخت OTP
- نحوه ساخت OTP (ادامه)
- اعمال محدودیت روی OTP بر اساس IP
- کار با JWT
- ثبت نام کاربر
- Authentication
- Authorization
- سرویس پایه مدیریت اطلاعات کشور ها
- نوشتن یک سرویس Generic با قابلیت CRUD
- افزودن قابلیت Dynamic Filter به سرویس Generic – قسمت ۱
- افزودن قابلیت Dynamic Filter به سرویس Generic – قسمت ۲
- افزودن قابلیت Dynamic Filter به سرویس Generic – قسمت ۳
- افزودن قابلیت Dynamic Filter به سرویس Generic – قسمت ۴
- طراحی ساختار مدل ها
- سرویس مدیریت اطلاعات شهر ها
- سرویس مدیریت و ذخیره سازی فایل ها
- یکپارچه سازی Handlerها و Result Code ها
- سرویس دسته بندی و تعریف ویژگیهای خودرو بصورت پویا
- سرویس اطلاعات پایه مرتبط با خودرو (Gearbox, Car type, Company)
- سرویس ثبت و ویرایش اطلاعات خودرو
- سرویس مدیریت اطلاعات رنگ بندیهای مختلف خودرو
- سرویس مدیریت اطلاعات سال تولید
- سرویس قیمتگذاری و تاریخچه قیمتها در سالهای مختلف
- سرویس گالری تصاویر خودرو
- سرویس مدیریت ویژگیهای خودرو
- سرویس مدیریت کامنتهای محصولات
- راه اندازی Prometheus, Grafana, Node exporter و Alert manager
- کار با متریکهای Prometheus در پروژه
- آشنایی و کار با Prometheus
- طراحی داشبورد روی Grafana
- Deploy پروژه به کمک داکر
- Deploy پروژه روی سرور
- این دوره مناسب چه کسانی است؟
- افرادی که به دنبال یادگیری یک زبان برنامهنویسی جدید و قدرتمند برای توسعه نرمافزار هستند.
- کسانی که به دنبال پردازش دادههای بزرگ و توسعه الگوریتمهای کارآمد دادهپردازی هستند.
- این دوره مناسب چه کسانی نیست؟
- کسانی که هنوز با مفاهیم پایهای برنامهنویسی آشنا نیستند و نیاز به یادگیری زبانهای پایهتر مانند Python یا JavaScript دارند.
خیر، این دوره صفر تا صد بوده و به شما از پایه و به صورت تخصصی آموزش داده میشود.
بله، این دوره با تمام متد های برنامه نویسی دنیا هماهنگ است . تا بهترین و کامل ترین آموزش را به شما عزیزان ارائه دهیم.