Prawie zawsze formatuję kod, zanim zdecyduję się upewnić, że został on wykonany poprawnie. Większość mojego zespołu tak naprawdę nie obchodzi i nie zawsze poprawnie formatuje swój kod (drobne rzeczy, które nie wpływają na kod, ale wpływają na czytelność podczas próby jego utrzymania).
Niedawno zainstalowałem elektronarzędzia VS z opcją „Formatuj przy zapisywaniu” i wprowadziłem zmiany w pliku, który nie był wcześniej sformatowany. VP programisty właśnie do mnie przyszedł i napomniał mnie za formatowanie, ponieważ pojawia się ono w narzędziu scalającym jako zmienione prawie cały plik, a nie tylko wiersz lub dwa (więc nie widzi dokładnie tego, co łatwo zmodyfikowałem), i kazał mi wyłączyć format przy zapisywaniu w przyszłości. Rozumiem tę troskę, ale czasami trudno mi posortować kod, który jest niesformatowany, a IMO powinno i tak zawsze być odpowiednio sformatowane. Zauważ, że nie tylko zmieniam formatowanie kaprysu, ale kiedy piszę kod, albo użyję elektronarzędzia, albo uderzę klawiszem klawisza, aby sformatować tekst, aby ułatwić czytanie, a w SVN jest to wyświetlane jako modyfikacja.
Pytam więc, czy zawsze formatowanie kodu jest złą rzeczą? Czy jego obawy są ważniejsze niż upewnienie się, że kod jest czytelny?
źródło
Odpowiedzi:
Po pierwsze, Twój zespół musi wybrać konwencję formatowania i trzymać się jej. Musisz dojść do porozumienia i sprawić, by wszyscy się go trzymali, abyś nie miał ludzi walczących o to, jak powinno wyglądać. To nie powinno być coś, co robisz sam.
Co do twojego prawdziwego pytania. Formatowanie kodu nie jest złą rzeczą. Złe jest wprowadzanie poważnych zmian formatowania w tym samym zatwierdzeniu co zmiany kodu. Kiedy twój zespół dojdzie do konsensusu co do tego, jak należy sformatować rzeczy, przepuść kod i sformatuj wszystko. Sprawdź to samo. Komunikat zatwierdzenia wyjaśni, że zmiany są tylko białą spacją i nie działają. Następnie, gdy trzeba wprowadzić zmiany funkcjonalne, są one w innym zatwierdzeniu, aby były wyraźnie widoczne.
źródło
Nie, kod formatujący jest bardzo ważny . Jednak zatwierdzenia powinny być wykonywane w dwóch grupach:
Użyj komunikatu zatwierdzenia, aby zaznaczyć, że zmieniono tylko kosmetyki. Można je łatwo pominąć, szukając bardziej znaczących modyfikacji.
źródło
Oboje macie rację, ale oboje możecie dostać to, czego chcecie. Najpierw sformatuj kod, zaznacz tylko tę zmianę. Następnie wprowadź zmiany funkcjonalne i sprawdź to jako drugi krok.
źródło
Jestem też formatującym próbnikiem nitów, więc oto kilka wskazówek:
Wymagany pierwszy krok: poproś zespół, aby zgodził się na kilka podstawowych standardów formatowania, takich jak tabulatory vs. spacje, pozycje nawiasów, style komentarzy itp. Teraz zmiany w formatowaniu nie będą dla wszystkich zaskoczeniem i nie zrobisz kroku na dowolnych palcach.
Wyczyść formatowanie tylko wokół zmienianego kodu. Jeśli wprowadzisz zmiany tylko w jednej funkcji, wyczyść tę funkcję. Przynajmniej z czasem będziesz mieć lepiej wyglądający kod.
Dokonuj poważniejszych przeglądów formatowania jako osobnego zatwierdzenia, bez żadnych innych zmian w kodzie. Powinieneś to zrobić tylko wtedy, gdy po zmianie nie będziesz chciał porównywać kodu, ponieważ porównywanie różnych różnic może być denerwujące. Zwykle robię porządki jako pierwszą rzecz przed poważnym opracowaniem tego kodu.
Uzyskaj dobre narzędzie do porównywania, które może wykonywać zależne od języka oznaczanie znaczących i nieistotnych zmian. Mój ulubiony plik różnicowy Beyond Compare oznacza rzeczywiste zmiany kodu w jednym kolorze, a różnice w białych znakach / komentarzach w innym.
edytuj, aby uzyskać jeszcze jedną wskazówkę:
źródło
Nie powinieneś ponownie formatować ani zatwierdzać zmian w kodzie innych osób, chyba że:
Za każdym razem zauważysz, że odnoszę się do standardów kodowania zespołu. Mocno wierzę w rozsądne, uzgodnione standardy kodowania dla zespołu. Jeśli je masz, oryginalny programista powinien wrócić i wyczyścić swój kod, aby zachować zgodność ze standardami zespołu, nie powinieneś tego robić za ich plecami. Jeśli nie masz standardów (i powinieneś), nie powinieneś modyfikować kodu innego członka zespołu, aby stosować się do twoich filozofii, szczególnie za ich plecami. Pamiętaj, że należysz do zespołu i chociaż standardy kodowania są ważne, tak samo jak zaufanie i szacunek między członkami zespołu.
źródło