Pytania otagowane jako refactoring

Refaktoryzacja to zdyscyplinowana technika restrukturyzacji istniejącego kodu, zmieniająca jego wewnętrzną strukturę bez zmiany zewnętrznych zachowań.

3
Jak zerwać z rolą opiekuna kodu? [Zamknięte]
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, 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 …

3
Jakie są dobre sposoby organizowania plików wejściowych (Makefiles, SConstruct, CMakeLists.txt itp.) W celu zbudowania oprogramowania do automatyzacji?
Jedną z rzeczy, które lubię robić z moim kodem, jest upewnienie się, że został on przekształcony w części łatwe do zarządzania. Jednak jeśli chodzi o tworzenie oprogramowania, okazuje się, że cokolwiek oprogramowania do automatyzacji budowania, którego używam (ostatnio GNU Make lub SCons), staje się kompletnym bałaganem. Pliki wejściowe wyglądają jak …

7
Jak zarządzasz refaktoryzacją z dużą bazą kodu i wieloma programistami?
Chciałbym zapobiec sytuacji, w której dwóch programistów refaktoryzuje ten sam kod jednocześnie, nie rozmawiając o nim wcześniej, prawdopodobnie używając jakiegoś narzędzia, być może wtyczki Eclipse. Możesz pomóc? Mamy 4,5 miliona linii kodu i ponad 20 zespołów programistów na czterech kontynentach. Idealnie chciałbym, aby drugi ze wspomnianych wcześniej programistów zauważył, że …

5
Rozwiązywanie konfliktów scalania z powodu refaktoryzacji
Niedawno zaangażowałem się w dyskusję na temat tego, jak ogólnie radzić sobie z refaktoryzacją (co samo w sobie jest interesującym tematem). W końcu pojawiło się następujące pytanie: Jak radzić sobie z konfliktami scalania, które miały miejsce z powodu tego, że ktoś dokonał refaktoryzacji części kodu, podczas gdy ktoś inny pracował …

7
Najlepszy sposób na rozbicie przytłaczającego kodu na porcje do zarządzania?
Ciągle przytłaczają mnie duże projekty, kiedy osiągają pewien poziom złożoności. Gdy osiągnę pewien punkt w projekcie, moje postępy zwalniają do pełzania i nieustannie śledzę moje kroki i rozwiązuję wszelkie zamieszanie. Naprawdę dobrze sobie radzę z refaktoryzacją z powodu mojej słabości. I zawsze staram się rozkładać moje obiekty na mniejsze, łatwiejsze …

5
Czy przydaje się mini-refaktoryzacja kodu w nadziei na poprawę jakości, czy jest to po prostu „przenoszenie kodu” bez większych korzyści?
Przykład Natknąłem się na monolityczny kod, który robi „wszystko” w jednym miejscu - ładuje dane z bazy danych, pokazuje znaczniki HTML, działa jak router / kontroler / akcja. Zacząłem stosować SRP przenoszący kod bazy danych do własnego pliku, zapewniając lepsze nazewnictwo rzeczy i wszystko wyglądało dobrze, ale potem zacząłem mieć …

4
Termin techniczny oznaczający przeciwieństwo wstrzykiwania zależności?
Jest to raczej nomenklatura (pismo techniczne) niż kwestia czysto techniczna. Usiłuję napisać propozycję refaktoryzacji (i przypisać ją sobie), koncentrując się na rozszerzaniu zastrzyku zależności w naszej aplikacji. Chociaż używamy Springa do autouzupełniania fasoli, wciąż istnieją przypadki, w których instancja korzysta z fasoli MyClass obj = new MyClass(...), którą można całkowicie …

7
Dlaczego po napisaniu kodu „Czułbym się lepiej” po pewnym czasie? [Zamknięte]
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, 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 …

7
Refaktoryzacja i zasada otwarcia / zamknięcia
Niedawno czytam witrynę o czystym programowaniu (nie zamieszczam tutaj linku, ponieważ nie jest w języku angielskim). Jedną z zasad reklamowanych na tej stronie jest zasada otwartej zamkniętej : każdy składnik oprogramowania powinien być otwarty na rozszerzenie i zamknięty na modyfikację. Na przykład, kiedy zaimplementowaliśmy i przetestowaliśmy klasę, powinniśmy ją modyfikować …

2
Dodanie testów jednostkowych do starszego, prostego projektu C.
Tytuł mówi wszystko. Moja firma ponownie używa starszego projektu oprogramowania układowego dla urządzenia mikrokontrolera, napisanego całkowicie zwykłym C. Są części, które są oczywiście błędne i wymagają zmiany, a pochodzące z tła C # / TDD Nie podoba mi się pomysł losowego refaktoryzowania rzeczy bez testów, które zapewniłyby nas, że funkcjonalność …



5
Powtarzanie kodu a metoda wieloodpowiedzialna
Staram się przestrzegać zasady pojedynczej odpowiedzialności (SRP), a także pomijać powtórzenia kodu. Jednak często są miejsca, w których istnieją powtórzenia kodu, które są niczym więcej niż blokami kodu wywołań, które są odporne na wyodrębnienie ich do co najmniej sensownej nazwanej metody: DoAction1(); DoAction2(); if (value) DoAction3(); DoAction4(); Jaki jest najlepszy …

2
Czy rozpowszechnianie kodu z refaktoryzacją komentarzy to dobry pomysł?
Pracuję nad projektem „kodu spaghetti” i podczas gdy naprawiam błędy i wdrażam nowe funkcje, robię też pewne refaktoryzacje, aby kod mógł być testowany jednostkowo. Kod jest często tak ściśle powiązany lub skomplikowany, że naprawienie małego błędu spowodowałoby przepisanie wielu klas. Postanowiłem więc narysować linię w kodzie, w której przestaję refaktoryzować. …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.