Niedawno rozmyślałem nad skryptem w Ruby, który napisałem. Nie byłem z niego zadowolony. Co prawda działał, ale był dość „brzydki”.
Pomyślałem, super by było, gdyby ktoś mi pokazał jak napisać to lepiej.. „Refactor my code”.. Po krótkim googlowaniu okazało się, że jest już taki serwis: http://refactormycode.com/
O ile nazwa jest już zajęta
.. to mój pomysł miał jeszcze jeden istotny składnik. Założyłem, że ważne jest by „mój” kod nie tylko został poprawiony, ale żeby został poprawiony w małych kroczkach z wytłumaczeniem „dlaczego”, tak bym mógł się nauczyć i następnym razem sam napisać coś porządnie..
W gruncie rzeczy, to marzy mi się „coding dojo” rozproszone w czasie i przestrzeni. Piszę kod, który zapewne może zostać napisany lepiej. Chciałbym abyś wziął ten kod i w małych kroczak go ulepszył. Po każdym kroczku zrób commit i wyjaśnij co i dlaczego zrobiłeś.
Prototyp tego co mam na myśli dość szybko udało mi się stworzyć przy pomocy githuba.
https://github.com/dziemid/refactormycode
Napisałem dość brzydką wersję String Calculatora , którą następnie trochę poprawiłem .. Nie mniej wersja końcowa nie jest aż tak ciekawa jak sam proces jej tworzenia, gdzie każdy mały kroczek został udokumentowany.
Pomysł został podchwycony przez Martina, która zrefaktoryzował mój kod krok po kroku (tutaj jeden z jego kroków w raz z moim komentarzem).
Dziś wrzuciłem kolejny kod do poprawienia: Grę w życie w Javie. Kod jest napisany średnio. Miejscami jest brzydki, niektóre klasy są w ogóle niepotrzebne, inne klasy robią rzeczy, które być może powinny być gdzie indziej.
Zachęcam Cię do zrobienia „Fork”a i zrefaktoryzowania tego kodu krok po kroku. W każdym commicie napisz co i dlaczego robisz. W ten sposób razem stworzymy coding dojo rozproszone w czasie i przestrzeni
Podobne wpisy:
Tagi: dojo, programowanie, software craftsmanship


Fajny pomysł! W wolnej chwili (mam nadzieję, że niedługo) forkuje i przepisze kod do refaktoryzacji na Rubyego i zapodam to do kumpli mojego zespołu. Zobaczymy co wyjdzie.
Dodałem prostą przeglądarkę do commitów:
http://agilesurfing.pl/refactormycode/browser.html?from=0c65debd02632b7738a84d507faa0d52b2c05375&to=9e9ef1c11a52580a4624743bfe902d3848d64374
Wszedlem na refactormycode.com i zaczalem od razu poprawiac jakis code. Chcialem zapytac autora o intencje jakie mial piszac kod i tu poczulem ze jestem sam. Moge wprawdzie odpowiedziec i poczekac na reakcje drugiej strony. Jednak spotkac sie i siasc razem do problemu to jest to. Kontakt bezposredni to dla mnie sprawa zasadnicza.
[...] a zaznaczony obszar będzie rósł) Kod który refaktoryzuję, pochodzi z mojego innego wpisu (Refactor my code step by step). Daj znać innym Podobne [...]