Obsługa standardów kodowania w pracy (nie jestem szefem)

40

Pracuję w małym zespole, około 10 deweloperów. W ogóle nie mamy standardów kodowania. Są pewne rzeczy, które stały się normą, ale niektóre sposoby robienia rzeczy są całkowicie odmienne. Mój duży to wcięcie. Niektóre używają tabulatorów, niektóre używają spacji, niektóre używają innej liczby spacji, co stwarza ogromny problem. Często łączę się z konfliktami, gdy łączę się, ponieważ ktoś użył ich IDE do automatycznego formatowania, a oni używają innego znaku do wcięcia niż ja. Nie obchodzi mnie, z którego korzystamy. Chcę, żebyśmy wszyscy korzystali z tego samego.

Albo otworzę plik, a niektóre wiersze mają nawiasy klamrowe w tym samym wierszu co warunek, podczas gdy inne mają je w następnym wierszu. Znów nie mam nic przeciwko temu, o ile wszystkie są takie same.

Podniosłem kwestię standardów do mojego bezpośredniego menedżera, jeden na jednego i na spotkaniach grupowych, i nie jest on tym zbytnio zaniepokojony (jest kilku innych, którzy podzielają ten sam pogląd jak ja). Podniosłem swoją szczególną troskę o znaki wcięcia, a on pomyślał, że lepszym rozwiązaniem byłoby „stworzyć jakiś skrypt, który mógłby przekonwertować to wszystko, kiedy wypychamy / ściągamy z repozytorium”. Podejrzewam, że nie chce się zmieniać, a to rozwiązanie wydaje się zbyt skomplikowane i podatne na problemy związane z utrzymaniem na późniejszym etapie (dotyczy to tylko jednego przejawu większego problemu).

Czy któryś z was napotkał podobną sytuację w pracy? Jeśli tak, jak sobie z tym poradziłeś? Jakie byłyby dobre punkty, aby pomóc sprzedać mojemu szefowi według standardów? Czy dobrym pomysłem byłoby rozpoczęcie oddolnego ruchu w celu stworzenia standardów kodowania wśród tych z nas, którzy są zainteresowani? Czy jestem zbyt szczególny, czy powinienem po prostu odpuścić?

Dziękuję wszystkim za poświęcony czas.

Uwaga: Dziękujemy wszystkim za wspaniałe opinie! Mówiąc wprost, nie chcę dyktować jednego stylu, aby rządzić nimi wszystkimi. Jestem skłonny przyznać się do preferowanego przeze mnie sposobu robienia czegoś na korzyść tego, co najbardziej odpowiada każdemu. Chcę konsekwencji i chcę, aby była to demokracja. Chcę, aby była to decyzja grupowa, na którą wszyscy się zgadzają. To prawda, że ​​nie wszyscy zdążą, ale mam nadzieję, że wszyscy będą wystarczająco dojrzali, aby pójść na kompromis dla poprawy grupy.

Uwaga 2: Niektóre osoby są przyłapane na dwóch przykładach, które podałem powyżej. Bardziej chodzi mi o sedno sprawy. Przejawia się to wieloma przykładami: konwencje nazewnictwa, ogromne funkcje, które powinny zostać rozbite, jeśli coś pójdzie w użyciu lub usłudze, jeśli coś będzie stałe lub wstrzyknięte, czy wszyscy powinniśmy używać różnych wersji zależności lub tego samego, jeśli W tym przypadku należy użyć interfejsu, jak skonfigurować testy jednostkowe, co należy przetestować, (specyficzne dla Javy), czy powinniśmy używać adnotacji lub konfiguracji zewnętrznej. Mógłbym kontynuować.

