راهنمای بروز بودن یک برنامه‌نویس NET. در سال 1398

همانطور که می‌دونید برنامه‌نویس‌ها برای اینکه توی صنعت نرم‌افزار حرفی برای گفتن داشته باشند همیشه باید خودشون رو بروز نگه دارند. گاهی این بروزرسانی شامل یادگیری ویژگی‌های نسخه‌ی جدید یک تکنولوژی و گاهی شامل یادگیری یک تکنولوژی جدیده. که این دومی سخت‌تر و پیچیده‌تر از یک بروزرسانی ساده است. خوشبختانه برای برنامه‌نویس‌های پلتفرم دات‌نت این کار ساده‌تر و راحت‌تر انجام می‌پذیره چون توی این سال‌ها مایکروسافت به صورت دائمی به توسعه ابزارهای برنامه‌نویسیش پرداخته. این روزها برنامه‌نویس‌ها با پلتفرم دات نت امکان برنامه‌نویسی مبتنی بر کانتینترها، مبتنی بر ابر و نوشتن نرم‌افزارهای cross platform رو دارند. حالا وقتش هست که با هم چندتا قدم برای بروز کردن خودمون توی سال 1398 رو مرور کنیم: اول: چندسالی هست که NET Core. معرفی شده، اگر هنوز باهاش آشنا نیستید وقتش شده که اولین برنامه‌تون را باهاش بنویسید و از مزایای فوق‌العاده‌اش از جمله Cross Platform بودنش استفاده کنید و لذت ببرید. خوبه که به عنوان یک برنامه‌نویس NET. بتونید تفاوت‌های NET Framework. و NET Core. با NET Standard. رو بدونید و با معماری‌های هر کدوم آشنا باشید. از ویژگی‌های جدید NET Core 3.0 هم غافل نشید.یک نگاهی هم به ویژگی‌های جدید NET Framework 4.8. بندازید و اگر چندوقتی هست که خودتون رو بروز نکردید بروزرسانی NET Framework. رو از نسخه 4.5 به بعد و #C رو از نسخه 7 به بعد دنبال کنید. هر کدوم از نسخه‌های سی شارپ 7، 7.1، 7.2 , .. ویژگی‌های خوب و فوق‌العاده‌ای رو به این زبان اضافه کردند. علاوه بر این‌ها یک نگاه عمیق‌تری هم به NET Standard. داشته باشید. پروژه‌های که برای این پلتفرم نوشته میشن علاوه برای NET Framework. با NET Core. و mono نیز سازگار هستند.دوم: اگر برنامه‌نویس client side هستید و با Windows Form، WPF و Xamarin کار میکنید حتما سراغ NET Core 3.0. برید. برای اولین توی این نسخه از NET. امکان برنامه‌نویسی client side با NET Core. فراهم شده. همچنین با زامارین امکان نوشتن برنامه‌هایی رو دارید که به صورت همزمان بر روی IOS، Android، Mac و .. امکان Publish دارند و کار می‌کنند.سوم: اگر برنامه‌نویس client side هستید و با web و یا smart client کار می‌کنید. باید به اطلاع برسونم که پشتیبانی از web assembly به دات نت اضافه شده و خوبه که یک نگاهی بهش بندازید. وب اسمبلی امکان استفاده از کدهای c و ++c رو توی مرورگر برای ما فراهم میکنه. هر چند که در حال حاضر جاوااسکریپت تقریبا تمام نیازهامون رو پوشش میده اما برای کارهای سریع‌تر مثل بازی‌ها، موتورهای فیزیک و .. جای خالی یک زبان سریعتر احساس می‌شد. همچنین امکان استفاده از Blazor که UI فریمورک wasm رو دارید.چهارم: اگر برنامه‌نویس سمت سرور هستید باید بدونید که کانتینترها این روزها ترند اصلی این حوزه هستند. امکان استفاده داکر، Kubernetes، آمازون AWS، مایکروسافت Azure و مابقی پلتفرم‌های ابری توی VS 2019 و NET. Core به خوبی فراهم شده. این روزها توسعه یک وب سایت بدون از استفاده از این ابزارها تقریبا دیگه بی معنیه.پنجم: علاوه بر اینکه یک برنامه‌نویس خوب باید تکنولوژی‌های روز رو بشناسه و به خوبی از اونها استفاده کنه باید مهارت‌های شناخت بازار و ارتباط خوب با مشتریان رو یاد بگیره. همچنین با متدولوژی‌های توسعه‌ی نرم‌افزار از جمله روش اسکرام باید آشنا باشه. در نهایت یادگیری DevOps رو فراموش نکنید که بدون استفاده از اون توسعه، نگهداری و بروزرسانی یک نرم‌افزار کار سخت و دشواری شده.ششم: چندوقتی هست که مایکروسافت ابزارهای AIاش در قالب کتابخانه ML.NET در اختیار برنامه‌نویس‌ها گذاشته. به تازگی نسخه ML.NET 1.0 انتشار پیدا کرده. با استفاده از این کتابخانه پروژه‌هایی رو به سادگی می‌تونید توسعه بدید که بدون اون باید مدت‌های زیادی وقت براش صرف می‌کردید.ترجمه‌ی آزاد از منبع همراه با تلخیص و تصرف.