- Qoşulub
- 1 Oktyabr 2022
- Mesajlar
- 121
1. Ümumi Məlumat
- C# (C Sharp) — Microsoft tərəfindən 2000-ci illərdə hazırlanmış, obyekt yönümlü (OOP) proqramlaşdırma dili.
- .NET Framework və .NET Core platformalarının əsas dillərindən biridir.
- Adətən desktop proqramları, veb tətbiqləri, oyunlar (Unity mühərriki), mobil tətbiqlər (Xamarin, MAUI) və hətta bulud texnologiyaları üçün geniş istifadə olunur.
- Sintaksisi Java və C++ dillərinə çox oxşardır.
2. C#-ın Xüsusiyyətləri
- Sadəlik – Java və C++-a oxşar olduğuna görə öyrənilməsi asandır.
- Obyekt yönümlü – Class, object, inheritance, polymorphism, encapsulation dəstəklənir.
- Tip təhlükəsizliyi (Type Safety) – Yaddaş idarəsi və tip uyğunluğu güclüdür.
- Avtomatik yaddaş idarəsi (Garbage Collector) – İstifadə olunmayan obyektləri silir.
- Çoxparadigmalı – OOP, Functional Programming, Event-driven programming yanaşmalarını dəstəkləyir.
- Platformadan asılı olmamaq – .NET 5/6/7 və .NET Core vasitəsilə Windows, Linux, macOS üzərində işləyə bilir.
3. C#-ın İstifadə Sahələri
- Desktop tətbiqləri → Windows Forms, WPF
- Veb tətbiqləri → ASP.NET, Blazor
- Mobil tətbiqlər → Xamarin, .NET MAUI
- Oyun inkişafı → Unity Engine
- Bulud texnologiyaları → Microsoft Azure, AWS
- API və mikroservislər → REST, gRPC
4. C#-da Əsas Anlayışlar
a) Data Type-lar (Məlumat tipləri)
- Value types: int, float, double, bool, char
- Reference types: string, class, object, array
- Nullable types: int?, bool?
b) Dəyişənlər və Konstantalar
C#:
int yas = 25;
const double PI = 3.14;
string ad = "İlqar";
c) Əmrlər və Dövrlər
C#:
if (yas >= 18)
Console.WriteLine("Yetkin");
else
Console.WriteLine("Uşaq");
for (int i = 0; i < 5; i++)
Console.WriteLine(i);
d) Metodlar
C#:
static int Topla(int a, int b)
{
return a + b;
}
e) Class və Obyektlər
C#:
class Insan
{
public string Ad { get; set; }
public int Yas { get; set; }
public void Tanit()
{
Console.WriteLine($"Ad: {Ad}, Yaş: {Yas}");
}
}
class Program
{
static void Main()
{
Insan insan = new Insan { Ad = "İlqar", Yas = 33 };
insan.Tanit();
}
}
5. Obyekt-Yönümlü Prinsiplər (OOP)
- Encapsulation (Qapalıq) – məlumatların gizlədilməsi.
- Inheritance (İrsiyyət) – bir class-ın digərindən miras alması.
- Polymorphism (Çoxformallıq) – eyni metodun fərqli şəkildə işləməsi.
- Abstraction (Abstraksiya) – lazımsız detalları gizlədərək əsas funksiyaları təqdim etmə.
6. Əlavə Mövzular
- LINQ (Language Integrated Query) – verilənlər üzərində sorğular yazmaq imkanı.
- Asynchronous Programming (async/await) – eyni anda çox iş görmək (multithreading).
- Delegates və Events – callback və hadisə idarəsi.
- Generics – tipdən asılı olmayan class və metodlar.
- Dependency Injection – böyük layihələrdə asılılıqları idarə etmək.
7. Nümunə: Sadə Konsol Proqramı
C#:
using System;
class Program
{
static void Main()
{
Console.Write("Adınızı daxil edin: ");
string ad = Console.ReadLine();
Console.WriteLine($"Salam, {ad}! C# dünyasına xoş gəldiniz!");
}
}
8. C#-ın Üstünlükləri və Çatışmazlıqları
- Microsoft dəstəyi
- Böyük ekosistem və kitabxanalar
- Platformadan asılı olmamaq
- Güclü OOP və təhlükəsiz yaddaş idarəsi
- Daha çox resurs tələb edə bilər (yaddaş və RAM istifadəsi)
- Çox aşağı səviyyəli proqramlaşdırmaya (hardware səviyyəsində) uyğun deyil
- Əsasən Microsoft ekosisteminə bağlıdır
Nəticə
C# həm başlanğıc öyrənmək istəyənlər, həm də peşəkar proqramçılar üçün geniş imkanlar təqdim edən güclü, müasir və çoxparadigmalı proqramlaşdırma dilidir. Onunla sadə konsol tətbiqindən tutmuş böyük miqyaslı veb servislərə və oyunlara qədər hər şeyi inkişaf etdirmək mümkündür.