
آموزش شروع به کار با NET Standard.
آموزش شروع به کار با NET Standard. یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی برنامه نویسی با NET Standard. است که با نام اصلی NET Standard: Getting Started. از شرکت Pluralsight منتشر شده است.
پلتفرم Net Standard. چیست؟ تفاوت آن با Net Core. و Portable Class Library در چیست؟
پلتفرم Net Standard. یک مشخصه است که تعیین می کند Library های کلاس Base از سیستم عامل های مختلف Net. باید برای یکپارچه سازی Library های کلاس Base های مختلف Net. پیاده سازی کنند.

در این پلتفرم به معنای کامل Net Framework. و Net Core Xamarin. است.پلتفرم Net Standard. همچنین امکان اشتراک گذاری کد بین برنامه هایی که در سیستم عامل های مختلف اجرا می شوند را می دهد.
آیا Net Standard. به خودی خود یکFramework است؟
خیر Net Standard. به خودی خود یک فریم ورک و یا پلتفرم نیست. در واقع Net Standard. برنامه پیاده سازی یا runtime ندارد، فقط مشخص می کند که سیستم عامل های مختلف Net. برای پیاده سازی Net Standard. چگونه باید اجرا شود. برای مثال، Net Core. یک Framework بصورت runtime است که Net Standard. را پیاده سازی می کند. به عبارت دیگر Net Standard.

