Avatar billede TEffer Nybegynder
13. februar 2014 - 10:08 Der er 7 kommentarer og
1 løsning

Bog om refactoring

Hejsa

Er der nogen, der kender en god bog om refactoring i PHP?
Jeg har fundet denne her: http://www.apress.com/9781430227274

Men den er jo lidt gammel så jeg er bange for at den ikke er helt up to date. Hvilken bog skal jeg købe?
Avatar billede repox Seniormester
13. februar 2014 - 10:33 #1
Vi har en udvikler der købte netop den bog på Amazon for en måneds tid siden - hans umiddelbare tilbagemelding er at bogen har givet ham god indsigt i pænere og bedre struktureret kode.

Til gengæld siger han der også står mange ting som ikke giver mening (noget er vist forfatterens forsøg på at være sjov).

Personligt har jeg selv kigget mere på rephactor - http://rephactor.sourceforge.net/user-guide.php - som et værktøj til at automatisere refactoring en smule. Det er super godt til ældre projekter - men det kræver trods alt også en banal forståelse for refactoring, og der tror jeg at bogen er et godt fundament.
Avatar billede TEffer Nybegynder
13. februar 2014 - 13:36 #2
Ok.
Det lyder godt. Så køber jeg bare den bog.
Principperne er selvfølgelig nok også de samme nu som den gang.

Jeg skimte lige det link du skrev om rephactor. Det kunne da være ret smart, når man skal ændre navne på klasser osv i eksisterende kode.

Læg lige et svar, så du kan få nogle point
Avatar billede repox Seniormester
13. februar 2014 - 13:42 #3
Det eneste negative ved rephactor er at motoren er bygget på erstattelser og søgning på regular expressions - det er selvfølgelig lidt af en fejlkilde.

Et svar fra mig.
Avatar billede TEffer Nybegynder
13. februar 2014 - 13:50 #4
Så er der points.

Har du selv prøvet rephactor?
Avatar billede repox Seniormester
13. februar 2014 - 13:59 #5
Jeps, et par gange til at refactor et par gamle projekter; det løser ikke alt, men det gjorde det væsentligt nemmere at overføre hele projektet til MVC frameworks.
Avatar billede TEffer Nybegynder
13. februar 2014 - 14:29 #6
Smart.
Det program må jeg lige have i baghovedet, næste gang jeg står i en lign. situation.
Avatar billede arne_v Ekspert
14. februar 2014 - 02:08 #7
For generel forstaaelse af refactoring var det vel oplagt at start med Fowlers bog.

For vurdering af hvad der er god kode og hvad der ikke er maaske Code Complete.

Ingen af dem er PHP orienteret, men principperne er stort set de samme i de forskellige sprog.

En IDE med indbygger support for refactoring kan goere det meget hurtigere at lave nogle af de simple refactoreringer.

En omfattende unit test suite hjaelper meget med at undgaa at introducere bugs ved refactorering.
Avatar billede repox Seniormester
14. februar 2014 - 06:26 #8
Jeg kender ikke Fowlers Bog, men jeg er enig at principperne oftest er de samme på tværs af sprogene når det handler om refactoring.

PHPStorm fra JetBrains er et fremragende (om end ikke omfattende) IDE til PHP som indeholder refactoring værktøjer med support for PHP 5.5. Det er nok det bedste udviklingsværktøj jeg har set til dato når man snakker PHP udvikling.
Den indbyggede support for code completion på nogle af de mest populære frameworks gør det også til en stor fornøjelse når man snakker om IDE.

PHPUnit af Sebastian Bergmann er et framework som han har bygget ud fra xUnits arkitektur. Det er i øjeblikket det anvendte unit test værktøj for PHP udviklere - det er dog også en ret omfattende omgang at lave unit teste sin projekter, men det man kan fange af fejl inden deployment samt enkeltheden af tests i continous integration gør det altså værd at lægge energi i unit testing.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester