ูู ุงูู ูุงู ุฏูุ ููุชููู ุจุงูุชูุตูู ุนู ุงููููู ุงูุฃุณุงุณู ูุฃู ุจุฑูุงู ุฌ ุจูุชูุชุจ ุจูุบุฉ C#ุ ูููุดุฑุญ ูู ุฌุฒุก ุนุดุงู ุชููู ูุงูู ุงูููุฏ ุงููู ุจุชูุชุจู ูููุณ. ูู ุญุณูุช ุฅู ููู ุญุงุฌุงุช ู ุด ูุงุถุญุฉ ู ู ุฃูู ู ุฑุฉุ ุนุงุฏู ุฌุฏูุงุ ู ู ูู ุชุฑุฌุน ุชูุฑุงูุง ุชุงูู ุจุนุฏ ูุชุฑุฉ ููุชูุงูู ุงูุฃู ูุฑ ุจูุช ุฃุณูู.
ุฅูู ูู ูุบุฉ C# ูุจูุนู ู ุจููุง ุฅููุ
ูุบุฉ ุงูู C# (ุจุชุชูุทู ุณู ุดุงุฑุจ) ูู ูุงุญุฏุฉ ู
ู ูุบุงุช ุงูุจุฑู
ุฌุฉ ุงููู ุนู
ูุชูุง ุดุฑูุฉ ู
ุงููุฑูุณููุช ุนุดุงู ุชุดุชุบู ู
ุน ุจูุฆุฉ ุงูุนู
ู ุจุชุงุนุชูุง ุฒู ุงูู .NET Framework ูุงูู .NET Core.
ุงููุบุฉ ุฏู ูููุฉ ุฌุฏูุง ูุจุชุฌู
ุน ู
ู
ูุฒุงุช ู
ู ูุบุงุช ุชุงููุฉ ูุชูุฑ ุฒู C++ ู Javaุ ุจุงูุฅุถุงูุฉ ูู
ู
ูุฒุงุชูุง ุงูุฎุงุตุฉ. ุฃูู
ุญุงุฌุฉ ุจุชู
ูุฒูุง ุฅููุง Object-Oriented Programming ุจุดูู ูุงู
ูุ ูุนูู ุจุชุฏุนู
ูู ู
ุจุงุฏุฆ ุงูู OOP ุงูุฃุฑุจุนุฉ.
ุจุงุณุชุฎุฏุงู C#ุ ุจููุฏุฑ ูุจูู ุฃููุงุน ูุชูุฑ ู ู ุงูุชุทุจููุงุชุ ุฒู:
- ุชุทุจููุงุช ุงูููุจ (Web Application).
- ุชุทุจููุงุช ุฏูุณูุชูุจ (Windows Forms).
- ุชุทุจููุงุช ุงููููุณูู (Console Application).
- ู ูุชุจุงุช ุฃููุงุฏ (Class Library).
Project Structure
ูู
ุง ุจูุดุชุบู ุจู .NETุ ุจูุณุชุฎุฏู
ุจุฑูุงู
ุฌ ุงุณู
ู Visual Studioุ ูุฏู ูุนุชุจุฑ ุจูุฆุฉ ุชุทููุฑ ู
ุชูุงู
ูุฉ (IDE) ุจููุชุจ ููุดุบู ุนูููุง ุงูุฃููุงุฏ ุจุชุงุนุชูุง. ุงูุชูุธูู
ุจูููู ุจุงูุดูู ุฏู:
- ุบุงูุจูุง ุจูุนู
ู
Folder(ู ุฌูุฏ) ูููSolution. ุงููSolutionูู ุงูุญุงููุฉ ุงููุจูุฑุฉ ุงููู ุจุชุถู ูู ุงูู ุดุงุฑูุน ุงูู ุฑุชุจุทุฉ ุจุจุนุถ. - ุฌูู ุงูู
Folderุฏูุ ุจูููู ููู ู ูู ุงู ุชุฏุงุฏู.sln. ุฏู ู ุฌุฑุฏ ู ูู ุฅุนุฏุงุฏุงุช (configuration file) ูููSolutionููู ูููู ุดุงุฑูุน (Projects) ุงููู ุชุญุชู. - ุฌูู ุงูู
Solutionููุณูุ ุจูุนู ูFolderูููProjectููุญุฏู ุนุดุงู ููุธู ุดุบููุง.

