آموزش برنامه نویسی سی شارپ (قسمت اول)
خوب وقتشه که بریم سر درسمون :)
اول از همه ما نیاز به یک IDE یا یک محیط توسعه داریم که بتونیم نرم افزارمون رو درونش توسعه و یا بسازیم !
برای این کار بهترین گزینه ( در صورت وجود گزینه های دیگه ) استفاده از محیط توسعه ای به اسم Visual Studio هست که آخرین نسخه انتشار داده شده اون توسط ماکروسافت نسخه 2015 هست که بهترینشون هم به حساب میاد که بعدا دلیلاش رو با هم میفهمیم :)
خوب اینو بهتون بگم که حجم ویژوال استادیو کلا بالاست و 2015 حجمش حدودا 4 گیگ هستش و اگه اینترنتتون محدود هست و یا سرعتش پایینه پس زحمت دانلودشو به خودتون ندید و برید بخرینش هر چند بعضی سی دی فروشی ها که ویژوال استادیو رو میدن خراب هست و... پس توی انتخاب سی دی فروشی دقت کنید :)
مراحل نصب ساده هست ، بذارید با تنظیمات پیشفرض که انتخاب شده نصب بشه و دستکاریش نکنید... احتمالا یه جا ازتون رنگ ویژوال استادیو رو هم میخواد که بر اساس علاقه خودتون از 3 تا رنگ بندیش یکیو انتخاب کنید ( بعدا هم میتونید تغییرشون بدید ).
خوب نصب شد ؟
حالا روی آیکون ویژوال استادیو دوبار کلیک کنید که واردش بشید ، بعد از باز شدن Visual Studio این صفحه میاد :
خوب حالا برای اینکه یک پروژه جدید ایجاد کنیم باید روی گزینه New project در قسمت Starting کلیک کنید یا از منوی File > New > project وارد عمل بشید :)
خوب ما قبل از اینکه وارد ویندوز فورم بشیم در محیط Console Application کار میکنیم که یه سری مفاهیم ابتدایی رو یاد بگیریم بعد میریم که یک نرم افزار درست و قشنگ طراحی کنیم :)
خوب روی new project که زدید این صفحه باز میشه :
خوب همون طور که میبینید Console Application رو انتخاب کردم ، خوب ، توی این سه قسمت پایین قسمت اول Name اسم پروژهتون و خوب باید نزدیک به اسم نرم افزار و یا اسم نرم افزارتون باشه دقت کنید که این مسائل بهتره در نام گذاری رعایت شه :
- 1 : هیچ وقت از حروف فارسی در اسم پروژه تون استفاده نکنید.
- 2 : بهتره که حرف اول اسم پروژه حرف بزرگ باشه مثل A , B , C و... ولی خوب این دیگه قرار دادیه بهتره که اینجوری باشه...
- 3 : هیچ وقت اسم پروژتون رو اسم های خاص و یا کلمات کلیدی نذارید چون تداخل پیدا میکنه مثل EntityFramework که این مورد رو در طول آموزش متوجه میشید.
- 4 : از Space بین حروف نام پروژه استفاده نکنید بهتره از _ استفاده کنید به جای اسپیس.
خوب فعلا که همینا بودن ( یا یادمه )
قسمت بعدی هم که آدرس جاییه که پروزتون ذخیره میشه.
و قسمت Solution Name هم برای کار های گروهیه یا مثلا مجموعه نرم افزارایی که با هم مرتبط ان با یک اسم سلوشن انتخاب میشن که دستش نزنید و بذارید همون اسم پروژتون باشه...
خوب حالا OK کنید تا پروژه ساخته بشه... بعد از ساخته شدن پروژه به این صفحه میاید که اصطلاحا بهش صفحه کد( code page ) میکن یا قسمت کد نویسی :
خوب توی این صفحه این قطعه کد هارو میبینیم :
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MyFirstLearn { class Program { static void Main(string[] args) { // اینجا کد هامونو مینویسیم :)
// البته فعلا توی کنسول اینجوریه :) } } }
خوب همون جور که میبینید کد هارو توی قسمتی که درج کردم مینویسیم ( البته بقیه جاها هم ممکنه کدی بنویسیم اما فعلا توی همین قسمت کار میکنیم :)
اولین چیزی که میگم و توی کد های بالا هم نوشتم کامنت کردن کد ها و یا پیغام گذاریه که جهت از کار انداختن موقت بعضی کد ها و یا علامت گذاری برای برنامه نویسان هست ( این قسمت هیچ تاثیری در روند نرم افزار نمیذاره )
برای کامت کردن از // استفاده میکنیم دقت کنید که code // فقط یک خط رو کامنت میکنه اما /* code */ چند خط رو کامنت و یا غیر فعال مکنه همانند مثال زیر :
// Codes Are Comment in one line /* Codes are comment in multi line */
خوب توی برنامه نویسی و زبان های اون ما یک سری متغییر ها داریم که هر کدوم برای نوعی استفاده میشن مثلا برای ذخیره عدد های صحیح و یا اعشاری و یا متن ها یا رشته ها و یا چیز های دیگه... در کل به این ها میگن انواع داده ای.
* دقت کنید که متغییر ها به صورت دائمی ذخیره سازی نمیکنند و در حالت کلی با بستن نرم افزار اطلاعات درون اون ها هم پاک میشه در کل برای استفاده لحظه ای به کار میان که جلو تر متوجه میشیم :)
خوب متغییر اول int هست که از نوع داده ای عدد صحیح هست که میتونه رنج عددی از 2,147,483,684- تا 2,147,483,647 توی خودش ذخیره کنه ( خیلی لازم نیست این عددهارو حفظ کنید )
خوب نحوه تعریف متغییر هم که به صورت زیر هست :
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MyFirstLearn { class Program { static void Main(string[] args) { // تعریف متغییر به این صورت ها امکان پذیر است int a = 123; // مقدار دادن در لحظه ساخت متغییر int b; // مقدار ندادن در لحظه ساخت متغییر int c, d; // ساخت دو متغییر از نوع اینت همزمان و بدون مقدار دهی int e = 1, f = 2; // ,, ,, ,, با مقدار دهی ,, ,, } } }
خوب ما الان 6 متغیی از نوع int به اسم های a , b c ,d , e , f ساختیم که متغییر های a و e و f مقدار دهی اولیه شدن ولی بقیه نشدن...
خوب توی محیط Console Application برای اینکه ما بتونیم چیزی رو از کاربر بگیریم یا چیزی رو توی صفحه چاپ و بنویسیم و بعضی کار های دیگه از متد تابع استفاده میکنیم
خوب کد زیر یک رشته رو روی صفحه چاپ میکنه :
Console.WriteLine("My First Project");
دقت کنید حروف کوچک و بزرگ مهمه یعنی اگر consol بنویسید کار نمیکنه و باید Console باشه ( هر چند معمولا ویژوال استادیو خودش براتون درست میکنه ولی بازم بدونید بهتره :) )
خوب ما میتونیم به جای عبارت My First Project چیز های دیگه ای هم بنویسیم یا به جای "My First Priject" یک عدد بنویسیم یا نام یک متغییر رو بذاریم که محتوای درونش رو چاپ کنه...
خوب توی کنسول برای اینکه بتونیم یک رشته و یا عدد رو از کاربر بگیریم از کد زیر استفاده میکنیم که یه چیزی رو از کاربر میگیره :
Console.ReadLine();
خوب کد بالا فقط یک رشته و یا عدد رو میگیره اما جایی ذخیرش نمیکنه و کلا رو هواست برای این که رو هوا نباشه ما باید از متغییر ها استفاده کنیم خوب چون محیط کنسول به صورت رشته هست و من فعلا نمیخوام تبدیل نوع رو بگم پس متغییر هایی که رشته رو ذخیره میکنن رو میگم
خوب برای اینکار از متغییر های رشته ای به نام string استفاده میکنیم نحوه تعریفش هم مثل همون int هست با این تفاوت که باید مقدارشون رو توی "" بذاریم مانند :
string s = "Value";
در کل نحوه تعریف متغییر این شکلیه : اول نوع داده ای بعد اسم حالا مقدار اولیه اگه داره میدیم و اگر نه که هیچ...
خوب حالا میخوایم که یک رشته ( یه متن ) رو از کاربر بگیریم و بعدش همون رشته ای که وارد کرده بود رو برگردونیم و روی صفحه چاپ کنیم. البته بدون متغییر هم میشه اینکار رو کرد ولی خوب فعلا برای اینکه مثالی باشه ... :)
خوب برای این کار به صورت زیر عمل میکنیم :
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MyFirstLearn { class Program { static void Main(string[] args) { // چاپ یک رشته برای اعلام نوشتار Console.WriteLine("lotfan yek chisi benevis :"); // گرفتن متن از کاربر string str = Console.ReadLine(); // چاپ کردن متن ورودی در صفحه Console.WriteLine("Javab : " + str); // استفاده از متد زیر جهت بسته نشدن خودکار صفحه Console.ReadKey(); } } }
دو نکته در مورد محیط کنسول :
- 1: در کنسول کد ها خط به خط اجرا میشن و برای اینکه ک هاتون در کد بالا اجرا بشن بعد از نوشتن متن باید اینتر رو بزنید تا جواب بده...
- 2: محیط کنسول فارسی رو پشتیبانی نمیکنه و ؟ نشون میده پس انگلیسی تایپ کنید :)
- 3: در کنسول آخر همه ی کد هاتون برای اینکه صفحه خود کار بسته نشه باید Console.ReadKey(); استفاده کنید...
خوب همون جور که میبینید کد هامونو توی { } قسمت متد Main مینویسیم...
برای دیدن نتیجه و امتحان کردن اون بالای ویژوال استادیو نوشته start روی اون کلیک کنید تا برنامه بالا بیاد و برای بسته شدنش میتونید از X که خود فرم داره استفاده کنید و یا در ویژوال استادیو اون start نبدیل به یه مربع قرمز توپر میشه که نماد stop هست و میشه از اون هم اقدام کرد...
خوب اینم نتیجه :
زیاد نگران نباشید از این محیط کنسول چون به زودی میریم توی Windows Application که خیلی بهتره
خوب امید وارم که این بخش خوب بوده باشه براتون ، شرمنده که طولانی بود چون قسمت ال بود و توضیحات اولیانه قسمت های بعدی دیگه کم تره البته با تمرین :))
.
.