Josh Johnson
źródło
3
Niektóre narzędzia do scalania dają opcję ignorowania różnic białych znaków. Nie rozwiązałoby to podstawowej przyczyny, ale mogłoby złagodzić pośredni ból ...
FrustratedWithFormsDesigner
5
Dlaczego nie podoba Ci się rozwiązanie menedżera dotyczące formatowania kodu, gdy jest on przekazywany do kontroli źródła?
Larry Coleman
5
Myślę, że to problem społeczny, a nie techniczny. Jeśli zespół nie może uzgodnić standardów, IMO nie pomoże żadna technologia.
Bryan Oakley
11
KAŻDY powinien używać autoformatowania IDE z tymi samymi ustawieniami. Po prostu to zrób.
1
@ Thorbjørn - Uzgodniony. Właśnie wydaliśmy wczoraj globalne ustawienia IDE.
Adrian J. Moreno,

Odpowiedzi:

73

Współpracownik i ja mieliśmy podobny problem w naszym zespole, kiedy po raz pierwszy dołączyliśmy (najpierw dołączyłem do zespołu, on dołączył około rok później). Nie było prawdziwych standardów kodu. Jesteśmy sklepem MS i nawet standardy kodowania MS nie były używane. Postanowiliśmy dać przykład. Usiedliśmy razem i opracowaliśmy dokument, który zawiera wszystkie nasze standardy: standardy IDE, standardy nazewnictwa, wszystko, co możemy wymyślić. Potem on i ja uzgodniliśmy, że będziemy ściśle przestrzegać tego standardu. Wysłałem e-mail do zespołu (od nas obu) i powiadomiłem ich, że stwierdziliśmy brak i zamierzamy rozwiązać ten problem za pomocą naszego dokumentu. Zaprosiliśmy krytykę, pomysły, komentarze, opinie. Otrzymaliśmy bardzo niewiele informacji zwrotnych i tylko niewielką liczbę odpowiedzi. On i ja natychmiast zaczęliśmy stosować standardy, a kiedy włączyliśmy młodszych programistów do naszych projektów, wprowadziliśmy ich do standardu i zaczęli go używać. Mamy kilku potencjalnych klientów, którzy początkowo byli niechętni, ale powoli zaczęliśmy używać standardu do wielu rzeczy.

Odkryliśmy, że wielu młodszych programistów rozpoznało ten sam problem, ale czekało, aż ktoś inny podejmie decyzję i podejmie decyzję. Kiedy był już plan do naśladowania, wielu chętnie go przyjęło. Twarde orzechy do zgryzienia to te, które odmawiają kodowania w jakikolwiek inny sposób, i na dłuższą metę zwykle same się zakodują.

Jeśli chcesz standardów, wytycz ścieżkę. Wymyśl sugerowaną listę standardów, które Twoim zdaniem przyniosą korzyści Twojemu zespołowi. Prześlij go do użytkowników i potencjalnych klientów, aby uzyskać informacje zwrotne. Jestem pewien, że inni ludzie w twoim zespole mają podobne pomysły, ale prawdopodobnie nie mają ochoty nic z tym zrobić. Jak powiedział Gandhi: „Musisz być zmianą, którą chcesz zobaczyć na świecie”.

