آموزش گام به گام سی شارپ؛ از صفر تا اولین برنامهی کاربردی
سی شارپ یک زبان برنامهنویسی شیگرا، ساده و مدرن است که اولین بار در سال ۲۰۰۱ توسط مایکروسافت معرفی شد. اما برخلاف تصور بسیاری، سی شارپ فقط برای ویندوز نیست. امروزه با وجود داتنت کر (NET Core) و نسخههای جدیدتر، می توانید کدهای سی شارپ را روی سیستم عاملهای لینوکس، مکاواس، آیاواس و اندروید هم بنویسید و اجرا کنید. این یعنی یادگیری سی شارپ، شما را به یک توسعهدهندهی کراسپلتفرم (Cross-Platform) تبدیل می کند.
با سی شارپ چه نوع برنامههایی میتوان نوشت؟
- برنامههای دسکتاپ ویندوز (با WPF یا Windows Forms)
- وبسایتها و APIها (با ASP.NET Core)
- برنامههای موبایل اندروید و iOS (با Xamarin)
- بازیهای ویدیویی (با موتور بازیسازی Unity)
- برنامههای ابری و میکروسرویسها
- کتابخانهها و کامپوننتهای قابل استفادهی مجدد
داتنت فریمورک در مقابل داتنت کر؛ تفاوت در چیست؟
داتنت فریمورک (NET Framework) نسخهی قدیمیتر و ویندوزی این پلتفرم است که از سال ۲۰۰۱ وجود داشته. اما از چند سال پیش، مایکروسافت پلتفرم جدیدی به نام داتنت کر (NET Core) را به صورت متنباز منتشر کرد که سبکتر، سریعتر و چندسکویی است. از نسخهی داتنت ۵ به بعد، این دو یکی شده اند و تنها یک پلتفرم واحد به نام داتنت (NET) وجود خواهد داشت. پس اگر تازه شروع می کنید، سراغ جدیدترین نسخهی داتنت بروید تا از قابلیتهای روز بهره مند شوید.
بخش دوم: آمادگی برای شروع؛ ابزارهای مورد نیاز را بشناسید
برای نوشتن کدهای سی شارپ، به دو چیز نیاز دارید: یک ویرایشگر کد (یا IDE) و یک کامپایلر. خوشبختانه مایکروسافت هر دو را به صورت رایگان در اختیار شما قرار داده است.
بهترین گزینه؛ ویژوال استودیو (Visual Studio)
ویژوال استودیو، یک محیط یکپارچهی توسعهی نرمافزار (IDE) کامل و حرفهای است که همهچیز را در یک جا دارد: ویرایشگر کد، دیباگر، کامپایلر، مدیریت پروژه و حتی ابزارهای تست. نسخهی Community این نرم افزار کاملا رایگان است و برای توسعهدهندگان انفرادی، دانشجویان و تیمهای کوچک کاملا مناسب می باشد. نسخههای Professional و Enterprise هم برای سازمان های بزرگتر طراحی شده اند.
گزینهی سبکتر؛ ویژوال استودیو کد (Visual Studio Code)
اگر کامپیوتر ضعیفی دارید یا فقط می خواهید یک ویرایشگر ساده و سریع داشته باشید، ویژوال استودیو کد یک انتخاب عالی است. این ویرایشگر متنباز، رایگان و بسیار سبک، با نصب افزونهی C#، قابلیت های خوبی برای نوشتن و دیباگ کدهای سی شارپ فراهم می کند.
نکتهی مهم: برای شروع، ویژوال استودیو Community را نصب کنید. نصبکننده به شما امکان انتخاب کامپوننتهای مختلف را میدهد. حتما گزینهی «ASP.NET and web development» و «.NET desktop development» را تیک بزنید تا ابزارهای لازم نصب شوند.
بخش سوم: تفاوت IDE، زبان برنامهنویسی و فریمورک را درک کنید
این سه مفهوم را نباید با هم اشتباه بگیرید، چون نقش های کاملا متفاوتی دارند. با یک مثال ساده توضیح می دهم:
زبان برنامهنویسی (C#) : مثل دستورالعمل ها و قواعدی است که شما با آن به کامپیوتر می گویید چه کاری انجام دهد. مثلا نحوهی تعریف یک متغیر یا حلقهی تکرار.
فریمورک (NET.) : مجموعه ای بزرگ از کتابخانهها و کامپوننتهای از پیش نوشتهشده است که کارهای تکراری را برای شما انجام می دهند. مثلا کار با پایگاه داده، نمایش گرافیکی، یا ارتباط با شبکه. این کامپوننتها در قالب فایلهای DLL در سیستم شما ذخیره شده اند. برای دیدن آن ها، به مسیر C:\Windows\Microsoft.NET\Framework بروید و پوشههای مختلف را ببینید.
IDE (ویژوال استودیو) : ابزاری است که محیط کار شما را مدیریت می کند. کد شما را از خطاهای نوشتاری بازرسی می کند، کامپوننتهای فریمورک را به راحتی در اختیارتان قرار می دهد، پروژه را کامپایل کرده و در نهایت برنامهی اجرایی را تولید می کند.
به زبان ساده تر: فریمورک یک جعبهابزار بزرگ است، زبان برنامهنویسی نحوهی استفاده از این ابزارها را مشخص می کند، و IDE محیط کارگاهی شماست که همهچیز را مرتب و در دسترس قرار می دهد.
بخش چهارم: اولین برنامهی سی شارپ؛ سلام بر دنیای کدنویسی
حالا نوبت به عملی ترین بخش می رسد. ما یک برنامهی ساده می نویسیم که در پنجرهی کنسول، عبارت «Hello, C# World!» را چاپ کند. این برنامه، مانند سلامی است به دنیای برنامهنویسی.
مراحل انجام کار در ویژوال استودیو:
۱. ویژوال استودیو را باز کنید و روی «Create a new project» کلیک کنید.
۲. از بین قالب ها، گزینهی «Console App (.NET Core)» یا «Console App (.NET Framework)» را انتخاب کنید. (نسخهی جدیدتر را انتخاب کنید)
۳. یک نام برای پروژه انتخاب کنید (مثلا HelloWorld) و مسیر ذخیرهسازی را مشخص کنید.
۴. پس از ایجاد پروژه، فایل Program.cs باز می شود که شامل کد زیر است:
using System;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(“Hello, C# World!”);
}
}
}
۵. برای اجرا، کلید F5 را بزنید یا روی دکمهی سبز رنگ «Start» کلیک کنید. یک پنجرهی سیاه (کنسول) باز می شود و عبارت مورد نظر را نشان می دهد.
تفسیر کد:
using System; یعنی از کتابخانهی System استفاده کن که شامل کلاس Console است.
namespace HelloWorld یک محفظهی نام برای سازماندهی کد است.
class Program قلب برنامه است که تمام کدها درون آن نوشته میشوند.
static void Main نقطهی شروع هر برنامهی کنسولی است. کامپایلر از همینجا اجرا را آغاز میکند.
Console.WriteLine دستور چاپ یک خط در خروجی است.
بخش پنجم: درک بهتر فرایند کامپایل؛ از کد C# تا اجرا روی ماشین
شاید فکر کنید که با زدن دکمهی Start، کد شما مستقیما به زبان ماشین (باینری) تبدیل میشود. اما واقعیت کمی پیچیدهتر است. فرایند کامپایل در داتنت به دو مرحله تقسیم میشود:
مرحلهی اول: تبدیل به کد IL (Intermediate Language)
وقتی پروژه را Build می کنید (از منوی Build گزینهی Build Solution را انتخاب کنید)، کامپایلر C# کد شما را به یک زبان میانی به نام IL (یا MSIL) تبدیل می کند. این کد، نه کاملا انسانی است و نه کاملا ماشینی؛ یک زبان میانی است که مستقل از سختافزار و سیستم عامل می باشد. فایل های خروجی با پسوند exe. یا dll. در پوشهی bin\Debug یا bin\Release ذخیره میشوند. این فایل ها شامل کد IL هستند، نه کد ماشین نهایی.
مرحلهی دوم: تبدیل به کد ماشین با JIT (Just-In-Time)
در لحظهی اجرا، یک کامپایلر دیگر به نام JIT (Just-In-Time) وارد عمل می شود. این کامپایلر، کد IL را به کد باینری مخصوص پردازندهی شما تبدیل می کند و سپس اجرا می نماید. این کار باعث می شود برنامهی شما روی هر سیستم عاملی که داتنت روی آن نصب باشد، قابل اجرا باشد.
چطور کد IL را ببینیم؟
مایکروسافت ابزاری به نام ILDASM (IL Disassembler) دارد که می توانید کد IL را با آن مشاهده کنید. برای این کار:
۱. Developer Command Prompt for Visual Studio را باز کنید.
۲. دستور ILDASM را تایپ کرده و Enter بزنید.
۳. فایل اجرایی برنامهتان را در این ابزار باز کنید تا ساختار IL را ببینید.
پوشههای obj و bin چه هستند؟
پوشهی obj: شامل فایل های باینری موقتی و کامپایلنشده است که در حین build تولید می شوند.
پوشهی bin: شامل فایل های نهایی (exe. یا dll.) است که کد IL را در خود دارند و آمادهی اجرا یا انتشار هستند.
گام بعدی شما چیست؟
تبریک میگویم! شما اولین برنامهی سی شارپ خود را نوشتید و با مفاهیم پایهای مثل IDE، فریمورک، کامپایل و کد IL آشنا شدید. اما این فقط شروع ماجراست. از اینجا به بعد، می توانید به سراغ مباحث پیشرفتهتری مثل متغیرها، حلقهها، شرط ها، کلاس ها، شیگرایی، کار با پایگاه داده و ساخت وباپلیکیشن با ASP.NET Core بروید. دژاوو کالج با دورههای آموزشی عملی و پروژهمحور، همراه شماست تا این مسیر را با سرعت و اطمینان بیشتری طی کنید. اگر سوالی دارید یا به راهنمایی بیشتری نیاز دارید، تیم ما همیشه آمادهی پاسخگویی است. پس کدنویسی را ادامه دهید و از هر خط کد لذت ببرید.
دیدگاه شما