نقشه راه فراگیری زبان Go در سال 2021
در زیر مسیر راه فراگیری زبان Golang و ابزارها و کتابخانه های مفید برای توسعه نرم افزار بر مبنای این زبان برای شما گرد آوری شده است. من این نقشه راه را برای تمام کانی که از من می پرسند "برای اینکه توسعه دهنده Golang شوم باید چکار کنم؟" آماده کرده ام
简体中文版 繁體中文版 日本語版 Versão em Português do Brasil 한국어 Русский Українська
فارسی
هدف از ساخت این نقشه راه نشان دادن یک دورنما از ابزارهای توسعه در Golang است. اگر در مورد چیزهایی که باید یاد بگیرید دچار تردید شده اید این نقشه راه به شما کمک می کند. البته اصلا شما را تشویق به استفاده از ابزار خاصی نمیکند. شما خودتان باید درک این را داشته باشید هر ابزاری در چه مواردی از بقیه ابزار ها برتری دارد که برای توسعه نرم افزار خود، متناسب با نیازتان از کدام ابزار استفاده کنید. همیشه ابزار هایی که ترند میشوند لزوما بهترین انتخاب نیستند!
اگر از این نقشه راه خوشتان آمد یا از آن برای یافتن راه حلی برای توسعه نرم افزار هایتان استفاده م کنید، لطفا به این پروژه ستاره بدهید. متشکرم!
پیش نیازها
مهارت های عمومی توسعه نرم افزار
- فراگیری GIT، ساخت تعدای ریپازیتوری در گیت هاب و به اشتراک گذاری کدهایتان با دیگران
- آشنایی با پروتکل Http(s) و انواع درخواست های آن(GET, POST, PUT, PATCH, DELETE, OPTIONS)
- از استفاده از گوگل نترسید، میتوانیداز اینجا مهارت های جستجو قدرتمند رد گوگل را فرا بگیرید
- تعدادی کتاب در باره طراحی الگوریتم و شاختما داده ها بخوانید
- درباره مبانی پیاده سازی احراز هویت مطالبه کنید
- با مفاهیم توسعه نرم افزار بر مبنای SOLID و معماری های توسعه نرم افزار آشنا باشید
- مبانی و انواع روش های تست نرم افزار را بدانید (unit, integration, e2e)
ابزار های CLI
چارچوب های توسعه وب سایت و مسیریاب ها
پایگاه های داده
- پایگاه داده های رابطه ای
- پایگاه داده های ابری
- موتورهای جستجو
- پایگاه داده های غیر رابطه ای
نگاشت داده به رابطه(ORM)
(caching)حافظه نهان
- GCache
- حافظه نهان توزیع شده
Logging
ارتباط بی درنگ
ابزارهای توسعه API
دانستن موارد زیر نیز خوب است
Testing
زمان بندی وظایف
معماری مایکروسرویس
- Message-Broker
- ساخت message-driven ها
- چارپوب های توسعه
- RPC
اگر فکر میکنید که میتوانید این نقشه راه را بهبود بدهید، لطفا تغییرات خود را در قالب یک PR و ثبت یک issue برای ما ارسال کنید. من همواره در تلاش برای بهبود این پروژه هستم، پس میتوانید برا ستاره دادن به این پروژه از تغییرات آیند ه آن باخبر شوید.
ایده گرفته شده از: نقشه راه توسعه دهنده گان ASP.NET Core
این نقشه راه با استفاده از Draw.io ساخته شده است. شما می تواندی با استفاده از فایل golang-developer-roadmap.xml
تغییرات خود را در این پروژه اعمال کنید. برای اعمال تغییرات خود در فایل، پس از ورود به سایت، با کلیک بر روی گزینه Open Existing Diagram فایل xml
این پروژه را انتخاب کرده و تغییرات را روی آن انجام دهید. شما مختارید هر تغییری را در آن اعمال کنید. بعد از ثبت تغییرات خود، آردس فایل جدید را در ReadMe بروزرسانی کنید و فایل را به همره ReadMe جدید در قالب یک PR برای ما ارسال کنید فراموش نکنید که فایل جدید را در قالب png و با بزرگ نمایی 400% ذخیره کنید. سپس با استفاده از سایت Compressor.io آن را فشرده کنید.
- یک درخواست PR بر منبای تغییرات بهبود یافته تان ایجاد کنید
- درباره ایده هایتان در issue بحث کنید
- ایده هایتان را گسترش بدهید