our notes for our youngers

July 23, 2009

basic of C# (part 4)

Filed under: Basic of C# — Tags: , , — sevenlamp @ 12:54 PM

Hello World from C#

ကဲ အခုကြၽန္ေတာ္တို႔ C# programming language နဲ႔ program တစ္ခုေလာက္ စေရးၾကရေအာင္ဗ်ာ။ programming language တိုင္းရဲ့ first time program ေလး helloworld နဲ႔ပဲ စလိုက္ရေအာင္။ C# program စေရးဖို႔အတြက္ ခင္ဗ်ားတို႔ စက္မွာ .NET Framework install လုပ္ထားျပီးသားျဖစ္ဖို႔ေတာ့ လိုတယ္ဗ်။ Visual Studio install လုပ္ထားျပီးသားဆိုရင္ framework ထပ္သြင္းစရာမလိုေတာ့ဘူးေနာ္။ မသြင္းရေသးဘူးဆိုရင္ေတာ့ ဒီမွာ (http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=en) သြားျပီး download လုပ္ျပီးသြင္းလိုက္ဗ်ာ။ framework သြင္းျပီးရင္ေတာ့ ကြၽန္ေတာ္တို႔ program စေရးလို႔ ရျပီ။

C# program ေတြ ေရးခ်င္တယ္ဆိုရင္ Microsoft Visual Studio(IDE) ကို သံုးျပီးေရးမွာလား။ မသံုးပဲေရးမွာလား နည္းလမ္း ၂ ခုရွိတယ္။ အခုပထမဆံုး program ကို java လို Visual Studio IDE မသံုးပဲေရးၾကရေအာင္။ program ေရးဖို႔အတြက္ Text Editor တစ္ခုေတာ့လိုတယ္ဗ်။ ခင္ဗ်ားတို႔စက္မွာ Notepad ေတာ့ ရွိျပီးသား ျဖစ္မွာပါ။ ကဲ Notepad ဖြင့္ဗ်ာ။

window key + R ႏွိပ္ျပီး Run Box ကိုေခၚလိုက္ဗ်ာ ျပီးရင္ အဲ့ဒီ Box ထဲမွာ notepad လို႔သာရိုက္ထည့္လိုက္၊ ဒါဆို Notepad ပြင့္လာလိမ့္မယ္။ ဟုတ္ျပီ… program စေရးရေအာင္။ ဒီအတိုင္းေရးလိုက္ဗ်ာ ျပီးမွ ျပန္ရွင္းမယ္။

class Hello
{
	static void Main()
	{
		System.Console.Write("Hello World");
	}
}

ေရးျပီးျပီေနာ္… အိုေက ျပန္ရွင္းရေအာင္။ C တို႔ java တို႔လိုပဲ C# program ေတြကလည္း Main function ကေနစျပီး အလုပ္လုပ္တယ္ဗ်။ ဒါေပမယ့္ C# မွာေတာ့ Main ကို M အၾကီးနဲ႔ ေရးရတယ္ေနာ္။ ျပီးေတာ့ static ဆိုတဲ႔ keyword လည္းထည့္ရတယ္။ အိုေက ကြၽန္ေတာ္တို႔ ဒီအတိုင္းေရးလိုက္ျပီ static void Main() ေပါ့။ အဲ့ဒီ Main function ရဲ့ scope ကိုသက္မွတ္ဖို႔ { နဲ႔ } ကို သံုးတယ္။ ဒါလည္း C တို႔ java တို႔နဲ႔ တူတူပဲ။ အဲ့ဒီ scope ထဲမွာမွ ကြၽန္ေတာ္တို႔ computer ကို ခိုင္းေစခ်င္တဲ႔ statement ေတြကို ေရးရမယ္။ statement တစ္ေၾကာင္း ျပီးျပီဆိုတိုင္းမွာ semicomar(;) ပိတ္ဖို႔လည္း မေမ႔နဲ႔ဦးေနာ္။

