Wprowadzenie do języka C#

1. Czym jest C#?

  • C# (czytaj: C sharp) – nowoczesny, obiektowy język programowania stworzony przez firmę Microsoft w ramach platformy .NET.
  • Został zaprezentowany w 2000 roku jako część środowiska .NET Framework i szybko stał się jednym z głównych języków w ekosystemie Microsoftu.
  • Łączy w sobie cechy języków takich jak C, C++ i Java, oferując prostotę, bezpieczeństwo typów i bogaty zestaw bibliotek.

2. Główne cechy C#

  • Język obiektowy – oparty na paradygmacie programowania obiektowego (klasy, dziedziczenie, polimorfizm, enkapsulacja).
  • Silne typowanie – kompilator wymaga zgodności typów danych, co zmniejsza liczbę błędów.
  • Nowoczesna składnia – czytelna i przyjazna, podobna do Javy czy C++.
  • Automatyczne zarządzanie pamięcią – dzięki mechanizmowi Garbage Collector programista nie musi ręcznie zwalniać pamięci.
  • Bezpieczeństwo – język ogranicza bezpośredni dostęp do pamięci, co minimalizuje ryzyko błędów.
  • Wieloplatformowość – dzięki .NET 5/6/7 (Core) można pisać programy działające na Windows, Linux i macOS.
  • Wsparcie dla programowania asynchronicznego – słowa kluczowe async i await ułatwiają pisanie aplikacji responsywnych i wielowątkowych.
  • Interoperacyjność – C# potrafi współpracować z bibliotekami napisanymi w innych językach.

3. Platforma .NET i środowiska pracy

  • .NET Framework – starsza wersja, działa głównie na Windows.
  • .NET (Core, od wersji 5 wzwyż) – nowoczesna, wieloplatformowa implementacja.
  • Mono – open-source’owa implementacja .NET, wykorzystywana np. w Unity.
  • Najpopularniejsze środowiska:
    • Visual Studio (pełna wersja, bogate funkcje dla programistów).
    • Visual Studio Code (lekki edytor z rozszerzeniami C#).
    • JetBrains Rider (alternatywa komercyjna).

4. Pierwszy program w C#

Przykładowy kod „Hello, World!”:

Wyjaśnienie:

  • using System; – import przestrzeni nazw (namespace) z klasami do obsługi konsoli.
  • class Program – definicja klasy, w C# wszystko znajduje się w klasach/strukturach.
  • static void Main() – punkt wejścia programu.
  • Console.WriteLine() – metoda wypisująca tekst na ekran.

5. Podstawowe typy danych

  • Typy proste: int, double, float, bool, char.
  • Typ string – do przechowywania tekstu.
  • Typ var – zmienna, której typ zostanie wywnioskowany przez kompilator.
  • Typy nullable: int? (oznacza, że może być liczbą lub null).

Przykład:


6. Struktury programistyczne

Instrukcje warunkowe

Pętle


7. Programowanie obiektowe w C#

Przykład klasy i obiektu:


8. Zalety nauki C#

  • Duże wsparcie społeczności i dokumentacji.
  • Uniwersalność – nadaje się do aplikacji desktopowych, webowych, mobilnych, gier (Unity), a nawet IoT.
  • Stabilność i rozwój – Microsoft stale aktualizuje język i platformę.
  • Wysokie zapotrzebowanie na rynku pracy.

9. Gdzie używa się C#?

  • Aplikacje desktopowe (Windows Forms, WPF).
  • Aplikacje webowe (ASP.NET Core).
  • Aplikacje mobilne (Xamarin, MAUI).
  • Gry komputerowe (Unity Engine).
  • Usługi chmurowe (Azure).