دات‌نت

**دات‌نت** (به انگلیسی: .NET، و در گذشته **.NET Core**) یک چارچوب نرم‌افزاری رایگان، متن‌باز و مدیریت‌شده برای سیستم‌عامل‌های ویندوز، لینوکس و مک‌اواس است. این پلتفرم، جانشین چندسکویی چارچوب دات‌نت محسوب می‌شود. پروژهٔ دات‌نت عمدتاً توسط کارکنان مایکروسافت و از طریق بنیاد دات‌نت توسعه داده می‌شود و تحت پروانه ام‌آی‌تی منتشر شده است.

نسخه‌های جدید پلتفرم دات‌نت معمولاً سالانه و در ماه نوامبر منتشر می‌شوند. در حال حاضر، جدیدترین نسخه پایدار، **دات‌نت ۹** است که در نوامبر ۲۰۲۴ منتشر شد، در حالی که نسخه فعلی با پشتیبانی بلندمدت (LTS)، **دات‌نت ۸** است که در نوامبر ۲۰۲۳ منتشر شد و تا نوامبر ۲۰۲۶ پشتیبانی خواهد شد.

## تاریخچه

در اواخر دهه ۱۹۹۰، مایکروسافت توسعه یک محیط زمان‌اجرا برای کدهای مدیریت‌شده و یک زبان برنامه‌نویسی جدید (سی‌شارپ) را آغاز کرد که مجموعاً به عنوان «پلتفرم دات‌نت» معرفی شدند. هسته اصلی این پلتفرم، چارچوب دات‌نت بود که شامل زمان‌اجرا و کتابخانه‌های نرم‌افزاری می‌شد.

در ۱۲ نوامبر ۲۰۱۴، مایکروسافت **دات‌نت کور** (.NET Core) را به عنوان جانشین متن‌باز و چندسکویی و جانشین چارچوب دات‌نت معرفی کرد. همزمان، کد منبع زمان‌اجرای CoreCLR و کل کتابخانه‌های دات‌نت کور را منتشر کرد و اعلام کرد که این پروژه تحت نظارت بنیاد دات‌نت و با یک مدل توسعه متن‌باز به سبک "بازار" (Bazaar) پیش خواهد رفت. میگل دو ایکازا، دات‌نت کور را «نسخه‌ای بازطراحی‌شده از دات‌نت بر پایه نسخه‌ای ساده‌شده از کتابخانه‌های کلاس» توصیف کرد.

 ۱.۰ در ۲۷ ژوئن ۲۰۱۶ منتشر شد، همراه با ویژوال استودیو ۲۰۱۵ به‌روزرسانی ۳ که امکان توسعه با دات‌نت کور را فراهم می‌کرد.

.NET Core 2.0 در ۱۴ اوت ۲۰۱۷، همراه با ویژوال استودیو ۲۰۱۷ نسخه ۱۵.۳، ASP.NET Core 2.0 و Entity Framework Core 2.0 عرضه شد.

.NET Core 3 در ۲۳ سپتامبر ۲۰۱۹ منتشر شد. این نسخه پشتیبانی از توسعه برنامه‌های دسکتاپ ویندوز را اضافه کرد.

در نوامبر ۲۰۲۰، مایکروسافت .NET 5.0 را منتشر کرد. پسوند «کور» (Core) حذف شد و از نسخه ۴.۰ صرف‌نظر شد تا با نسخه‌های ۴.x چارچوب دات‌نت اشتباه گرفته نشود.

پس از آن، مایکروسافت به انتشار سالانه نسخه‌های جدید ادامه داد: .NET 6 در نوامبر ۲۰۲۱، .NET 7 در نوامبر ۲۰۲۲، .NET 8 در نوامبر ۲۰۲۳، و .NET 9 در نوامبر ۲۰۲۴.