monitor မွာ စာရိုက္ခုိုင္းဖို႔ အတြက္ C# မွာ Write or WriteLine function ကို သံုးရတယ္ဗ်။ အဲ့ဒီ Write function ကိုလည္း ဒီတိုင္းေခၚခြင့္မရွိဘူးဗ်၊ function ရွိေနတဲ႔ class name နဲ႔ တဆင့္ေခၚရတယ္။ Write function က Console class ထဲမွာ ရွိတယ္ေလ၊ ဒါေၾကာင့္ ေရးတဲ႔အခါ Console.Write လို႔ေရးမွမွန္မယ္။ ဟုတ္ျပီ ဒါဆို ေရွမွာ ဘာလို႔ System ဆိုတာၾကီးပါရတာလဲ။ ဒါက ဒီလိုရွိတယ္ဗ် အဲ့ဒီ System ဆိုတာကို Namespace လို႔ ေခၚတယ္။ Namespace ဆိုတာ class ေတြ စုထားတဲ႔ class အစုအေ၀းၾကီး class library ေပါ့ဗ်ာ။ Console class က System namespace ထဲမွာ ရွိတယ္။ ဒါေၾကာင့္ ကြၽန္ေတာ္တို႔က System.Console.Write လို႔ ေရးရတာဗ်။ ဒီလိုမ်ိဳး class name ရဲ့ ေရွ႕မွာ ထည့္မေရးခ်င္ဘူး ဆိုလည္း ေနာက္တစ္နည္းရွိေသးတယ္။ class မေဆာက္ခင္မွာ library file အေနနဲ႔ ၾကိဳျပီး ေၾကျငာေပးထားလို႔ ရတယ္။ C မွာ #include၊ java မွာ import ဆိုျပီး ေၾကျငာသလို C# မွာလည္း using ဆိုျပီး ေၾကျငာရတယ္။ ဒီလိုမ်ိဳးဗ်ာ…

using System;
class Hello
{
	static void Main()
	{
		Console.Write("Hello World");
	}
}

ခုလို႔ class အေပၚမွာ System namespace ကို using လုပ္လိုက္ရင္။ ဒီ class အတြင္းမွာ အဲ့ဒီ System namespace ထဲက class ေတြကို စိတ္ၾကိဳက္ေခၚသံုးလို႔ ရျပီ။ ေနာက္ထပ္ထပ္ေရးေနစရာ မလိုေတာ့ဘူး။ မဟုတ္ရင္ Console.Write တစ္ခါရိုက္ခ်င္တိုင္း ေရွ႕မွာ System ဆိုတာၾကီးကို ျပန္ျပန္ထည့္ေပးေနရလိမ့္မယ္။
ကဲ Main function ေရးျပီေတာ့ ျပီးေရာလားဆိုေတာ့ မျပီးေသးဘူးဗ်။ C# က OOP language ေလ။ ဒီေတာ့ ဒီfunction ကိုလည္း class တစ္ခုခုအထဲမွာပဲ ထည့္ေရးခြင့္ရွိတယ္ဗ်။ function ၾကီးပဲ ဒီတိုင္းေရးလို႔ မရဘူး။ ဒါေၾကာင့္ ကြၽန္ေတာ္က Hello ဆိုတဲ႔ class ထဲမွာ ထည့္ေရးလိုက္တာ။ class name က ကိုယ္ၾကိဳက္တာေပးခြင့္ရွိပါတယ္။ java မွာလိုမ်ိဳး file name နဲ႔ class name နဲ႔ တူစရာ မလိုဘူး။
ဒီေလာက္ဆိုရင္ အေပၚက program ထဲမွာ ေရးထားတဲ႔ coding ေတြကို နားလည္ျပီထင္တယ္ေနာ္။ အဓိကနားလည္ေစခ်င္တာကေတာ့ ဘာလုပ္ခ်င္လို႔ ဘယ္ကုဒ္ကိုေရးရတယ္ ဆိုတာကို နားလည္ေစခ်င္တာ။ ကဲ ကြၽန္ေတာ္တို႔ ေရးလို႔ ျပီးျပီဆိုေတာ့ ဒီ source code ေတြကို သိမ္းရမယ္။ Ctrl + S ႏွိပ္ျပီး C: Drive ေအာက္မွာ ခင္ဗ်ားတို႔ ၾကိဳက္တဲ႔ နာမည္နဲ႔ သိမ္းဗ်ာ၊ အဲ file extension ကေတာ့ (.cs) ျဖစ္ရမယ္ေနာ္။ ဥပမာ ကြၽန္ေတာ္က filename ကို Test1 လို႔ ေပးခ်င္တယ္ဆိုရင္ Test1.cs ဆိုျပီးေပးရမယ္။ ရတယ္ေနာ္… အိုေက အခုကြၽန္ေတာ္တို႔ ဒီ C# source file ေလးကို compile လုပ္ျပီး run ၾကည့္ရေအာင္။ compile လုပ္ဖို႔ အတြက္ command prompt ထဲသြားဖို႔လိုတယ္။ ကဲ႔ Run Box ကိုေခၚျပီး cmd လို႔ ရိုက္လိုက္ဗ်ာ ဒါဆို command prompt ေပၚလာမယ္။ command prompt ထဲမွာ လက္ရွိ cursor location က C: ေအာက္က document and setting ေအာက္က login ၀င္ထားတဲ႔ username ေအာက္ကို ေရာက္ေနလိမ့္မယ္ထင္တယ္။ ဒါဆိုအဆင္မေျပဘူး ကြၽန္ေတာ္တို႔ Root Directory ေအာက္ကို ျပန္သြားရေအာင္။ CD\ ရိုက္ျပီး Enter ေခါက္လိုက္။ ဒါဆို C: ေအာက္ကို ျပန္ေရာက္သြားျပီ။ အဲ့ဒီမွာမွ ကြၽန္ေတာ္က .NET Framework သြင္းထားတဲ႔ location ကို ရွာရေအာင္။ ဒီေနရာမွာ ကြၽန္ေတာ္ တစ္ခုေျပာဖို႔က်န္သြားတယ္။ အေပၚပိုစ့္မွာ ေျပာခဲ႔တဲ႔ အတိုင္း ကြၽန္ေတာ္တို႔ ေရးထားတဲ႔ source file ေတြကို သက္ဆိုင္ရာ language ရဲ့ compilier နဲ႔ compile လုပ္ရတယ္။ C# အတြက္ေတာ့ C Sharp Compiler (csc.exe) ေပါ့ဗ်ာ။ ဒါေၾကာင့္ csc.exe file ေလးကို ရွာမယ္ဗ်ာ။ ကဲ command prompt ထဲမွာ ဒီလိုေလးရိုက္လိုက္ပါဦး။

