Znalazłem analogię do Naturalnego porządku refaktoryzacji, o którym pisze Mariusz. Otóż kod pączkuje zupełnie jak drożdże.
Zaczynamy pisać od kawałka kodu, aby zadziałało, potem wyodrębnienie zmiennych, wyodrębnienie metod, przegląd odpowiedzialności, pojawiają się nowe klasy. Naturalny porządek refaktoryacji pozwala projektowy rosnąć i rozwijać się w odpowiednim tempie, z zachowaniem sensownej struktury.
Kłopot pojawia się, gdy próbujmy przyśpieszyć wzrost drożdżowego kodu. Zostawiamy zahardkodowane rozwiązania, na w projekcie pojawiają się brzydkie rozwiązania. Tego typu rzeczy się zdarzają, kłopot w tym, że zostają na zawsze. Wtedy zamiast wypieczonego projektu, dostajemy zakalec albo spaleniznę.
Każda idea ma swój czas inkubacji. Wydaje mi się, że nie ma dróg na skróty.
agile
(41)
anti-patterns
(17)
architecture
(33)
books
(10)
buissness analysis
(1)
cases
(1)
code speaks 2u
(3)
communication
(1)
conferences
(13)
consulting
(1)
conversation patterns
(26)
customer collaboration
(14)
ddd
(5)
design patterns
(15)
desing
(1)
dialogi
(1)
dsl
(2)
effectiveness
(19)
embedded
(1)
events
(22)
gtp
(4)
info
(2)
infoq
(5)
kanban
(2)
lean
(2)
master
(1)
measuring
(1)
orm
(2)
pea
(2)
product humanisation
(1)
refactoring
(13)
requirements
(7)
retrospections
(1)
retrospective
(1)
scrum
(9)
scrumguide
(1)
sm
(1)
soft skills
(4)
software craftsmanship
(14)
tdd
(1)
team
(20)
time management
(3)
tutorial
(1)
uml
(1)
user stories
(1)
visions
(28)
No wreszcie mój czytnik google wyświetlił jedynke, a już byłem bliski usunięcia kanału RSS podczas ostatniej "refaktoryzacji" źródeł. Post imho troszke odstaje od tego do czego przyzwyczaił mnie blog w minionych latach, ale biorę to za dobrą monetę i liczę na więcej. Pozdrawiam.
ReplyDeleteDzięki za zachętę. Dlaczego doba ma 24h?
ReplyDelete