### پشتیبانی از زبان‌ها
[thumb|280px|دات‌نت از [زیرساخت زبان مشترک (CLI) استفاده می‌کند، بنابراین می‌تواند از چندین زبان برنامه‌نویسی پشتیبانی کند.]]
دات‌نت به طور کامل از زبان‌های سی‌شارپ (C#) و اف‌شارپ (F#) و همچنین C++/CLI (از نسخه ۳.۱ و فقط در ویندوز) پشتیبانی می‌کند.

ویژوال بیسیک دات‌نت (VB.NET) روی دات‌نت کامپایل و اجرا می‌شود، اما تا پیش از دات‌نت ۵، زمان‌اجرای ویژوال بیسیک (Visual Basic Runtime) در آن پیاده‌سازی نشده بود. مایکروسافت ابتدا اعلام کرد که این پشتیبانی در دات‌نت کور ۳ ارائه می‌شود، اما سرانجام این قابلیت در دات‌نت ۵ محقق شد.

## معماری

دات‌نت از سناریوهای چندسکویی زیر پشتیبانی می‌کند: برنامه‌های وب ASP.NET Core، برنامه‌های کنسول و خط فرمان، کتابخانه‌ها و برنامه‌های پلتفرم جهانی ویندوز (UWP). تا پیش از دات‌نت کور ۳.۰، این پلتفرم از ویندوز فرمز و WPF که رابط کاربری گرافیکی استاندارد برای نرم‌افزارهای دسکتاپ در ویندوز هستند، پشتیبانی نمی‌کرد. با این حال، از دات‌نت کور ۳ به بعد، پشتیبانی از این فناوری‌ها نیز اضافه شد.

دات‌نت از بسته‌های NuGet استفاده می‌کند. برخلاف چارچوب دات‌نت که از طریق Windows Update به‌روزرسانی می‌شد، دات‌نت در ابتدا تنها از طریق مدیر بسته خود به‌روزرسانی‌ها را دریافت می‌کرد. اما از دسامبر ۲۰۲۰، به‌روزرسانی‌های دات‌نت نیز از طریق Windows Update توزیع می‌شوند.

دو جزء اصلی دات‌نت عبارتند از CoreCLR و CoreFX که قابل مقایسه با زمان‌اجرای زبان مشترک (CLR) و کتابخانه کلاس پایه (FCL) در چارچوب دات‌نت هستند.

CoreCLR به عنوان پیاده‌سازی سیستم اجرای مجازی (VES)، یک زمان‌اجرا (runtime) و ماشین مجازی کامل برای اجرای کدهای مدیریت‌شده است و شامل یک کامپایلر درجا (Just-in-Time) به نام RyuJIT می‌شود.

CoreFX نیز به عنوان پیاده‌سازی کتابخانه‌های استاندارد CLI، زیرمجموعه‌ای از APIهای چارچوب دات‌نت را به اشتراک می‌گذارد، اما APIهای جدید و مخصوص به خود را نیز دارد.

## دات‌نت مایو (MAUI)
**رابط کاربری برنامه چندسکویی دات‌نت** (**MAUI**) که با دات‌نت ۶ معرفی شد، یک چارچوب چندسکویی برای ساخت برنامه‌های بومی (native) موبایل و دسکتاپ با استفاده از سی‌شارپ و XAML است. MAUI از سیستم‌عامل‌های اندروید، آی‌اواس، مک‌اواس، ویندوز و تایزن پشتیبانی می‌کند.

## نماد
thumb|150px|dotnet bot، نماد جامعه کاربری دات‌نت
نماد رسمی جامعه کاربری دات‌نت، رباتی به نام ".NET Bot" است (که به شکل "dotnet bot" یا "dotnet-bot" نوشته می‌شود). این ربات به عنوان توسعه‌دهنده پیش‌فرض در اولین کامیت کد منبع دات‌نت، زمانی که پروژه متن‌باز شد، استفاده شد و از آن زمان به عنوان نماد رسمی این پلتفرم شناخته می‌شود.

## منابع

رده:نرم‌افزارهای چندسکویی
رده:رابط‌های برنامه‌نویسی کاربرد مایکروسافت
رده:ابزارهای توسعه نرم‌افزار مایکروسافت
رده:نرم‌افزارهای رایگان مایکروسافت
رده:نرم‌افزارهای دارای اجازه‌نامه ام‌آی‌تی
رده:نرم‌افزارهای ۲۰۱۶ (میلادی)