Zasady SOLID w C#

Zasady SOLID w C#: 5 reguł na prawdziwych przykładach z .NET

Znasz definicje SOLID na pamięć, ale wciąż nie wiesz, kiedy ich użyć? To najczęstszy problem na drodze junior → mid. Większość tutoriali tłumaczy zasady SOLID w C# na abstrakcyjnych kwadratach, prostokątach i niekończącym się Animal → Dog. Problem w tym, że w prawdziwym projekcie nie refaktoryzujesz zwierząt — refaktoryzujesz zamówienia, płatności i powiadomienia.

Stringi w C#

Stringi w C# — Interpolacja, Formatowanie i Verbatim Stringi

Praca ze stringami to jedna z tych rzeczy, które w C# robisz praktycznie codziennie.
Wyświetlanie danych użytkownika, budowanie logów, generowanie komunikatów, tworzenie ścieżek do plików czy przygotowywanie maili — wszystko sprowadza się do poprawnego składania tekstu.

IEnumerable vs IQueryable w EF Core

IEnumerable vs IQueryable w EF Core – wydajność i pułapki

Masz działający kod w EF Core, wrzucasz go na produkcję… i nagle aplikacja zaczyna zużywać ogromne ilości RAM, a baza danych dostaje zadyszki? W wielu przypadkach przyczyną jest jedna, pozornie niewinna decyzja: użycie IEnumerable zamiast IQueryable. W tym artykule pokażę Ci realny problem produkcyjny, wyjaśnię jak działa EF Core pod maską i pokażę, jak pisać wydajny kod zgodny z Clean Architecture.

Pseudokod w programowaniu — czym jest i kiedy go używać

Pseudokod to narzędzie każdego programisty — nie tylko juniora. Dowiedz się, czym jest, jak go pisać w C# i kiedy uratuje Ci projekt. Przykłady i schematy.
W tym artykule wyjaśniam, czym dokładnie jest pseudokod, kiedy po niego sięgać i jak może uratować Ci projekt — albo przynajmniej piątkowy wieczór.

Czym jest statement w programowaniu? Instrukcje w kodzie

Kiedy po raz pierwszy siadasz przed edytorem i zaczynasz pisać kod, wszystko wygląda jak chaos symboli. Średniki, nawiasy, znaki równości w dziwnych miejscach. Ale jest jedna koncepcja, która porządkuje ten obraz od razu — **statement**, czyli instrukcja. To absolutna podstawa każdego języka programowania. Zrozum, czym jest statement, a czytanie i pisanie kodu stanie się nagle o wiele bardziej intuicyjne.

Tall LINQ vs Wide LINQ

Tall LINQ vs Wide LINQ – jak pisać czytelny i bezpieczny LINQ w C#

Pisanie zapytań LINQ w C# wygląda na proste… dopóki kod nie zacznie żyć własnym życiem. Jedna długa linia, kilka Where, Select, OrderBy i nagle czytelność znika, code review boli, a każda zmiana grozi błędem. W tym artykule pokażę Ci, dlaczego Tall LINQ wygrywa z Wide LINQ, i jak pisać zapytania LINQ, które są czytelne, bezpieczne i przyjazne w utrzymaniu.

Unit Testing Application Layer w .NET

Unit Testing Application Layer w .NET – Mockowanie zależności z Moq [Część 13]

Testowanie Application Layer w .NET to moment, w którym wielu programistów zaczyna improwizować. Klasy mają zależności, pojawiają się repository, serwisy, pliki… a testy nagle przestają być unit. W tym artykule pokażę Ci jak testować Application Layer poprawnie, używając mockowania z Moq, na realnym przykładzie GameService. Bez teorii dla teorii. Z kodem, który działa i skaluje się w projektach enterprise.

Refaktoryzacja Clean Architecture

Refaktoryzacja kodu do Clean Architecture – BattleService w Core [3/6]  [Część 8]

Masz wrażenie, że Twój Program.cs robi wszystko naraz – od wyświetlania UI po symulację logiki biznesowej?
To klasyczny objaw spaghetti code.
W tym artykule pokażę Ci, jak przenieść logikę do Service Layer, zyskać czystość architektury i przygotować kod pod testy jednostkowe. Wszystko w praktycznym przykładzie refaktoryzacji RPG w C# i .NET.

Repository Pattern

Repository Pattern w C# – Refaktoryzacja kodu do Clean Architecture [2/6]  [Część 7]

Masz wrażenie, że Twoja klasa robi zbyt wiele? Wczytuje dane z pliku, deserializuje JSON i jeszcze tworzy obiekty? To klasyczny problem, który prowadzi do chaosu i łamania zasad SOLID. W tym wpisie pokażę Ci, jak w praktyce wykorzystać Repository Pattern w C# w ramach Clean Architecture, aby oddzielić domenę od warstwy danych i stworzyć elastyczny, testowalny kod.