- ูู
Projectุจุฑุถู ุจูููู ููู ู ูู ุงูุฅุนุฏุงุฏุงุช ุงูุฎุงุต ุจูู (ุงู ุชุฏุงุฏู.csprojูู ุงูู ุดุฑูุน ู ูุชูุจ ุจู C#). - ู
ู
ูู ูุบูุฑ ุดููุฉ
Properties(ุฎุตุงุฆุต) ุฎุงุตุฉ ุจุงููProjectุฏู ูู ุนู ูุช ุนููู right-click ูู Visual Studio ูุงุฎุชุฑุช Properties.
ุฅุฒุงู ุชุนู ู Console Applicationุ
ุงูู Console Application ูู ุฃุจุณุท ููุน ู
ู ุงูุชุทุจููุงุชุ ุจูุดุชุบู ู
ู ุฎูุงู ุดุงุดุฉ ุงูุฃูุงู
ุฑ (Command Prompt) ูู
ููููุด ูุงุฌูุฉ ุฑุณูู
ูุฉ (GUI). ุฏู ุจูููู ุฃูุถู ุจุฏุงูุฉ ูุฃู ุญุฏ ุจูุชุนูู
C#.
ุจุจุณุงุทุฉุ ุจุชูุชุญ Visual Studio ูุชุฎุชุงุฑ Create a New Projectุ ูุจุนุฏูุง ุจุชุฎุชุงุฑ Console Appุ ูุชุญุฏุฏ ุงุณู
ุงูู
ุดุฑูุน ูุงูู
ูุงู ุงููู ููุชุญูุธ ูููุ ูุงูุจุฑูุงู
ุฌ ููุฌูุฒูู ุงููููู ุงูุฃุณุงุณู ููู
ุดุฑูุน.
ุงูู Syntax ุงูุฃุณุงุณู ูู C#
ุฃู ุญุงุฌุฉ ูู ูุบุฉ C# ูู ุนุจุงุฑุฉ ุนู OOP ุจุดูู ุจุญุช. ุนุดุงู ูุฏู ุฏุงูู
ูุง ูุชูุงูู ููุณู ุจุชุชุนุงู
ู ู
ุน Classes. ูุจุณุจุจ ุฏูุ ุงูู function ุงูุฃุณุงุณูุฉ ุงููู ุงูุจุฑูุงู
ุฌ ุจูุจุฏุฃ ูุดุชุบู ู
ููุง (ุงููู ูู Main) ู
ูููุนุด ุชุชูุชุจ ููุญุฏูุงุ ูุงุฒู
ุชููู ุฌูู Class.
ุงููููู ุงูุฃุณุงุณู ูุฃู ููุฏ C# ุจุณูุท ุจูููู ูุฏู:

- ุงูู Namespace: ุฃูู ุญุงุฌุฉ ุจูุญุฏุฏูุง ุนุดุงู ููุธู ุงูููุฏ ุจุชุงุนูุง.
- ุงูู Class: ุฌูู ุงูู
namespaceุจูุนุฑูู ุงููClassุงููู ููุญุชูู ุงูููุฏ ุจุชุงุนูุง. - ุงูู Main Method: ุฌูู ุงูู
Classุจููุชุจ ุงููMain functionุจุชุงุนุชูุงุ ูุฏู ููุทุฉ ุจุฏุงูุฉ ุชูููุฐ ุงูุจุฑูุงู ุฌ.
ูุงุฒู
ุงูู Main function ุชููู staticุ ูุฏู ูุณุจุจ ู
ูู
ุฌุฏูุง. ุงููู ุจููุงุฏู ุนูู ุงูู Main function ุฏู ูู ุงูู CLR (Common Language Runtime). ูุนุดุงู ุงูู CLR ููุฏุฑ ููุงุฏููุง ุนูู ุทูู ู
ู ุบูุฑ ู
ุง ูุญุชุงุฌ ูุนู
ู object ุฌุฏูุฏ ู
ู ุงูู Class ุงูุฃููุ ูุงุฒู
ุชููู ู
ุชุนุฑูุฉ ูู static.
// Define a namespace to organize our code
namespace HWNS // HWNS = HelloWorldNameSpace (example name)
{
// Define the main class for our program
class Program
{
// The Main method: entry point of the application
// It must be static so the CLR can call it without creating an instance (object) of Program
public static void Main()
{
// Write "Hello World" to the console
// We need to specify 'System' namespace because Console class is inside it
System.Console.WriteLine("Hello World");
}
}
}ุงูู using Directive
ูู ูุงุญุธุช ูู ุงูููุฏ ุงููู ูููุ ูุชุจูุง System.Console.WriteLine. ุงูู Console ุฏู Class ู
ูุฌูุฏ ุฌูู namespace ุงุณู
ู System. ุทูุจ ูู ุฃูุง ุจุณุชุฎุฏู
ุญุงุฌุงุช ูุชูุฑ ู
ู Systemุ ููุถู ุฃูุชุจูุง ูู ุดููุฉุ ูุฃ ุทุจุนูุง.
ููุง ุจุชูุฌู ูุงูุฏุฉ ููู
ุฉ using. ุจููุชุจูุง ููู ุฎุงูุต ูู ุฃูู ุงูู
ููุ ูู
ุนูุงูุง ุจุจุณุงุทุฉ: โูุง ููู
ุจุงููุฑุ ูู ูููุช Class ุฃู datatype ุฃูุง ุจุณุชุฎุฏู
ู ูู
ุด ูุงููู ูู ุงูู namespace ุงูุญุงูู ุจุชุงุนูุ ุฑูุญ ุจุต ุนููู ุงูุฃูู ูู ุงูู namespaces ุงููู ุฃูุง ุนุงู
ููุง usingโ.
ูุฏู ุจููุฏุฑ ูุณุชุฎุฏู
ุงูู Classes ุงููู ุฌูู System ู
ุจุงุดุฑุฉู ู
ู ุบูุฑ ู
ุง ููุชุจ ุงุณู
ูุง ูู ู
ุฑุฉ.
using System; // Tell the compiler to look in the System namespace
namespace HWNS
{
class Program
{
public static void Main()
{
// Now we can just write Console.WriteLine directly
Console.WriteLine("Hello World!");
// Keeps the console window open until a key is pressed
Console.ReadKey();
}
}
}ููู ูู
ุงู ุญุงุฌุฉ ุฌุฏูุฏุฉ ูุณุจููุง ุงุณู
ูุง global using. ุฏู ุจุชููู ู
ุฌู
ูุนุฉ namespaces ู
ุชุนุฑูุฉ ุชููุงุฆู ุนูู ู
ุณุชูู ุงูู Project ููู ูู ู
ูู ู
ุฎุตูุตุ ุนุดุงู ู
ุชุถุทุฑุด ุชูุชุจูุง ูู ูู ู
ูู .cs ุจุชุนู
ูู.

ููุท ู ูู ุฉ ุนู C#
- ุงููุบุฉ
Case sensitive: ูุนูู ุจููุฑู ู ุนุงูุง ุงูุญุฑู ุงููcapitalูุงููsmall. ุงูู ุชุบูุฑmyVariableู ุฎุชูู ุชู ุงู ูุง ุนูMyVariable. - ุชุณู
ูุฉ ุงูู
ุชุบูุฑุงุช ูุงูุฏูุงู: ุบุงูุจูุง ุจูุณุชุฎุฏู
ุทุฑููุฉ
PascalCaseูู ุชุณู ูุฉ ุงููClassesูุงููMethodsูุงููProperties. ูุนูู ุฃูู ุญุฑู ู ู ูู ููู ุฉ ูู ุงูุงุณู ุจููููCapitalุ ุฒูBackgroundColorุฃูGetUserData. - ููุงูุฉ ูู ุณุทุฑ: ูู ุฌู
ูุฉ ุจุฑู
ุฌูุฉ (statement) ูู C# ูุงุฒู
ุชูุชูู ุจูุงุตูุฉ ู
ูููุทุฉ (
;).