dir csc.exe /s

ခဏေတာ့ ေစာင့္ရမယ့္ထင္တယ္။ ရွာလိုေတြ႔ျပီဆိုရင္ အဲ့ဒီ compiler ေလးရွိတဲ႔ ေနရာကို path ေပးရမယ္ဗ်။ ခက္တာက ကြၽန္ေတာ္က path ေပးတာကို ေမ႔ေနျပီ။ ဒါေၾကာင့္ အဲ့ဒီ compiler ရွိတဲ႔ location ကိုပဲ CD command သံုးျပီး သြားလိုက္မယ္ဗ်ာ။ ေၾသာ္ဒါနဲ႔ ခင္ဗ်ားစက္မွာ framework version အမ်ားၾကီးရွိေနတာလဲ ျဖစ္နိုင္တယ္ေနာ္။ ၾကိဳက္တဲ႔ version ေအာက္ကို ၀င္လိုက္ဗ်ာ။ ျပီးရင္ compile လုပ္ရေအာင္။

csc.exe C:\Test1.cs

ခုလို compile လုပ္လုိက္ေတာ့ compiler က exe file ထုတ္ေပးတယ္ဗ်။ ရွာရင္ ရွာၾကည့္လိုက္ဦး။

dir Test1.exe

ေတြ႔တယ္မလားဗ် ကြၽန္ေတာ္တို႔ program ရဲ့ executable file ေလး။ အဲ့ဒီ file ေလးကို run ရင္ ရျပီေပါ့။ တခုေတာ့ မွတ္ထားဦးေနာ္၊ ဒီ exe file က .NET Framework ရွိမွ run လို႔ ရမွာေနာ္။ အခု တခါတည္း run ၾကည့္ရေအာင္ဗ်ာ။ exe file ဆိုေတာ့ ဒီတိုင္း filename ရိုက္လိုက္ရံုပါပဲ။

Test1.exe or Test1

ကဲ႔ ဒါဆိုရင္ ခင္ဗ်ားတို႔ရဲ့ ပထမဆံုး C# program ရဲ့ output ကို ေတြ႔ရျပီေပါ့။

ကြၽန္ေတာ္ video training ေလးပါ တင္ေပးလိုက္တယ္။ ဒီမွာ ယူဗ်ာ။

http://ifile.it/38lwqa5

Compile လုပ္ရင္ program မွာမွားနိုင္တာေလးေတြလည္း ရွိတယ္ဗ်။

၁ – using, class, static, void အဲ့ဒါေတြကို စာလံုး အေသးနဲ႔ေရးရမယ္။

၂ – System, Console, Write, Main အဲ့ဒါေတြကိုေတာ့ အစစာလံုးကို အၾကီးနဲ႔ ေရးရမယ္။

၃ – write function အဆံုးမွာ ( ; ) ထည့္ရမယ္။

၄ – Hello World ဆိုတဲ႔ စာသားကို ( နဲ႔ ) ထဲထည့္ေရးရမယ္။

ဒီေလာက္ဆို အားလံုး run လို႔ ရၾကမွာပါ။ စမ္းၾကည့္ျပီး တစ္ခုခုျပန္ေျပာၾကဗ်ာ။

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: