Koncepcja nauki C# w ZSNR1 w ujęciu konsolowym, desktopowym i mobilnym
Etap 1: Fundamenty C# (konsola, VS2022 lub VSC)
- Podstawy języka C#:
- zmienne, typy danych, operatory
- instrukcje warunkowe i pętle
- proste programy konsolowe
- Obiekty i klasy:
- klasy, właściwości, metody
- konstruktory, zdarzenia
- tworzenie obiektów, przekazywanie danych między klasami
- Programowanie obiektowe:
- dziedziczenie, polimorfizm, enkapsulacja
- interfejsy i klasy abstrakcyjne
Etap 2: Praktyka z danymi i kolekcjami
- Kolekcje i zbiory:
- listy, słowniki, kolejki, HashSet
- pętle foreach, LINQ (na prostych przykładach)
- Praca z plikami i strumieniami:
- zapis/odczyt do pliku (txt, csv)
- podstawy File, StreamReader, StreamWriter
- Testy jednostkowe
Etap 3: Interfejsy graficzne (desktop)
- Windows Forms (WinForms):
- formularze, przyciski, zdarzenia
- przekazywanie danych między formularzami
- obsługa danych wejściowych/wyjściowych
Etap 4: Programowanie mobilne (Visual Studio 2022)
- .NET MAUI (aplikacje mobilne):
- podstawowy layout, strony, nawigacja
- dane lokalne, zdarzenia, proste UI
- kompatybilność z tym co znałeś z WinForms
Etap 5: Zaawansowane możliwości C#
- Asynchroniczność i wielowątkowość:
- async, await, Task
- podstawy Thread, Timer
- Programowanie funkcyjne:
- wyrażenia lambda, funkcje anonimowe
- metody rozszerzające, LINQ (bardziej zaawansowane)
Etap 6: Praca z bazami danych
- Bazy danych SQL:
- ADO.NET i Entity Framework Core
- operacje CRUD z bazą danych (np. SQLite lub SQL Server)
- Bazy danych NoSQL (opcjonalnie):
- MongoDB + driver dla C#
Etap 7: Inne zastosowania (opcjonalne)
- JSON i XML:
- odczyt/zapis danych w formacie JSON i XML
- Praca z siecią:
- TcpClient, NetworkStream (na prostych przykładach)
- Bezpieczeństwo:
- haszowanie, szyfrowanie danych (podstawy)
- Testowanie i debugowanie:
- Debug, Try-Catch, testy jednostkowe

