W tekstach o TDD często czytam o „usunięciu duplikacji” lub „poprawie czytelności” podczas etapu refaktoryzacji. Ale co sprawia, że usuwam nieużywaną funkcję? Powiedzmy na przykład, że istnieje klasa Cz metodami a()i b(). Teraz myślę, że byłoby miło mieć metodę, w f()którą się zaangażuje C. W rzeczywistości f()zastępuje wszystkie wywołania do, …
Chciałem nauczyć się korzystać z podejścia TDD i miałem projekt, nad którym chciałem pracować od dłuższego czasu. To nie był duży projekt, więc pomyślałem, że będzie dobrym kandydatem do TDD. Czuję jednak, że coś poszło nie tak. Podam przykład: Na wysokim poziomie mój projekt jest dodatkiem do Microsoft OneNote, który …
Trudno powiedzieć, o co tu pytają. To pytanie jest dwuznaczne, niejasne, niekompletne, zbyt szerokie lub retoryczne i na obecną formę nie można udzielić rozsądnej odpowiedzi. Aby uzyskać pomoc w wyjaśnieniu tego pytania, aby można je było ponownie otworzyć, odwiedź centrum pomocy . Zamknięte 8 lat temu . Opracowałem naszą obecną …
Zgodnie z refaktoryzacją do wzorów : Gdy klasa próbuje zrobić zbyt wiele, często pojawia się jako zbyt wiele zmiennych instancji. Gdy klasa ma zbyt wiele zmiennych instancji, zduplikowany kod nie może być daleko w tyle. W jaki sposób posiadanie zbyt wielu zmiennych instancji prowadzi do duplikowania kodu?
Jestem przy prywatnym projekcie, który ostatecznie stanie się open source. Mamy kilku członków zespołu, wystarczająco utalentowanych z technologiami do tworzenia aplikacji, ale nie dedykowanych programistów, którzy potrafią pisać czysty / piękny i co najważniejsze długoterminowy kod, który można utrzymać. Postanowiłem przebudować bazę kodu, ale jest to trochę niewygodne, ponieważ ktoś …
Refaktoryzuję istniejący zestaw klas testów Java do automatycznych testów interfejsu użytkownika. Czasami robię ogromne zmiany w pliku klasy lub całkowicie go przerabiam. To sprawia, że myślę, że kiedy przepisuję całą klasę, czy powinienem zmienić nazwisko autora w sekcji komentarza na moje? Czy jestem chciwy? czy może przydałoby się zobaczyć moje …
Ostatnio pracuję nad refaktoryzacją części bazy kodu, z którą obecnie mam do czynienia - nie tylko po to, aby lepiej ją zrozumieć, ale także aby ułatwić innym, którzy pracują nad kodem. Zwykle opieram się na myśleniu, że samodokumentujący się kod jest fajny . Po prostu uważam, że jest czystszy i …
Mój zespół migruje z monolitycznej aplikacji ASP.NET do .NET Core i Kubernetes. Wydaje się, że zmiany w kodzie idą tak dobrze, jak można się spodziewać, ale w miejscu, w którym mój zespół napotyka wiele niezgody, wokół bazy danych. Obecnie mamy dość dużą bazę danych SQL Server, która zawiera wszystkie dane …
Mają bardzo duży projekt o wartości ponad 70 000 LOC. Projekt zdecydowanie potrzebuje trochę refaktoryzacji kodu w Core Framework, a także w innych częściach. Na początku projektu nie było czasu na refaktoryzację. Z czasem jednak ponad 40 programistów dołączyło i opuściło projekt. Z mojej perspektywy jest niezbędny. Jakie byłyby twoje …
Odziedziczyłem istniejącą bazę kodu dla produktu, który jest nagle niechlujny. Podstawowy projekt jest bardzo nieodpowiedni, na co niestety niewiele mogę poradzić bez kompletnego refaktora (WYSOKIE sprzężenie, NISKA spójność, gwałtowne powielanie kodu, brak dokumentacji technicznej projektu, testy integracyjne zamiast testów jednostkowych). Produkt ma historię, wysoką ekspozycję na krytycznych klientów „krów gotówkowych” …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą specjalistyczną, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Dylemat Czytałem wiele książek o najlepszych praktykach na temat praktyk zorientowanych obiektowo, a prawie każda książka, którą przeczytałem, miała tę część, w której mówiły, że enumy to zapach kodu. Myślę, że przegapili tę część, w której wyjaśniają, kiedy wyliczenia są ważne. Jako taki szukam wytycznych i / lub przypadków użycia, …
Mamy całkiem sporo miejsc w kodzie źródłowym naszej aplikacji, gdzie jedna klasa ma wiele metod o tych samych nazwach i różnych parametrach. Te metody zawsze mają wszystkie parametry metody „poprzedniej” plus jeszcze jedną. Jest to wynik długiej ewolucji (starszego kodu) i tego myślenia (wierzę): „ Istnieje metoda M, która wykonuje …
Właśnie natknąłem się na artykuł „ Reguła trzech ” w Wikipedii Zasada trzech jest podstawową zasadą refaktoryzacji kodu, która decyduje, kiedy zreplikowany fragment kodu powinien zostać zastąpiony nową procedurą. Stwierdza, że kod można skopiować raz, ale gdy trzy razy użyje się tego samego kodu, należy go wyodrębnić w nowej procedurze. …
Pracuję nad kodem interfejsu użytkownika, w którym mam Actionklasę, coś takiego - public class MyAction extends Action { public MyAction() { setText("My Action Text"); setToolTip("My Action Tool tip"); setImage("Some Image"); } } Kiedy ta klasa Action została utworzona, prawie zakładano, że Actionklasy nie będzie można dostosowywać (w pewnym sensie - …
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.