Joel Etherton
źródło
4
Podoba mi się pomysł, aby zacząć od tych, którzy się zgadzają! Dodam do tego, że im łatwiej jest ci znaleźć i przestrzegać standardów, tym bardziej prawdopodobne jest, że ludzie to zrobią - upewnij się, że jeśli masz narzędzia do formatowania IDE, instrukcje instalacji i wszelkie pliki konfiguracyjne są łatwe do znalezienia a instalacja jest dobrze udokumentowana.
bethlakshmi
1
Krótko mówiąc, trzymaj się standardu, zanim spodziewasz się, że inni będą trzymać się tego samego standardu. Zacznij od określenia, z czego korzysta większość twórców zespołów, i skonfiguruj środowisko, aby to robiło.
Freiheit
2
+1 Właśnie tak poradziliśmy sobie z tą samą sytuacją. Przekonałem się, że dawanie przykładu najczęściej naprawia wiele problemów w sklepie deweloperskim - ale musisz mieć wygrane wpisowe od innych. Jeśli jesteś jedynym, który płonie ścieżką, prawdopodobnie powinieneś ponownie ocenić ścieżkę w pierwszej kolejności.
Jduv
1
Joel, ta historia zainspirowała moich współpracowników i mnie. Podnosimy pochodnię, wykorzystując twoją historię jako szablon.
Josh Johnson
Częściowo zgadzam się z tobą, zaczynając od tego, który się zgadza, ale nie zgadzam się z „Usiedliśmy razem i sporządziliśmy dokument” deweloper nie powinien robić tego badziewia zamiast używać narzędzia. Możesz użyć resharper lub darmowej alternatywnej pokojówki do kodu, możesz zmusić go do sformatowania kodu za każdym razem, gdy zapisujesz plik. W każdym razie pracuję dla firmy, która zmusza kodowanie standardu do szalonego poziomu, takiego jak metoda sortowania według alfabetu, grupowanie pola według typu i używanie regionu. zmusiło mnie to do marnowania połowy czasu.
kirie
6

Normy nie powinny być czymś określonym i egzekwowanym przez kierownika. Zespół jako całość powinien zgodzić się na standardy. Jeśli nie będą w stanie uzgodnić wspólnego zestawu standardów, nakłonienie menedżera do narzucenia im standardów zakończy się niepowodzeniem.

Ty i inni, którzy się z tobą zgadzacie, powinniście dawać przykład. Zacznij korzystać z tych samych standardów kodowania, publikuj je i promuj wśród reszty zespołu oraz zaproś opinie na temat ich ulepszenia.

Oto ważna kwestia, gdy staramy się promować standardy: upewnij się, że nie skupiasz się na znalezieniu najlepszego sposobu, ale raczej na znalezieniu spójnego sposobu robienia rzeczy. Chociaż niektórzy ludzie mogą się nie zgodzić, nie ma jednego prawdziwego stylu nawiasów klamrowych, żadnego prawdziwego stylu komentowania itp. To, co czyni kod łatwiejszym do odczytania (a zatem i łatwiejszym w utrzymaniu), jest spójnym stylem, bez względu na to, co to jest.

Bryan Oakley
źródło
4
Zgadzam się, że zespół musi zdefiniować standardy, ale idealnie menedżer powinien być organem nadzorującym. Jeśli nie masz poparcia ze strony kierownika odnośnie idei posiadania standardów kodowania, powinieneś sam wziąć na siebie rolę lidera (patrz odpowiedź Joela Ethertona).
semaj
3
Dobrze technicznie nie jest One Prawdziwe Brace Styl: en.wikipedia.org/wiki/Indent_style#Variant:_1TBS
dozbrojenie Monica
@semaj: Z całego serca się nie zgadzam. W ogóle nie powinno to zależeć od kierownika. Ani trochę.
Bryan Oakley,
Z drugiej strony jesteś zespołem programistów, czyimiś pracownikami, a nie hipisowską gminą. Czyja głowa się toczy, jeśli projekt się nie powiedzie? Gwarantuję, że ktoś to zrobi. Jeśli wszyscy są odpowiedzialni, nikt nie jest. Zobacz to , to , to itd.
Craig
„Kto przewraca głowę”, miałem na myśli. Oczywiście ...
Craig,
5

Czy możesz pokazać jakieś dowody czasu, który zmarnowałeś z powodu problemów, które powoduje?

Jeśli spędzasz dużo czasu na rozwiązywaniu tych problemów lub powoduje to błędy, które wymagają czasu, aby je naprawić, to jest to koszt, który możesz drastycznie zmniejszyć, przyjmując standardy kodowania.

Dlatego przechowuj dzienniki napotkanych problemów i czas potrzebny na ich rozwiązanie - zarówno dla ciebie, jak i (tam, gdzie jesteś ich świadomy) swoich kolegów.

