کتابخانه Net. استاندارد

در این مقاله می آموزیم که چگونه کدهای نوشته شده در یک پلتفرم /محیط برنامه نویسی را بدون هیچ مشکلی و به آسانی با سایر پلتفرم ها به اشتراک بگذاریم.

کتابخانه Net. استاندارد

در ابتدا برروی کتابخانه کلاس قابل حمل(PCL) تمرکز می کنیم سپس  .Net Standardرا جایگزین آن می کنیم.

کتابخانه کلاس قابل حمل (PCL)

PCL همه چیز در مورد به اشتراک گذاری کد در سراسر پلت فرم های مختلف را هدف قرار داده است. هدف اصلی آن این است که دوباره با استفاده از کد در انواع مختلفی از برنامه های دات نت در پلت فرم ها استفاده کنند.

 بیایید یک برنامه دات نت جدید با رفرنس کتابخانه کلاس معمولی ایجاد کنیم ببینیم کار می کند یا نه.

ابتدا ویژوال استودیو2015 را باز کرده و از منوی file, new و سپس project را انتخاب می کنیم.از منوی سمت چپ .net core و از وسط صفحه ASP.NET Core Web Application را انتخاب می کنیم.

مانند تصویر زیر , ASP.NET Core را انتخاب می کنیم.

یک پروژه دیگری از نوع class library را ایجاد می کنیم.

توجه کنید که ما دات نت فریم ورک 4.6.1 را انتخاب می کنیم.

در اینجا با یک هشدار مواجه شدیم که برای رفع آن به رفرنس آن در برنامه ASP.NET Core مراجعه می کنیم.

دات نت فریم ورک 4.6.1 توسط  هسته نرم افزار نسخه 1.0 پشتیبانی نشده است ,ما به چه صورت می توانیم این مشکل را حل کنیم.

حالا یک class library دیگری ایجاد می کنیم که با پلت فرم خاص قابل حمل است.

پیکربندی گزینه های مورد نظر

دات نت فریم ورک 4.6 از مجمو عه ای از برنامه های کاربردی قابل حمل به عنوان دات نت فریم ورک 4.5پشتیبانی میکند بنابراین از آن به طور خودکار به دات نت فریم ورک 4.5 خواهد رفت.

به خواص  کتابخانه کلاس قابل حمل بروید در آنجا .Net Framework 4.5, ASP.NET Core 1.0, Windows 8 را خواهید دید .

مرجع آن برنامهNet Core. است.

با توجه به نمودار زیر، ما در حال حاضر سه کتابخانه مختلف کلاس پایه (BCL) که محیط های خاص را هدف قرارداده اند را داریم.

مشکل اینجاست که نوشتن کد برای پلت فرم های متعدد دات نت سخت است .به  شکل رابط های برنامه کاربردی بر روی پلت فرم های مختلف  پشتیبانی می شود سخت است.

 اکر  یک کتابخانه کلاس یکپارچه داشته باشیم چه  اتفاقی می افتد؟

در اینجا  دات نت پلت فرم استاندارد به عنوان کتابخانه کلاس یکپارچه  که در تمام سیستم عامل های دات نت اجرا می شود را ایجاد می کند.

.NET Standard

قبلا به نام پلت فرم های دات نت ,استانداردهایی وجود داشت  که مجموعه ای از برنامه های کاربردی  هستند که در تمام زمان های دات نت کار می کردند .در حال حاضر مسئله به اشتراک گذاشتن کد توسط دات نت  آسان شده است.ما خیلی راحت می توانیم کتابخانه کلاس قابل حمل را با دات نت  استاندارد جابجا کنیم.

با دات نت استاندارد ما پلت فرم خاصی را هدف قرار نمی دهیم اما ما با نسخه های متفاوتی از دات نت استاندارد که توسط platform/environments پشتیبانی می شود کار می کنیم.

ما می توانیم با کلیک بر پلت فرم استاندارد دات نت مانند تصویر زیر  ,PCL را به کتابخانه دات نت استاندارد تبدیل کنیم.

 در هشدار زیر با انتخاب yes کتابخانه تغییر میکند.

یک  فایل  جدید به نام project.json به طور خودکار با اطلاعات محیط زیست هدف ایجاد شده است.

project.json

{  
   "supports": {},  
   "dependencies": {  
   "Microsoft.NETCore.Portable.Compatibility": "1.0.1",  
   "NETStandard.Library": "1.6.0"  
},  
   "frameworks": {  
   "netstandard1.5": {}  
}  
}   

نسخه .NET Standard

با توجه به  جدول ماتریس نسخه بالا NET Core 1.0. نسخه ی NET Standard version 1.6. را هدف قرار داده و با تمام نسخه های پایینتر 1.0 – 1.5. کار می کند و پشتیبانی می کند.

خلاصه

1)دات نت استاندارد بر روی دات نت زمان اجرا کار می کند.

2)کتابخانه کلاس قابل حمل (PCL) بر روی پلت فرم های دات نت اصلی کار می کند. (.NET framework 4.5, ASP .NET core 1.1, Windows 8)

آموزش سی شارپ