در حال بارگذاری...

کلیدواژه‌های C#

کلیدواژه‌های C# بخش اساسی زبان سی‌شارپ هستند که برای تعریف ساختار و رفتار برنامه استفاده می‌شوند. این کلیدواژه‌ها توسط کامپایلر به صورت خاص شناسایی شده و نقش حیاتی در کنترل جریان برنامه، تعریف انواع داده، پیاده‌سازی اصول شیءگرایی و مدیریت استثناها دارند. استفاده صحیح از کلیدواژه‌ها باعث تولید کد امن، بهینه و قابل نگهداری می‌شود و یکی از ارکان توسعه نرم‌افزار حرفه‌ای در سی‌شارپ به شمار می‌رود.
در توسعه برنامه‌های سی‌شارپ، کلیدواژه‌ها برای تعریف متغیرها و انواع داده (مانند int، string، bool)، مدیریت جریان برنامه (if، else، switch، for، foreach، while)، پیاده‌سازی شیءگرایی (class، interface، abstract، virtual، override) و مدیریت خطاها (try، catch، finally) استفاده می‌شوند. آشنایی با کاربرد و محدودیت‌های هر کلیدواژه به توسعه‌دهندگان کمک می‌کند تا از اشتباهات رایج مانند نشت حافظه، مدیریت نامناسب استثناها و الگوریتم‌های ناکارآمد جلوگیری کنند.
این راهنما به شما کمک می‌کند تا با کلیدواژه‌های C# در پروژه‌های واقعی سی‌شارپ آشنا شوید، بهترین روش‌های استفاده از آن‌ها را بیاموزید و مفاهیم پیشرفته‌ای مانند ساختار داده‌ها، الگوریتم‌ها و الگوهای طراحی را با کلیدواژه‌ها ترکیب کنید.

مثال پایه

text
TEXT Code
using System;

namespace CSharpKeywordsDemo
{
class Program
{
static void Main(string\[] args)
{
int number = 10; // 'int' تعریف نوع داده صحیح
string message = "نمونه استفاده از کلیدواژه‌های C#"; // 'string' تعریف رشته

if (number > 5) // 'if' بررسی شرط
{
Console.WriteLine(message);
}
else
{
Console.WriteLine("عدد کمتر یا مساوی 5 است.");
}

for (int i = 0; i < 3; i++) // 'for' حلقه تکرار
{
Console.WriteLine("تکرار شماره: " + i);
}
}
}

}

در این مثال، کلیدواژه‌های int و string برای تعریف نوع داده استفاده شده‌اند. کلیدواژه‌های if و else برای کنترل جریان برنامه و for برای تکرار دستورات به کار رفته‌اند. Console.WriteLine برای نمایش خروجی در کنسول استفاده می‌شود.
این کد به خوبی نشان می‌دهد که چگونه کلیدواژه‌ها در تعریف متغیرها، کنترل جریان و ساختار حلقه‌ها به کار می‌روند. رعایت استانداردهای سی‌شارپ مانند نامگذاری مناسب، مدیریت حافظه خودکار و ساختار واضح کد باعث افزایش کیفیت و قابلیت نگهداری برنامه می‌شود. این مثال پایه‌ای برای درک کلیدواژه‌ها در پروژه‌های پیشرفته‌تر سی‌شارپ است.

مثال کاربردی

text
TEXT Code
using System;

namespace CSharpKeywordsAdvanced
{
abstract class Shape // 'abstract' کلاس انتزاعی
{
public abstract double Area(); // متد انتزاعی
}

class Circle : Shape
{
private double Radius; // 'private' محدودیت دسترسی

public Circle(double radius)
{
this.Radius = radius; // 'this' ارجاع به شیء جاری
}

public override double Area() // 'override' بازنویسی متد انتزاعی
{
return Math.PI * Radius * Radius;
}
}

class Program
{
static void Main()
{
Shape circle1 = new Circle(5); // استفاده از پلی‌مورفیسم
try // 'try' شروع بلاک مدیریت استثنا
{
Console.WriteLine("مساحت دایره: " + circle1.Area());
}
catch (Exception ex) // 'catch' گرفتن استثنا
{
Console.WriteLine("خطا: " + ex.Message);
}
}
}

}

Advanced سی‌شارپ Implementation

text
TEXT Code
using System;
using System.Collections.Generic;

namespace CSharpKeywordsEnterprise
{
interface IEmployee // 'interface' تعریف قرارداد
{
string Details();
}

class Employee : IEmployee
{
public string Name { get; set; }
public int Age { get; set; }

public Employee(string name, int age)
{
this.Name = name;
this.Age = age;
}

public string Details() => $"کارمند: {Name}, سن: {Age}";
}

class Program
{
static void Main()
{
List<IEmployee> employees = new List<IEmployee>
{
new Employee("علی", 30),
new Employee("رضا", 25)
};

foreach (var employee in employees) // 'foreach' پیمایش مجموعه
{
Console.WriteLine(employee.Details());
}
}
}

}