Następnie, gdy masz rozsądną ilość danych, przedstaw je swoim kolegom. Powinny widzieć korzyści wynikające z przyjęcia normy. Jeśli nie, pokaż dane swojemu szefowi i jego szefowi. Pokaż, że dzięki standardom kodowania możesz zaoszczędzić pieniądze swojej firmy i powinni cię wspierać w ich adaptacji.

ChrisF
źródło
3

W twojej konkretnej sytuacji uważam, że rozwiązanie twojego szefa jest dobre. Nikt nie musi zmieniać tego, co robili przez całą swoją karierę, i to jest w porządku, ponieważ fragmenty stylu kodu ignorowane przez kompilator nie mają znaczenia, dopóki kod jest czytelny. Gdyby każdy zrobił autoformatowanie do swojego stylu podczas sprawdzania i autoformatowanie do standardowego stylu podczas sprawdzania, wszystko byłoby dobrze. (Niestety zasugerowałem, że tam, gdzie pracuję, i było to sprzeczne ze względu na to, że programista nie będzie już pisał tego samego dokładnego kodu, co widzi serwer ciągłej integracji).

Myślę, że standardy kodowania są dobre, gdy są stosowane w miejscach, w których ma to rzeczywistą różnicę w jakości kodu: na przykład małe metody, klasy, które mają jedną jasno określoną odpowiedzialność, przydatne i dokładne komentowanie trudniejszych bitów itp. Niestety, te aspekty są trudniejsze do automatycznego sprawdzenia, ale ma to zasadnicze znaczenie dla rozwoju oprogramowania. Wszystko, co możesz naprawdę zrobić, to nauczyć innych dobrych praktyk i nauczyć się czytać kod z nawiasami w niewłaściwym wierszu.

jprete
źródło
3
Nie przeszkadza mi nawias klamrowy na dowolnej linii. Jestem wyrzucony, gdy oba style są w tym samym pliku. Utrudnia skanowanie.
Josh Johnson
Doprowadza mnie to do szału. Ale ponieważ nie jestem w stanie dokładnie sformatować całej bazy kodu, próbuję sobie z tym poradzić, dopóki nie będę mógł forsować zautomatyzowanego rozwiązania.
jprete
2

Odnośnie standardów kodowania: Będę wchodził na pokład z prawie wszystkimi innymi, mówiąc, że standardy kodowania są „dobrą rzeczą” (w porównaniu do braku standardów).

Nie daj się jednak ponieść emocjom. Pracowałem nad niektórymi projektami, które dyktowały konkretny styl wcięcia, aż do liczby znaków (a kiedy projekty posuwają się tak daleko, nieuchronnie wybierają coś głupiego, jak 8 wcięcia przestrzeni). Nie przejmuj się małymi rzeczami.

Proste rozwiązanie: Daj programistom ograniczony zestaw opcji nawiasów klamrowych i wcięć, ale podyktuj, że styl nawiasów klamrowych i wcięcia muszą być spójne w całym module. (Chcesz, aby foo.h i foo.cpp działały w tym samym stylu, prawda?) Opiekunowie muszą dostosować się do istniejącego stylu; nie mogą przepisać modułu, aby pasował do ich kapryśnego stylu. Wiele stylów w module jest po prostu mylące i jest oznaką niechlujstwa. Kiedy widzę te bzdury, zastanawiam się, co jeszcze jest nie tak.

Możesz także pomyśleć o zablokowaniu zakładek do wcięć w zapisanej zawartości pliku . Większość IDE / redaktorów wykonuje rozsądną pracę tłumacząc tabulatory wprowadzane przez użytkownika na spacje, a większość ma opcje automatycznego tłumaczenia. Wiele z nich robi kiepską robotę, gdy plik już zawiera tabulatory, zwłaszcza mieszany zestaw tabulatorów i spacji.

