Przeczytałem książkę Robert C. Martin o nazwie Clean Code . W tej książce widziałem wiele metod czyszczenia kodu, takich jak pisanie małych funkcji, ostrożne wybieranie nazw itp. Wydaje się, że jest to najbardziej interesująca książka o czystym kodzie, którą przeczytałem. Jednak dzisiaj mój szef nie polubił sposobu, w jaki napisałem …
Jestem uczniem szkoły średniej pracującym nad projektem C # z moim przyjacielem o prawie takim samym poziomie umiejętności jak ja. Do tej pory napisaliśmy około 3000 wierszy kodu i 250 wierszy kodu testowego w zakresie 100 zatwierdzeń. Ze względu na szkołę odłożyłem projekt na kilka miesięcy, a ostatnio mogłem go …
Widziałem historię kilku projektów bibliotek klas С # i Java na GitHub i CodePlex, i widzę trend przechodzenia do klas fabrycznych w przeciwieństwie do bezpośredniego tworzenia instancji obiektów. Dlaczego powinienem intensywnie korzystać z klas fabrycznych? Mam całkiem niezłą bibliotekę, w której obiekty są tworzone w staromodny sposób - przy użyciu …
Mam do czynienia z dość dużą bazą kodu i dano mi kilka miesięcy na zmianę istniejącego kodu. Proces refaktoryzacji jest potrzebny, ponieważ wkrótce będziemy musieli dodać wiele nowych funkcji do naszego produktu, a na razie nie jesteśmy już w stanie dodać żadnej funkcji bez zepsucia czegoś innego. W skrócie: niechlujny, …
Kilka razy widziałem książkę Efektywna praca ze starszym kodem . Jakie są kluczowe punkty tej książki? Czy jest coś więcej do czynienia ze starszym kodem niż dodawanie testów jednostkowych / integracyjnych, a następnie refaktoryzacja?
Pracuję na bazie kodu średniej wielkości (100 tys. Linii), to wszystko jest stosunkowo nowy kod (mniej niż roczny) i ma dobry zasięg testu jednostkowego. Ciągle natrafiam na metody, które albo nigdzie już nie są używane, albo są wymieniane tylko w testach jednostkowych, które testują tylko tę określoną metodę. Czy powinienem …
Baza kodów, nad którą pracuję, często używa zmiennych instancji do udostępniania danych między różnymi trywialnymi metodami. Pierwotny programista jest przekonany, że przestrzega najlepszych praktyk zawartych w książce Clean Code autorstwa Uncle Bob / Robert Martin: „Pierwszą zasadą funkcji jest to, że powinny być małe”. oraz „Idealna liczba argumentów dla funkcji …
o ile rozumiem, większość ludzi zgadza się, że prywatne metody nie powinny być testowane bezpośrednio, ale raczej za pomocą jakichkolwiek publicznych metod, które je nazywają. Rozumiem ich punkt widzenia, ale mam z tym pewne problemy, gdy próbuję postępować zgodnie z „Trzema prawami TDD” i stosować cykl „Czerwony - zielony - …
Czasami napotykasz sytuację, w której musisz rozszerzyć / ulepszyć istniejący kod. Widzisz, że stary kod jest bardzo ubogi, ale również trudny do rozszerzenia i wymaga czasu. Czy warto zastąpić go nowoczesnym kodem? Jakiś czas temu podobało mi się podejście lean, ale teraz wydaje mi się, że lepiej poświęcić wiele optymalizacji …
Prowadzę debatę z kolegą programistą na temat tego, czy dobrą lub złą praktyką jest modyfikowanie działającego kodu tylko w celu umożliwienia jego przetestowania (na przykład poprzez testy jednostkowe). Moim zdaniem jest w porządku, oczywiście w granicach utrzymywania dobrych praktyk obiektowych i inżynierii oprogramowania (nie „upubliczniania wszystkiego” itp.). Zdaniem mojego kolegi …
Z twojego doświadczenia, jaka jest użyteczna ogólna zasada dotycząca tego, ile wierszy kodu jest zbyt wiele dla jednej klasy w Javie? Dla jasności wiem, że liczba wierszy nie jest nawet zbliżona do rzeczywistego standardu, który należy zastosować dla tego, co powinno być w danej klasie, a co nie. Zajęcia powinny …
Jedną z metod, których zwykle używam w naszej bazie kodu, jest niepoprawna (i poprzedza mnie). To naprawdę irytuje mnie nie tylko dlatego, że jest źle napisane, ale, co ważniejsze, sprawia, że ZAWSZE mylę nazwę przy pierwszym wpisywaniu (a potem muszę pamiętać: „Och, racja, należy ją źle odczytać ...”) Wprowadzam kilka …
Zwykle staram się postępować zgodnie z zaleceniami zawartymi w książce Skutecznie współpracując z Legacy Cod e . Przełamuję zależności, przenoszę części kodu do @VisibleForTesting public staticmetod i nowych klas, aby kod (lub przynajmniej jego część) był testowalny. Piszę testy, aby upewnić się, że niczego nie popsuję podczas modyfikowania lub dodawania …
Jeden z moich kolegów z zespołu jest specjalistą od wszystkich transakcji w naszym sklepie IT i szanuję jego wgląd. Czasami jednak przegląda mój kod (jest szefem naszego zespołu, więc się tego spodziewałem) bez uprzedzeń. Czasami więc przegląda moje zmiany, zanim osiągną cel końcowy i wprowadzają zmiany od razu ... a …
Niedawno ukończyłem refaktoryzację czarnej skrzynki. Nie mogę tego sprawdzić, ponieważ nie mogę wymyślić, jak to przetestować. Na wysokim poziomie mam klasę, której inicjalizacja obejmuje pobieranie wartości z niektórych klas B. Jeśli klasa B jest „pusta”, generuje sensowne wartości domyślne. Wyodrębniłem tę część do metody, która inicjuje klasę B na te …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.