بهترین شیوه‌ها در استفاده از کلیدواژه‌ها شامل نامگذاری واضح، استفاده صحیح از محدوده دسترسی، نوع‌دهی ایمن و جلوگیری از نشت حافظه است. خطاهای رایج شامل استفاده نادرست از کلیدواژه‌ها، حلقه‌های نامناسب و مدیریت ناکافی استثناهاست. کلیدواژه‌ها مستقیماً روی عملکرد، امنیت و قابلیت نگهداری برنامه تاثیر می‌گذارند. تسلط بر آن‌ها برای توسعه نرم‌افزارهای مقیاس‌پذیر و حرفه‌ای در سی‌شارپ ضروری است.

📊 مرجع کامل

سی‌شارپ Element/Method Description Syntax Example Notes
abstract تعریف کلاس یا متد انتزاعی abstract class ClassName {} abstract class Shape {} قابل نمونه‌سازی مستقیم نیست
as تبدیل ایمن نوع object as Type obj as string null در صورت ناموفق بودن
base دسترسی به اعضای کلاس پایه base.MethodName() base.ToString() در ارث‌بری استفاده می‌شود
bool نوع داده بولی bool flag = true; bool active = false true یا false
break قطع حلقه یا switch break; break; متوقف کردن حلقه
byte عدد صحیح ۸ بیتی byte b = 255; byte age = 30; 0–255
case حالت switch case value: case 1: Console.WriteLine("یک"); در switch استفاده می‌شود
catch گرفتن استثنا catch(Exception ex) catch(Exception ex){ } در کنار try
char یک کاراکتر char c = 'A'; char letter = 'M'; ذخیره یک کاراکتر
checked بررسی overflow checked{ } checked{ int x = a + b; } ایجاد Exception در overflow
class تعریف کلاس class ClassName{} class Employee{} پشتیبانی OOP
const ثابت const int x = 5; const double PI = 3.1415; مقدار تغییر ناپذیر
continue پرش به تکرار بعدی حلقه continue; continue; ادامه تکرار بعدی
decimal عدد اعشاری با دقت بالا decimal d = 10.5m; decimal price = 19.99m; مناسب مالی
default حالت پیش‌فرض switch default: default: Console.WriteLine("دیگر"); در switch
delegate نماینده delegate returnType Name(); delegate void MyDelegate(); برای event
do حلقه do-while do{}while(); do { Console.WriteLine("سلام"); } while(i<5); یک بار اجرا می‌شود
double عدد اعشاری دقت بالا double d = 10.5; double pi = 3.14159; ۶۴ بیت
else شرط جایگزین if(condition){} else{} else { Console.WriteLine("False"); } با if
enum enumeration enum Name{ } enum Day{Mon,Tue,Wed}; مقادیر نامگذاری شده
event رویداد event EventHandler Name; event EventHandler OnClick; همراه با delegate
explicit تبدیل صریح explicit operator Type(){ } public static explicit operator int(MyClass c) تبدیل اجباری
extern کد خارجی extern void Method(); extern void Log(); برای unmanaged code

📊 Complete سی‌شارپ Properties Reference

Property Values Default Description سی‌شارپ Support
Access Modifiers public, private, protected, internal private کنترل دسترسی تمام نسخه‌ها
Data Types int, float, double, string, bool, decimal int انواع متغیرها تمام نسخه‌ها
Readonly readonly false فیلد فقط خواندنی پس از سازنده تمام نسخه‌ها
Const const false ثابت زمان کامپایل تمام نسخه‌ها
Static static false عضو مشترک کلاس تمام نسخه‌ها
Abstract abstract false کلاس/متد انتزاعی C# 1.0+
Virtual virtual false متدی که قابل بازنویسی است C# 1.0+
Override override false بازنویسی متد پایه C# 1.0+
Sealed sealed false جلوگیری از ارث‌بری C# 1.0+
Nullable T? null پشتیبانی از نوع nullable C# 2.0+
Volatile volatile false بهینه‌سازی چندنخی C# 2.0+
Unsafe unsafe false اجازه عملیات با pointer C# 2.0+

یادگیری کلیدواژه‌های C# برای نوشتن کد امن، بهینه و قابل نگهداری ضروری است. آن‌ها کنترل جریان، ایمنی نوع و پشتیبانی از OOP را فراهم می‌کنند. پس از تسلط، توصیه می‌شود به LINQ، async/await و الگوهای طراحی پیشرفته پرداخته و پروژه‌های عملی انجام دهید.

🧠 دانش خود را بیازمایید

آماده شروع

Test Your Knowledge

Test your understanding of this topic with practical questions.

4
سوالات
🎯
70%
برای قبولی
♾️
زمان
🔄
تلاش‌ها

📝 دستورالعمل‌ها

  • هر سوال را با دقت بخوانید
  • بهترین پاسخ را برای هر سوال انتخاب کنید
  • می‌توانید آزمون را هر چند بار که می‌خواهید تکرار کنید
  • پیشرفت شما در بالا نمایش داده می‌شود