To powiedziawszy, myślę, że możesz mieć głębszy problem w swoim projekcie. Wspomniałeś o problemach z scalaniem. Jeśli musisz dużo scalić, może to świadczyć o złym podziale projektu. Tak jak zbyt wielu kucharzy psuje bulion, zbyt wielu programistów działających na tym samym pliku psuje projekt. Dlaczego każdy z Joe, Susie i ty dotykasz foo.cpp?

David Hammen
źródło
3
Lub może po prostu użyć karty i poszczególne deweloperów może uczynić je niezależnie od wielkości chcą ..
dozbrojenie Monica
1
@Brendan: In m doświadczenie, które nie działa. Programiści nieuchronnie mieszają karty i spacji, aby ich kod w kolejce tak , szczególnie nieprzerwane linie. Ta przestrzeń trybu mieszanego i śmieci tabulatorów mogą wyglądać wręcz brzydko z innym ustawieniem tabulatorów niż to, które zastosował programista.
David Hammen
2
Nigdy nie powiedziałem, żeby je mieszać. Używaj tylko kart. Teraz wcięcie wygląda tak, jak tego chce każdy twórca. Jeśli naprawdę potrzebujesz kodu do wyrównania „w sam raz”, nadal używaj tabulatorów do wcięcia, a następnie spacji, aby wyrównać (uważam to za stratę czasu).
Przywróć Monikę
2
Pomysły później zabijają ten pomysł. Reguła „brak zakładek w plikach źródłowych” jest powszechna w wielu, wielu standardach kodowania. Jest ku temu powód.
David Hammen,
1

Jest to jeden z obszarów, w których prowadzone są badania. Zasadniczo główne pytanie brzmi, czy przeprowadzasz recenzje kodu. Przeglądy kodu są bez wątpienia najbardziej skutecznym sposobem na poprawę jakości kodu. (Źródło: Software Engineering Institute, CMU). Jest to z pewnością bardziej wydajne niż dodatkowy tester.

Teraz recenzje kodu korzystają ze wspólnego standardu kodowania, ponieważ ułatwia to czytanie kodu innych osób. To daje ci dwuetapowy argument na rzecz wprowadzenia standardów kodowania: w końcu sprawia, że ​​taniej jest produkować dobry kod.

MSalters
źródło
1

Ponieważ jest już „kilku innych”, którzy są z tobą w tej sprawie, proponuję improwizowane spotkanie. Zaproś wszystkich twórców, poświęć chwilę i dowiedz się, jakie rzeczy przeszkadzają Tobie i Twoim współpracownikom z dnia na dzień. Nie próbuj na początku szukać konkretnych rozwiązań, po prostu dowiedz się, co wymaga zmiany w sposobie pisania kodu.

Następnie sprawdź, czy wszyscy możecie zgodzić się na kilka podstawowych pojęć. Sugestia użycia tego samego stylu w każdym module, którą przedstawił @David Hammen, to dobry początek i myślę, że większość programistów chętnie się na to zgodzi.

Jeśli, kiedy już to zrobisz, poczujesz, że wszyscy możecie zgodzić się na podstawowy styl pisania nowego kodu, to dobry dodatek. Skoncentruj się na rzeczach, które faktycznie wpływają na łatwość utrzymania; problemy z nazewnictwem byłyby wysoko na mojej osobistej liście, ponieważ jeśli masz pół tuzina różnych stylów nazewnictwa w jednym produkcie o jakiejkolwiek znaczącej złożoności, bardzo szybko stanie się to problemem, ale ponownie skup się na tym, co Ty i Twój zespół uważacie za ważne . Przygotuj krótki dokument, który każdy może przynajmniej zgodzić się przestrzegać (nawet jeśli sam może mieć inny styl zwierzaka) i wyślij go pocztą do wszystkich członków zespołu. Zrób to „żywy” dokument, upewnij się, aby aktualizować go z czasem, ale pamiętaj, aby nie uczynić go zbyt sztywny i konkretne.

