Formatowanie kodu programowo z DotNet Format
W tym artykułe omówimy proces formatowania kodu C# .NET programowo przy użyciu narzędzia dotnet format. Niniejszy przewodnik opiera się na samouczku wideo Geralda Versluisa pt. "Formatuj kod C# .NET automatycznie za pomocą DotNet Format", w którym autor pokazuje, jak efektywnie korzystać z tego narzędzia, aby zapewnić zgodność kodu z jednolitymi standardami formatowania. Podam znaczniki czasu i szczegółowe wyjaśnienia tego, co Gerald zrobił w filmie, aby pomóc Ci śledzić i zastosować te techniki w swoich projektach.
Wprowadzenie do formatu DotNet
W (0:36) Gerald przedstawia dotnet format jako narzędzie zaprojektowane do formatowania kodu C# w oparciu o reguły zdefiniowane w pliku .editorconfig. Plik ten ma kluczowe znaczenie dla egzekwowania spójnych stylów kodowania w całym projekcie. Zapewnia to, że cały kod jest zgodny z tymi samymi wytycznymi dotyczącymi formatowania, które mogą obejmować:
- Styl wcięć: czy używać tabulatorów, czy spacji.
- Zasady dotyczące odstępów: Wielkość odstępów wokół operatorów, nawiasów klamrowych itp.
- Struktura kodu: Sposób formatowania konstrukcji jedno- i wielowierszowych.
Stosując te zasady, format dotnet pomaga zachować jednolity kod źródłowy, ułatwiając jego czytanie i zarządzanie.
Zrozumienie pliku .editorconfig
Plik .editorconfig, jak wyjaśnia Gerald w (0:48), określa różne preferencje dotyczące stylu kodowania. Ten plik jest bardzo elastyczny i pozwala na zdefiniowanie szerokiego zakresu reguł formatowania, w tym:
- Preferencje wcięć: Określa, czy do wcięć używane są tabulatory czy spacje oraz ile spacji jest używanych.
- Wytyczne dotyczące odstępów: Regulują odstępy wokół elementów kodu, takich jak operatory, nawiasy i słowa kluczowe.
- Inne zasady formatowania: Określają dodatkowe zasady stylistyczne w celu zapewnienia spójności kodu.
Plik .editorconfig służy jako centralny punkt konfiguracji formatowania kodu w różnych edytorach i środowiskach IDE.
Przegląd narzędzia DotNet Format Tool
Gerald wyjaśnia, że format dotnet jest globalnym narzędziem dla środowiska uruchomieniowego .NET (1:13). Ponieważ jest to narzędzie globalne, można je zainstalować raz i używać w różnych projektach .NET w systemie. Pozwala to na spójne formatowanie kodu bez konieczności oddzielnych instalacji lub konfiguracji dla każdego projektu.
Dostęp do repozytorium dotnet format można uzyskać na GitHubie pod adresem (1:26). To repozytorium zawiera kod źródłowy, dokumentację i dodatkowe informacje o narzędziu, pomagając użytkownikom zrozumieć jego funkcje i być na bieżąco z najnowszymi wersjami.
Podstawowe zastosowanie formatu DotNet
W (2:09) Gerald demonstruje podstawowe polecenie użycia dotnet format:
dotnet format <options> <workspace>
dotnet format <options> <workspace>
Czym jest obszar roboczy?
W kontekście formatu dotnet termin "workspace" odnosi się do zakresu kodu, który zostanie sformatowany. Może to obejmować:
- Plik rozwiązania: Plik .sln obejmujący wiele projektów.
- Plik projektu: pojedynczy plik .csproj zawierający konkretne pliki kodu.
- Folder: katalog zawierający wiele plików kodu, w tym pliki .cs i ewentualnie .vb.
Elastyczność w określaniu różnych typów obszarów roboczych pozwala na stosowanie formatowania na różnych poziomach projektu.
Funkcje i opcje
Gerald podkreśla kilka kluczowych funkcji i opcji formatu dotnet w (2:27):
- Automatyczne poprawianie: Narzędzie może automatycznie korygować problemy z formatowaniem na podstawie reguł zdefiniowanych w pliku .editorconfig. Jest to przydatne do utrzymania spójnego stylu kodu w całym projekcie bez konieczności ręcznej interwencji.
- Tylko sprawdź: Jeśli wolisz przejrzeć kwestie formatowania bez wprowadzania zmian, możesz użyć tego narzędzia wyłącznie do sprawdzenia błędów. Ta funkcja jest szczególnie przydatna w procesach ciągłej integracji (CI).
Opcje zaawansowane i dostosowywanie
Gerald bada zaawansowane opcje i możliwości dostosowywania. Wspomina on:
- Poziom ważności: pozwala określić, które poziomy ważności problemów powinny zostać naprawione. Pomaga to w identyfikacji konkretnych rodzajów problemów związanych z formatowaniem.
- Włączanie/wyłączanie plików: Możesz kontrolować, które pliki są uwzględniane lub wykluczane z formatowania. Jest to przydatne do skupienia się na konkretnych częściach kodu źródłowego.
- Sprawdź tylko z kodem wyjścia: Korzystając z tej opcji, możesz sprawdzić, czy występują jakieś problemy z formatowaniem, bez wprowadzania poprawek. Kod wyjścia wskaże, czy wykryto jakieś problemy.
- Raport JSON: Generuje szczegółowy raport w formacie JSON, dostarczając informacji na temat stanu formatowania kodu.
- Verbosity: Ustaw poziom Verbosity, aby kontrolować ilość generowanych wyników.
- Wersja narzędzia: Sprawdź wersję dotnet format, aby zapewnić zgodność z Twoim projektem i być na bieżąco z nowymi funkcjami.
Instalacja narzędzia Dotnet Format Tool
Gerald zaczyna od wyjaśnienia procesu instalacji narzędzia dotnet format, które jest niezbędne do programowego formatowania kodu C#. Pokazuje, jak skonfigurować to jako narzędzie globalne za pomocą następującego polecenia:
dotnet tool install -g dotnet-format
dotnet tool install -g dotnet-format
To polecenie zapewnia, że format dotnet jest dostępny globalnie, umożliwiając łatwy dostęp z dowolnego wiersza poleceń lub terminala. Gerald podkreśla konieczność posiadania środowiska uruchomieniowego .NET Core, które należy zainstalować, jeśli ostatnio pracowałeś z platformą .NET.

