۶ ریپازیتوری گیتهاب برای DotNet دولوپر بهتری شدن
مدتی بود که این ریپازیتوریها رو نشان کرده بودم و هر از گاهی که وقت خالی داشتم یه نگاهی بهشون مینداختم و هربار یک چیز تازه یاد میگرفتم. به نظرم این لیست اینقدر خوب هست که باید اون رو یه پست کرد که با دیگران به اشتراک گذاشت.
این لیست رو سعی کردم به ترتیب اولویت آشنایی برای دولوپری که تازه شروع کرده مرتب کنم.
شماره یک: AspNetCore-Developer-Roadmap
با کمال افتخار این ریپو رو یکی از دولوپرهای ایرانی آقای «معین تاجیک» درست کردن و خیلی موفق شده و مخاطبهای زیادی گرفته.
من وقتی تازه شروع کرده بودم با اینکه دوستان کلی من رو از ابهام درآورده بودن اما هنوز ذهنم درگیر این بود که به چه ترتیبی باید توی یادگیری پیش برم. این Roadmap به شما در شناختن مسیر بسیار کمک میکنه.
شماره دو: clean-code-dotnet
با هر زبان برنامهنوسی که کد مینوسید بهتره با رسم و رسومش آشنا باشید، اینکه جامعهی اون زبان چطوری کد مینوسیه و بین خودشون چه قراردادهایی دارند.
به عنوان مثال:
نامگذاری بد!
int d;
نامگذاری خوب.
int daySinceModification;
و یا اینکه چرا باید در کدنویس از اصول SOLID یا DRY استفاده کنیم؟ این ریپو برای نوشتن کدهای تمیزتر به شما کمک میکنه.
شماره سه: design-patterns-explained-with-food
در طول سالها برنامهنویسها به اشکال و ساختارهایی از کد برخوردند که همیشه خودش رو تکرار میکنه، یک «الگو»ی تکرار شونده! بعد از اینکه این الگوها به اندازهی کافی خودشون رو تکرار کردند، GOF تصمیم گرفتند که تعدادی از اونها رو در یک کتاب عالی جمع کنند و این یک شروع بود که هنوز هم ادامه داره.
مثلن گاهی ما احتیاج داریم که یک شی رو که ساختنش برامون بسیار هزینهبر است رو بارها و بارها استفاده کنیم. برای اینکار بهتره از الگوی singleton استفاده کنیم.
این ریپو تمام الگوهای اولیه کتاب «Design Patterns» رو با مثال غذا! با سیشارپ پادهسازی کرده.
شماره چهار: C-Sharp-Algorithms
برای حل هر مسعلهی راههای مختلفی وجود داره، درسته که ما به جواب مورد نظر میرسیم اما همهی راهحلها از نظر هزینه و فایده برابر نیستند؛ از رنگ کردن اطاق خواب خودمون تا محاسبهی یک مسعلهی ریاضی.
در توسعهی نرمافزار ما نیازه که بدونیم که چه راهحلی برای ما هزینهی کمتری داره، یه الگوریتم خوب نسبت به کد قبلی اگه مصرف CPU رو مثلن ۳۰٪ کاهش بده به این معنیه که شما از ۱۰ عدد سروری که الان دارید میتونید ۳ عدد رو خاموش کنید! ولی این پول واقعیه.
این ریپو علاوه بر معرفی الگوریتمهای معروف، ساختار دادهها رو هم به شما معرفی میکنه، اونها رو به زبان سیشارپ پیادهسازی میکنه.
شماره پنج: technical-interview
بعد از اینکه حرکت به سمت یک داتنت دولوپر خوب شدن رو شروع کردیم از یک جایی به بعد دیگه باید به فکر استخدام شدن توی شرکتهای خوب باشیم!
اینجاست که متوجه میشیم که برای استخدام شدن کدنوسی و حتا کد خوب نوشتن کافی نیست. باید با تکنولوژیهای متفاوت مسلط بشیم و با خیلی تکنولوژیهای دیگه آشنا باشیم. ایکنه چطوری در تیم کار کنیم، اینکه چطوری برنامهریزی کنیم و ابزارهاش، اینکه چطوری سازماندهی کنیم و…
این ریپو که بچههای شرکت خوب «علیبابا» زحمتش رو کشیدن یه لیست و سرفصل از چیزهای مختلفی که بهتره در موردشون بدونید فراهم کرده. از اینجا میتونید سرنخ رو بگیرید.
شماره شش: awesome-dotnet-core
وقتی که توی پروژههای مختلف پیش میریم کم کم متوجه میشیم که خیلی از مساعلی که ما به دنبال حل کردنشون هستیم، قبلن برای دیگران هم پیش اومده و اونا تلاش کردن راهحلی براش درست کنن و میتونید از تلاشهای کامیونیتی استفاده کنید و خودتون هم در این کار جمعی شرکت کنید.
این ریپو لیست خوبی از تکنولوژیها، ابزارها، کتابخانههایی که میتونید در dotnet core استفاده کنید رو در اختیار شما میگذاره.
این همه چیز؟
حرف آخر اینکه، شاید به نظر بیاد چیزهای خیلی زیادی برای یادگیری هست و ترسناک باشه. اما ما لازیم نیست در همه چیز متخصص باشیم تا شروع کنیم. اینکه بدونیم برای مسعلهای راهکاری هست یعنی بیشتر مسیر رو رفتیم. اینکه ما بدونیم که نمیدونیم کافیه تا بریم به دنبال یادگیری چیزهای مورد نیازمون.
ایمان یعنی برداشتن اولین قدم حتا وقتی که نمیتوان تمام مسیر را دید.
مارتین لوترکینگ