O ile twój szef nie jest zaangażowany w pisanie kodu, nie powinien zbytnio martwić się o to, jaki dokładnie styl zostanie przyjęty (pod warunkiem, że skupia się on na czytelności i łatwości konserwacji), ale powinien być w stanie zobaczyć korzyści każdego w zespole według wspólnego stylu podczas pisania kodu.

CVn
źródło
1

Niektóre rzeczy są bolesne. Najbardziej bolesne jest IDE, które automatycznie formatuje kod w połączeniu z programistami, którzy konfigurują swoje IDE na różne sposoby. Za każdym razem, gdy porównujesz kod, masz sto zmian po tym, jak ktoś z różnymi ustawieniami dokonał edycji kodu. To niedopuszczalne. Tutaj musisz uderzyć wszystkich głowami w całość, uzgodnić zestaw ustawień i odrzucić wszelkie kontrole przez osoby używające innych ustawień. Jeśli zmienię pojedynczy wiersz kodu, różnice powinny pokazywać zmieniony pojedynczy wiersz kodu, a nie setki.

Wszystko inne jest albo nieszkodliwe, albo istnieją lepsze sposoby robienia rzeczy, o których inni mogą być przekonani. Tutaj zasada powinna być następująca: Nie zadzieraj z kodem innych ludzi, chyba że naprawdę go poprawisz. A połączenie stylu A i stylu B jest zawsze gorsze niż oba style A lub B.

Upewnij się, że postępujesz zgodnie z najlepszymi praktykami. Który jest inny w zależności od języka. Ale tam nie potrzebujesz standardów (które mogły być napisane przez kogoś, kto ma dobre intencje, ale w rzeczywistości nie jest tak kompetentny), ale każdy powinien spróbować podać dobre przykłady.

