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 …
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 …
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 …
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ł …
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 …
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ć …
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 …
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 …
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ć …
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ść …
Jestem członkiem zespołu projektowego złożonego z 4 programistów, w tym mnie. Od dłuższego czasu dyskutujemy o tym, jak poradzić sobie z dodatkową pracą, która pojawia się w ramach jednego elementu pracy. Ta dodatkowa praca to zwykle rzeczy nieco związane z zadaniem, ale nie zawsze konieczne do osiągnięcia celu przedmiotu (może …
Naprawdę podoba mi się ten artykuł o pozostawieniu kodu / kempingu w ładniejszym stanie, niż go znalazłeś - wydaje się praktycznym podejściem do zachowania czystości kodu. Bardzo podoba mi się również gałąź funkcji jako sposób na rozwijanie funkcji w oderwaniu, więc jeśli ci się nie podoba, nie możesz łatwo scalić …
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 …
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ć. …
Czytam Obiekty PHP, Wzorce i Praktykę . Autor próbuje modelować lekcję na uczelni. Celem jest przedstawienie rodzaju lekcji (wykładu lub seminarium) oraz opłat za lekcję w zależności od tego, czy jest to lekcja godzinowa, czy stała. Tak więc wynik powinien być Lesson charge 20. Charge type: hourly rate. Lesson type: …
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.