Aby potwierdzić, że instalacja przebiegła pomyślnie, o godz. 16:00 Gerald uruchamia:
dotnet format /?
dotnet format /?
To polecenie wyświetla listę dostępnych opcji i poleceń, sprawdzając, czy dotnet format jest poprawnie zainstalowany i gotowy do użycia.

W (4:11) Gerald zauważa, że niektóre opcje, takie jak --dry-run, są przestarzałe i zaleca stosowanie zaktualizowanych praktyk formatowania kodu.
Wprowadzanie poprawek formatowania kodu
Sprawdzanie problemów z formatowaniem
Korzystając z kodu źródłowego Xamarin Community Toolkit jako praktycznego przykładu, Gerald najpierw sprawdza, czy nie ma problemów z formatowaniem, nie wprowadzając żadnych zmian. Uruchamia:
dotnet format . -f --check
dotnet format . -f --check
w celu zidentyfikowania plików wymagających formatowania. Gerald w (5:26) wyjaśnia, jak można określić obszar roboczy za pomocą opcji --folder dla katalogów lub dotnet format sln dla plików rozwiązań. To polecenie wyświetla listę plików z problemami formatowania.
Sprawdzanie poziomu błędów
Każdy wykonywany proces ma kod wyjścia wskazujący jego status. Gerald wykonał następujące polecenie, aby sprawdzić poziom błędów:
echo %errorlevel%
echo %errorlevel%
Gerald pokazuje, że kod wyjścia 2 sygnalizuje obecność błędów formatowania, które należy naprawić.

Wprowadzanie i weryfikacja poprawek
Następnie Gerald pokazuje, jak zastosować poprawki formatowania, uruchamiając ponownie polecenie, ale bez flagi --check:
dotnet format . -f
dotnet format . -f
Spowoduje to automatyczne sformatowanie plików kodu zgodnie z regułami zdefiniowanymi w pliku .editorconfig. Gerald ponownie sprawdza kod wyjścia za pomocą tego samego polecenia, co powyżej, aby upewnić się, że wynosi on 0, co oznacza, że wszystkie problemy z formatowaniem zostały rozwiązane.
Aby zweryfikować zmiany, o godz. 8:00 korzysta z narzędzia graficznego, takiego jak GitHub Desktop, w celu przejrzenia zaktualizowanych plików. Narzędzie pokazuje ulepszenia, takie jak poprawione odstępy, uporządkowane instrukcje using oraz inne poprawki formatowania.

Włączanie formatowania do swojego procesu pracy
Gerald zaleca włączenie narzędzia do formatowania dotnet do procesu ciągłego wdrażania (CI). Praktyka ta zapewnia spójne stosowanie formatowania kodu i pomaga utrzymać wysokie standardy jakości kodu. Dzięki automatyzacji procesu formatowania można uniknąć ręcznych zadań związanych z formatowaniem i zapewnić, że cały kod jest zgodny z określonymi zasadami stylistycznymi.
Wnioski
Postępując zgodnie ze szczegółową instrukcją Geralda, możesz łatwo zintegrować format dotnet ze swoim procesem programowania, aby zautomatyzować formatowanie kodu C# .NET. Niezależnie od tego, czy pracujesz samodzielnie, czy w zespole, to narzędzie pomaga zapewnić, że Twój kod pozostaje przejrzysty, spójny i łatwy do odczytania. Koniecznie obejrzyj film Geralda, aby zapoznać się z praktyczną demonstracją i uzyskać więcej informacji na temat narzędzia dotnet format. Zajrzyj też na jego kanał na YouTube, żeby dowiedzieć się więcej o kodzie C#.

