.NET چیست؟
پلتفرم توسعه نرمافزار مایکروسافت برای ساخت برنامههای وب، دسکتاپ، موبایل و Cloud بهصورت Cross-Platform.
چرا مهم است؟
.NET چتری است که همه فناوریهای بکاند مایکروسافت (ASP.NET Core، EF Core، Blazor، MAUI) زیر آن قرار میگیرند — فهمیدن اجزای پایهاش پیشنیاز یادگیری بقیه اکوسیستم است.
.NET چیست؟
.NET پلتفرم توسعه نرمافزار مایکروسافت است که برای ساخت انواع برنامه (وب، دسکتاپ، موبایل، سرویسها و Cloud) استفاده میشود.
مفاهیم کلیدی
- Cross-Platform — اجرا روی Windows، Linux و macOS؛ از نسخه .NET Core به بعد چندسکویی شد.
- زبانها — مهمترین زبان C#؛ همچنین F# و Visual Basic.
- Runtime — محیط اجرای برنامه؛ مدیریت حافظه، اجرای کد، Garbage Collection و Exception.
- CLR (Common Language Runtime) — قلب اجرای برنامههای .NET؛ Garbage Collection، Type Safety، Exception Handling.
- Managed Code — کدی که توسط CLR مدیریت میشود؛ توسعهدهنده کنترل مستقیم حافظه ندارد.
- IL (Intermediate Language) — کد C# ابتدا به IL تبدیل و سپس توسط CLR اجرا میشود.
- JIT Compiler — کد IL را هنگام اجرا به Machine Code تبدیل میکند.
- .NET SDK — ابزارهای توسعه: ساخت پروژه، Build، Test، Publish.
- .NET Runtime — فقط برای اجرای برنامههای ساختهشده.
- NuGet — سیستم مدیریت پکیج .NET.
انواع برنامههای قابل ساخت
ASP.NET Core (Web API، سایت، Backend) · Blazor (UI با C#) · .NET MAUI (موبایل و دسکتاپ) · Console Application · Worker Service (سرویسهای پسزمینه) · Cloud Applications (مخصوصاً با Azure)
معماری اجرای برنامه
C# Code → Compiler → IL Code → CLR + JIT → Machine Code → CPU
.NET Framework در برابر .NET جدید
| .NET Framework | .NET |
|---|---|
| فقط Windows | چندسکویی |
| قدیمیتر | مدرنتر |
| Web Forms و WPF | ASP.NET Core و MAUI |
| توسعه محدود | Performance بهتر |
مزایا
سرعت بالا · امنیت مناسب · ابزارهای قدرتمند توسعه · پشتیبانی قوی مایکروسافت · جامعه کاربری بزرگ · مناسب Enterprise Application
نکته کلیدی: .NET با کمک CLR زبانهایی مثل C# را اجرا میکند و امکان ساخت برنامههای Web، Desktop، Mobile و Cloud را بهصورت Cross-Platform فراهم میکند.
خلاصه
- .NET پلتفرم Cross-Platform مایکروسافت برای ساخت برنامههای Web، Desktop، Mobile و Cloud است.
- کد C# ابتدا به IL تبدیل میشود و CLR با کمک JIT آن را به Machine Code تبدیل و اجرا میکند.
- SDK برای توسعه و Build لازم است؛ Runtime فقط برای اجرای برنامه ساختهشده کافی است.
