دوره آموزشی #C - مقدمه

سی شارپ(#C) چیست؟

سی شارپ (#see sharp/c) یک زبان برنامه نویسی همه منظوره، ایمن و شی گرا است که توسط مایکروسافت توسعه یافته است.

سی شارپ به شما اجازه می دهد تا برنامه های زیر را توسعه دهید:

  • برنامه‌ها و سرویس‌های وب(Web apps, web APIs, microservices)
  • برنامه‌های اینترنت اشیا (IoT/ Internet of Things)
  • برنامه های تلفن همراه (mobile backends)
  • برنامه های desktop
  • یادگیری ماشین(machine learning)
  • بازیهای کامپیوتری
  • برنامه های Console
  • سرویس های Windows
  • از ابزارهای توسعه (development tools) مورد علاقه خود در Windows، macOSو Linux استفاده کنید.
سی شارپ اولین بار در سال 2000 با معرفی .NET Framework 1.0 ظاهر شد.
در سال 2016، مایکروسافت NET Core 1.0. را منتشر کرد، نسخه ای چند پلتفرمی از دات نت، که به شما امکان می داد برنامه هایی را توسعه دهید که در پلتفرم های مختلف از جمله ویندوز، macOS و لینوکس اجرا شوند.
سی شارپ open Source است.


چرا #C :

زبان های برنامه نویسی فقط ابزارهایی هستند که به شما در ساخت برنامه های کاربردی کمک می کنند. بنابراین، انتخاب ابزار مناسب به شما کمک می کند تا سرعت توسعه را افزایش دهید.

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

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


و اما Net. چیست؟

دات نت یک developer platform است که از ابزارها، زبان های برنامه نویسی و کتابخانه ها برای ساخت انواع مختلف برنامه ها تشکیل شده است.
پیاده سازی های مختلفی از دات نت وجود دارد. هر پیاده سازی اجازه می دهد تا کد دات نت در مکان های مختلف اجرا شود - لینوکس، macOS، ویندوز، iOS، اندروید و بسیاری موارد دیگر:

  • دات نت فریم ورک/NET Framework. :پیاده سازی اصلی دات نت است. از پیاده سازی وب سایت ها، سرویس ها، برنامه های دسکتاپ و موارد دیگر در ویندوز پشتیبانی می کند.
  • دات نت/NET. : یک پیاده سازی چند پلتفرمی(cross-platform) برای پیاده سازی websiteها، serviceها و برنامه های console در ویندوز، لینوکس و macOS است. دات نت در GitHub منبع باز است. دات نت قبلاً NET Core. نامیده می شد.(در نوامبر 2021، مایکروسافت یک پلت فرم یکپارچه دات نت را معرفی کرد. آنها .NET Core را به .NET تغییر نام دادند.)
  • و Xamarin/Mono :یک پیاده سازی دات نت برای اجرای برنامه ها در تمام سیستم عامل های اصلی موبایل، از جمله iOS و Android است.
می توانید برنامه های دات نت را به زبان های #C#، F یا Visual Basic بنویسید.
توضیح Cross platform : شما می توانید برنامه های دات نت را برای بسیاری از سیستم عامل ها ایجاد کنید، از جمله: Windows / macOS / Linux /Android / iOS / tvOS / watchOS

برای ساخت برنامه های مدرن(modern)، cloud-enable و متصل به اینترنت(Internet-connected) است.

توضیح cloud-enabled : معمولاً به برنامه‌هایی اطلاق می‌شود که به‌طور سنتی (traditionally)ساخته شده و سپس به فضای ابری(cloud) منتقل شده‌اند. این برنامه ها در ابتدا به صورت یکپارچه(monolithic) طراحی شده اند و به منابع و سخت افزار محلی وابستگی دارند.

دات نت سریع است. واقعا سریع! این بدان معناست که برنامه ها زمان پاسخگویی بهتری را ارائه می دهند و به توان محاسباتی کمتری نیاز دارند.

Data sourced from official tests available at TechEmpower Round 21.
Data sourced from official tests available at TechEmpower Round 21.


نسخه‌های دات‌نت (NET versions.) :

نسخه‌های دات‌نت یا LTS releases هستند یا STS releases :

  • نسخه های LTS(Long Term Support) پایدار هستند و به روز رسانی های کمتری در طول عمر خود دارند. نسخه‌های LTS انتخاب خوبی برای برنامه‌هایی هستند که نمی‌خواهید مرتباً به‌روزرسانی شوند. مایکروسافت نسخه های LTS را به مدت سه سال پس از در دسترس بودن عمومی و 1 سال پس از عرضه نسخه بعدی LTS پشتیبانی می کند.
  • نسخه‌های STS (Standard Term Support)شامل ویژگی‌هایی است که شامل تغییرات مکرر بر اساس بازخوردها می‌شود. بنابراین، نسخه های فعلی شامل آخرین پیشرفت ها هستند. آنها برای برنامه هایی که شما فعالانه در حال توسعه آنها هستید مناسب هستند. مایکروسافت از STS releases به مدت شش ماه پس از انتشار STS بعدی یا LTS پشتیبانی می کند. از آنجایی که انتشار هر 12 ماه یکبار انجام می شود، دوره پشتیبانی برای نسخه STS به مدت 18 ماه است.
تنها تفاوت LTS releases و STS releases در طول مدت زمان پشتیبانی از آنها است.
نسخه های STS قبلاً به عنوان نسخه های جاری (Current releases) شناخته می شدند.

معماری NET Framework. :

دو جزء اصلی NET Framework. عبارتند از :

  • Common Language Runtime(CLR).
  • NET Framework Class Library.

خوب Common Language Runtime (CLR) موتور اجرایی است که برنامه های در حال اجرا را مدیریت
می کند. خدماتی مانند thread management، garbage collection، type-safety, exception handling و غیره را ارائه می‌دهد.

و اما Class Library مجموعه ای از APIها و typeها را برای عملکردهای رایج فراهم می کند. مانند strings, dates, numbers و غیره را ارائه می دهد. Class Library شامل API هایی برای خواندن و نوشتن فایل ها، اتصال به پایگاه داده، drawing و غیره است.

گفتیم می توانید برنامه های دات نت را به زبان های #C#، F یا Visual Basic بنویسید. کد به یک زبان میانی مشترک CIL/Common Intermediate Language کامپایل می شود. کد کامپایل شده در اسمبلی ها -
فایل هایی با پسوند فایل dll. یا exe. ذخیره می شود.

هنگامی که یک برنامه اجرا می شود، CLR اسمبلی را می گیرد و از یک just-in-time compiler (JIT) برای تبدیل آن به کد ماشین استفاده می کند که می تواند بر روی معماری خاص رایانه ای که روی آن است اجرا شود.

محیط های توسعه یکپارچه (Integrated Development Environments (IDEs)) برای دات نت عبارتند از:

یک : Visual Studio فقط روی ویندوز اجرا میشه دارای عملکرد داخلی گسترده ای است که برای کار با دات نت طراحی شده است. نسخه Community برای دانش آموزان، مشارکت کنندگان متن باز(open-source contributors) و اشخاص حقیقی رایگان است.

دو : Visual Studio Code قابل اجرا بر روی ویندوز، macOS و لینوکس. رایگان و متن بازاست و برنامه های افزودنی(Extensions) برای کار با زبان های دات نت در دسترس هستند.

سه : Visual Studio for Mac فقط روی macOS اجرا می شود. برای توسعه برنامه‌ها و بازی‌های دات نت برای iOS، Android و وب.

چهار : GitHub Codespaces یک محیط کد آنلاین ویژوال استودیو، که در حال حاضر در نسخه بتا است.

برای دانلود و انتخاب گزینه مناسب خود سری به لینک زیر بزنید :

https://visualstudio.microsoft.com/downloads/


بیشتر بخوانید : دوره آموزشی #C - قسمت اول

بیشتر بخوانید : نقشه راه توسعه دهندگان Asp.NET Core

https://zarinp.al/farshidazizi