Strona 1 z 1

Przykłady złego kodu do refaktoryzacji?

: 26 sty 2021, 08:23:00
autor: thorabric95
W firmie, dla której pracuję, czasami przydzielamy programistów, którzy ubiegają się o pracę, z prostym zadaniem refaktoryzacji. Robimy to, aby zobaczyć, jak kandydat rozumie i stosuje zasady SOLID, wzorce projektowe itp. Najczęściej używamy starszych komponentów naszych systemów lub klas z bibliotek, takich jak phpmailer, ponieważ niektóre z nich naruszają zasady pojedynczej odpowiedzialności i / lub zasady segregacji interfejsów.

Niestety te przykłady są dość duże i trudne do zrozumienia dla osoby, która nie ma doświadczenia z tematem i jego specyfiką. Idealnie chcielibyśmy rzucić wyzwanie ludziom czymś, co jest:

Szkoda, że ​​tak jest.

Łatwy do zrozumienia dla nowicjusza.

Tak więc pokornie proszę o pomoc, r / php. Podaj mi najlepsze przykłady śmierdzącego kodu do refaktoryzacji!

(Nie jestem pewien, czy to jest uważane za post pomocy. Jeśli tak, możesz go usunąć, a zamiast tego opublikuję go w r / phphelp)

Przykłady złego kodu do refaktoryzacji?

: 27 sty 2021, 07:53:25
autor: endriu888
Usuwanie nadmiarowych konstruktorów

Konieczność zastosowania tego typu metody refaktoryzacji następuje najczęściej w przypadku, gdy programista chcąc szybko zastosować nową funkcjonalność, rozszerza klasę o kolejne konstruktory z nowymi parametrami. Podajmy przykład oparty na systemie obliczającym wartość pożyczki:

Pozyczka(wartosc);
Pozyczka(wartosc, oprocentowanie);
Pozyczka(wartosc, oprocentowanie, czasSplaty);
Pozyczka(wartosc, oprocentowanie, czasSplaty, ryzyko);
Pozyczka(wartość, oprocentowanie, czasSplaty, ryzyko, status);

Początkowo w kodzie programu istniał jeden konstruktor o nazwie „Pozyczka” z jednym parametrem (wartosc). W miarę dodawania nowych funkcjonalności pojawiała się potrzeba tworzenia konstruktorów „Pozyczka” o większej liczbie parametrów. W ten sposób powstało pięć metod o tej samej nazwie, lecz różnym działaniu. Taki kod zazwyczaj wymaga refaktoryzacji, gdyż nazwa metody powinna jednoznacznie wskazywać, za jaką funkcjonalność systemu metoda odpowiada. Przy dalszym rozwoju kodu tej klasy mogą pojawić się problemy z implementacją wynikające z niezrozumienia faktycznej roli konstruktora. Po refaktoryzacji kod może mieć postać:

Pozyczka(wartosc, oprocentowanie, czasSplaty, ryzyko, status);
ustalWartosc(wartosc);
stworzPozyczke(wartosc, oprocentowanie);
dajPozyczke(wartosc, oprocentowanie, czasSplaty);
sprawdzPozyczke(wartosc, oprocentowanie, czasSplaty, ryzyko);


źródło: wikipedia

przydatny ebook: https://helion.pl/ksiazki/refaktoryzacj ... refak2.htm

Przykłady złego kodu do refaktoryzacji?

: 27 sty 2021, 17:33:12
autor: thorabric95
thorabric95 pisze: W firmie, dla której pracuję, czasami przydzielamy programistów, którzy ubiegają się o pracę, z prostym zadaniem refaktoryzacji. Robimy to, aby zobaczyć, jak kandydat rozumie i stosuje zasady SOLID, wzorce projektowe itp. Najczęściej używamy starszych komponentów naszych systemów lub klas z bibliotek, takich jak phpmailer, ponieważ niektóre z nich naruszają zasady pojedynczej odpowiedzialności i / lub zasady segregacji interfejsów.

Niestety te przykłady są dość duże i trudne do zrozumienia dla osoby, która nie ma doświadczenia z tematem i jego specyfiką. Idealnie chcielibyśmy rzucić wyzwanie ludziom czymś, co jest:

Szkoda, że ​​tak jest.Tweakbox Appvalley https://vlc.onl


Łatwy do zrozumienia dla nowicjusza.

Tak więc pokornie proszę o pomoc, r / php. Podaj mi najlepsze przykłady śmierdzącego kodu do refaktoryzacji!

(Nie jestem pewien, czy to jest uważane za post pomocy. Jeśli tak, możesz go usunąć, a zamiast tego opublikuję go w r / phphelp)
issue got solvedd

Przykłady złego kodu do refaktoryzacji?

: 28 sty 2021, 08:00:00
autor: endriu888
Witam

w takim razie zamykam temat