Zdecydowanie unikaj walk o władzę. Nie ma nic gorszego niż jakiś mały Hitler w twoim zespole, który próbuje zmusić wszystkich do swojej woli. I to niestety facet, który zechce napisać twoje standardy kodowania :-(

gnasher729
źródło
Różne standardy od różnych twórców tego samego projektu prowadzą do wypadania włosów. Utwórz standardowe ustawienia dla projektu. Niech każdy programista zaimportuje te ustawienia. Kropka. Jest to łatwe dzięki narzędziom takim jak Visual Studio IDE. Jeśli masz deweloperów, którzy nalegają na używanie Emacsa (który sam bardzo lubię) lub cokolwiek innego, odpowiadają za przestrzeganie tego standardu. Skorzystaj z ładnej procedury drukowania, aby sformatować kod do zameldowania. Celem jest ujednolicenie kodu, który jest łatwy do zrozumienia dla wszystkich, a nie indywidualny styl artystyczny w każdym pliku kodu źródłowego.
Craig
0

Wszystkie podane przykłady dotyczą w zasadzie białych znaków i formatowania. Jeśli to jest największy problem, zgadzam się z twoim przełożonym: nie jest to taka wielka sprawa.

Tam, gdzie standardy są naprawdę bardzo przydatne, można nazywać rzeczy i zmniejszać złożoność. Jak nazwać identyfikatory, klasy, gdzie je umieścić itp. Zachowanie spójności nazw jest niezwykle ważne, szczególnie w dużym projekcie. Reguły zmniejszania złożoności obejmują utrzymywanie funkcji pod pewną liczbą linii (dzielenie na mniejsze funkcje) lub utrzymywanie list parametrów poniżej pewnej liczby argumentów (być może powinieneś spakować je do obiektu i przekazać dalej).

Jeśli konkretny programista w twoim zespole pisze kod, który jest trudniejszy do zrozumienia / debugowania, ponieważ zawiera wiele długich fragmentów kodu z nazwami zmiennych o jednolitej literze, jest to dobry powód do przyjęcia pewnych standardów, a nie czegoś, co można naprawić za pomocą skrypt. Dobrze jest wskazać (taktownie) jako rzecz, którą standardy mogą poprawić.

Innym powodem, dla którego menedżer może nie postrzegać tego jako problemu, jest fakt, że tak naprawdę nie odczytujesz często nawzajem kodu. Może się tak zdarzyć, gdy każdy ma swój własny obszar kodu i nie zapuszcza się zbytnio poza nim. Działa to całkiem dobrze, dopóki ktoś nie opuści organizacji, co może się zdarzyć z różnych dobrych lub złych powodów. Standardy, które zwiększają czytelność, ułatwią nowemu deweloperowi przejęcie obsługi fragmentu kodu.

benzado
źródło
0

powoduje konflikty podczas scalania, ponieważ ktoś użył swojego IDE do automatycznego formatowania, a on używa innego znaku do wcięcia niż ja

wygląda na to, że to twój problem, a nie formatowanie, ale ponowne formatowanie. Jest to ogromny problem dla SCM, a rada jest prosta: nie rób tego. Więc następnym razem, gdy ktoś ponownie sformatuje wszystkie spacje na tabulatory lub zmieni nawiasy klamrowe na preferowany styl, musisz je uderzyć w dół. Niech zamiast tego dokonają scalenia; stanąć nad nimi, patrząc z dezaprobatą na stratę czasu, którą spowodowała ich bezmyślność.

Alternatywą jest umieszczenie formatera przed zatwierdzeniem, który zawsze formatuje cały kod do standardowego stylu przed zalogowaniem. Jeśli masz zespół programistów, którzy ponownie formatują formatowanie, jest to dobra opcja - SCM zawsze zobaczy ten sam format, więc delty będą małe i przyjemne do scalenia.

gbjbaanb
źródło
0

Kiedy ktoś sugeruje nowy standard kodowania, w którym pracuję, głosujemy nad nim. Jeśli otrzyma większość głosów, zostaje przyjęty, w przeciwnym razie zostaje odrzucony. Jeśli tego nie zrobisz, nie uzyskasz wpisowych swoich standardów i nie będą one używane, nawet jeśli są udokumentowane.

Petras
źródło
0

Jeśli chodzi o konkretny problem, najlepszy zakład prawdopodobnie zacznie się od sugestii Joela i będzie dawał przykład. Zbierz 1 lub 2 programistów, którym zależy na tym, osiągnij porozumienie, a będziesz mieć siłę, by narzucić leniwych.

Teraz, jeśli chodzi o ogólny problem, najlepiej jest po prostu modulować . Każda osoba otrzymuje inny plik, jeśli musisz zachować plik, zachowaj jego standardy kodowania, nawet jeśli jest on inny. Chcesz pisać w tym samym pliku? Utwórz plik podzestawu i dołącz go zamiast tego.

Cregox
źródło
0

Nie próbuj tego!

Prowadź przez licznik. Postaraj się, aby Twój kod był tak straszny, jak to tylko możliwe, i sprawdzaj wiele okropnie sformatowanych zmian w ładnym kodzie innych ludzi. Kiedy wystąpi (nieunikniona) reakcja, powiedz, że to, co robisz, jest w porządku, ponieważ nie ma standardu kodowania.

Jeśli twoi współpracownicy nie zostaną zlinczowani (!!), możesz skończyć ze standardem kodowania.

Oczywiście jest to strategia wysokiego ryzyka ... :-)

Stephen C.
źródło
W rzeczywistości jest teraz kilka osób, które wypróbowały tę wersję i wielu z nich używało tej strategii, zanim tam zacząłem. Pomimo dołożenia wszelkich starań, jak dotąd nie pojawiły się żadne standardy :(
Josh Johnson
@Josh Johnson - najwyraźniej nie próbowali wystarczająco mocno. Rozważ użycie ROT-13 na wszystkich identyfikatorach :-)
Stephen C