مجموعه ای از API ها را تعریف می کند که سیستم عامل ها باید برای مطابقت با Net Standard. پیاده سازی کنند. با اجرای این مشخصات، Library های base class سیستم عامل های مختلف یکپارچه می شوند که در غیر این صورت به صورت جداگانه در حال تکامل هستند هر چند بسیاری از توابع Library مشترک هستند. از سوی دیگر، این بدان معناست که توسعه دهندگان برای یادگیری پلتفرم های مختلف نیازی به یادگیری Library های مختلف از base class ندارند.
چرا به Net Standard. نیاز داریم؟
هنگامی که Net Framework. منتشر شد، به عنوان یک پلتفرم عمومی توسعه اپلیکشن برای محیط های دسکتاپ و سرور ویندوز استفاده می شد. سپس نسخه جدیدی از Net Framework. به نام NET. Compact framework برای سیستم عامل های تلفن همراه معرفی شد. به طور مشابه، معرفی Silverlight و سیستم عامل های برنامه های ویندوز 8 نسخه های Net Framework. و runtime مخصوص خود را اضافه کردند. بنابراین نسخه های زیادی برای NET. Platforms با base class library های مشابه وجود داشت که به طور جداگانه تکامل یافته و توسط تیم های جداگانه ای در مایکروسافت ارائه شد. برای توسعه دهندگان، به اشتراک گذاشتن library code یا component با این پلتفرم ها نیاز به ساخت و پیاده سازی مجدد برای پلتفرم خاص دارد. هر چند که آنها ویژگی یکسانی را ارائه می کردند. برای حل این مشکل، روش جدیدی برای گردآوری Library ها معرفی شد که Portable Class Library نامیده می شود.
NET Standard چیست و چه نقشی در توسعه نرمافزارهای دات نت دارد؟
NET Standard. مشخص میکند که کتابخانههای کلاس در محیطهای مختلف .NET از چه مجموعهای از APIها پشتیبانی کنند. این استاندارد به توسعهدهندگان کمک میکند کتابخانههایی بسازند که قابلیت استفاده در چند پلتفرم سازگار را داشته باشند، بدون اینکه لازم باشد منطق مشترک برنامه را برای هر محیط از ابتدا پیادهسازی کنند. در نتیجه، میتوان بخشهای مشترک نرمافزار را در قالب یک Library مستقل سازماندهی کرد و آن را در پروژههای مختلف به کار برد.
در توسعه نرمافزارهای چندپلتفرمی، انتخاب یک روش مناسب برای اشتراکگذاری کد اهمیت زیادی دارد. NET Standard. با مشخص کردن APIهای مشترک، امکان طراحی کتابخانههایی را فراهم میکند که در محیطهای پشتیبانیشده قابل استفاده باشند. البته سازگاری یک کتابخانه به نسخه انتخابشده NET Standard. و پلتفرم مقصد بستگی دارد. شناخت این رابطه به برنامهنویسان کمک میکند ساختار پروژههای خود را بهتر طراحی کنند و هنگام استفاده مجدد از کد، با محدودیتهای کمتری روبهرو شوند.
تفاوت NET Standard. با NET Framework. و NET Core. چیست؟
NET Framework. و NET Core. از فناوریهای مختلف خانواده .NET هستند که هرکدام محیط اجرایی و قابلیتهای مشخصی دارند. در مقابل، NET Standard. یک مشخصه برای تعریف مجموعهای از APIهای مشترک بود، نه یک Runtime مستقل. این تفاوت باعث میشود هنگام طراحی Library، بهجای تمرکز صرف بر محیط اجرای برنامه، سازگاری APIهای مورد استفاده با پلتفرمهای مقصد نیز بررسی شود. این موضوع بهویژه برای پروژههایی که از چند فناوری دات نت استفاده میکنند، اهمیت دارد.
شناخت تفاوت این فناوریها به انتخاب ساختار مناسب پروژه کمک میکند. برای مثال، اگر قرار باشد یک کتابخانه در چند پروژه مبتنی بر دات نت استفاده شود، باید بررسی کرد که نسخه مورد نظر NET Standard. با تمام محیطهای هدف سازگار باشد. همچنین ممکن است یک کتابخانه قدیمی NET Framework. از APIهایی استفاده کند که در NET Standard. وجود ندارند. در چنین شرایطی، بررسی وابستگیها و انتقال تدریجی کد میتواند مسیر مهاجرت را روشنتر کند.
چگونه یک Library مشترک در پروژههای دات نت بسازیم؟
یکی از کاربردهای NET Standard. ایجاد کتابخانههایی است که منطق مشترک برنامه را از بخشهای وابسته به پلتفرم جدا میکنند. برای نمونه، کلاسهای مربوط به اعتبارسنجی دادهها، محاسبات یا مدیریت مدلهای مشترک میتوانند در یک Library قرار بگیرند و چند برنامه از آنها استفاده کنند. این روش به کاهش تکرار کد کمک میکند و تغییرات آینده را سادهتر میسازد. البته کلاسهای وابسته به APIهای اختصاصی یک پلتفرم باید با دقت از بخش مشترک جدا شوند.
هنگام ایجاد Library، انتخاب نسخه مناسب NET Standard. یکی از تصمیمهای اصلی است. نسخه انتخابشده باید هم APIهای مورد نیاز کتابخانه را پوشش دهد و هم با پلتفرمهایی که قرار است از آن استفاده کنند سازگار باشد. در برخی پروژهها نیز ممکن است لازم باشد به کتابخانههای موجود در NET Framework. ارجاع داده شود یا کد قدیمی به ساختار جدید انتقال پیدا کند. بررسی این وابستگیها پیش از مهاجرت، از بروز مشکلات سازگاری در زمان Build و اجرا جلوگیری میکند.
ساخت و انتشار NuGet Package برای استفاده مجدد از کد
NuGet سیستم مدیریت بسته در اکوسیستم .NET است که توزیع و استفاده مجدد از کتابخانهها را آسان میکند. با بستهبندی یک Library در قالب NuGet Package، میتوان آن را بهعنوان یک وابستگی در پروژههای دیگر اضافه کرد، بدون اینکه لازم باشد تمام فایلهای منبع کتابخانه مستقیماً در هر پروژه کپی شوند. این روش بهخصوص برای کتابخانههای مشترک سازمانی یا ابزارهایی که در چند برنامه استفاده میشوند، کاربرد دارد و مدیریت نسخههای مختلف آنها را سادهتر میکند.
برای انتشار یک بسته مناسب، باید ساختار پروژه، نسخه هدف و وابستگیهای کتابخانه بهدرستی تنظیم شوند. همچنین در کتابخانههایی که برای چند پلتفرم ساخته میشوند، توجه به Multi-targeting میتواند امکان ارائه پیادهسازیهای متفاوت برای محیطهای مختلف را فراهم کند. در چنین حالتی، بخش مشترک کد حفظ میشود و قسمتهایی که به قابلیتهای اختصاصی یک پلتفرم نیاز دارند، جداگانه مدیریت میشوند. این رویکرد به توسعهدهندگان کمک میکند کتابخانههای قابل استفاده مجدد و سازگارتر طراحی کنند.
سرفصل مطالب آموزش ویدئویی شروع به کار با NET Standard.
فصل اول: مقدمه این دوره آموزشی
- مقدمه
فصل دوم: ایجاد کردن کتابخانه NET Standard.
- مقدمه
- بررسی NET. Core و Net Framework. و Xamarin
- NET Standard. چیست؟
- بررسی اپلیکیشن Wired Brain Coffee
- ایجاد کردن یک Class Library در NET. Core
- ایجاد و استفاده از یک NET Standard. Library
- مقایسه Portable Class Library ها و NET Standard.
- بررسی طرح کلی دوره
فصل سوم: انتخاب کردن نسخه مناسب Library
- مقدمه
- بررسی ورژنینگ در NET Standard.
- هدف قرار دادن یک نسخه از NET Standard. در پروژه
- بررسی اینکه یک پلتفرم دات نت کدام نسخه را پیاده سازی می کند
- مرور API های نسخه NET Standard.
- نگاهی به API های NET Standard. 2.0
- جمع بندی
فصل چهارم: بررسی نحوه عملگرد NET Standard.
- مقدمه
- بررسی نحوه ایجاد شدن Library
- بررسی اینکه کتابخانه شما در بستر NET. چگونه کار می کند
- بررسی NET. Core و NET Framework dll
- بررسی NET Standard. 2.0 و Net Framework. 4.6.1
- جمع بندی
فصل پنجم: رفرنس کردن Library های Net Framework. در NET Standard.
- مقدمه
- ذخیره کردن State مربوط به یک Coffee Machine شبیه سازی شده
- رفرنس کردن یک Net Framework. Library در NET Standard. 2.0
- بررسی عملکرد Net Framework. Compatibility Shim
- بررسی API هایی که بخشی از NET Standard. 2.0 نیستند
- تجزیه و تحلیل پروژه ها با the NET. Portability Analyzer
- جمع بندی
فصل ششم: انتقال Library های Net Framework. به NET Standard.
- مقدمه
- بررسی کردن سناریو های مناسب برای Migrate کردن
- انتقال Net Framework. Library به NET Standard.
- استفاده کردن از Package Reference برای Restore کردن NuGet Package ها
- جمع بندی
فصل هفتم: استفاده کردن از Platform Specific Code به همراه Multi-targeting
- مقدمه
- هدف قرار دادن چندیدن Framework در پروژه های Class Library
- برگرداندن کد مخصوص Net Framework.
- مقایسه Project Reference ها و Package Reference ها
- مقایسه کردن پکیج Windows.Compatibility
- جمع بندی
فصل هشتم: تولید کردن یک NuGet Package برای Storage Library
- مقدمه
- تولید کردن یک NuGet Package برای Storage Library
- رفرنس کردن یک Multi-targeted NuGet Package
- ایجاد یک NuGet Package برای Simulators Library
- جمع بندی دوره







