Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
d.Zasadarozdzieleniainterfejsów
e.Zasadaodwróceniazależności
2.ImplementowanieTDD(programowanialprojektowaniasterowanegotestami)
3.Refaktoringkoduwceluuniknięcianarastaniadługutechnicznego
Cotakwłaściwiesprawia,żeoprogramowaniejestprawidłowe?
Pisanieprawidłowegooprogramowania
Pisanieprawidłowegooprogramowaniajestdużotrudniejszeniżprawidłowepisanie
oprogramowania.WswojejksiążceSpecifcationbyExampleGojkoAdzictwierdzi,
żenajlepszympodejściemdopisaniaoprogramowaniajestutworzenienajpierwspecyfi-
kacji,anastępniebezpośredniapracazużytkownikamitegooprogramowania.Dopiero
poukończeniuspecyfikacjimożnapisaćkododpowiadającytejspecyfikacji.Wpraktyce
niezawszesiętosprawdza–czasamiświatniejesttaki,jaknamsięwydaje.Naszpocząt-
kowymodelmożestaćsięnieaktualny.
NaprzykładfirmieWebvannieudałosięzbudowaćbiznesuopartegonasprzedaży
artykułówspożywczychprzezsieć.Mieliniemal400milionów$kapitałuinwestycyjnego
iszybkozbudowanąinfrastrukturędowspierania(jaksądzili)dobrzerozwijającegosię
biznesu.Niestetywszystkookazałosięklapązewzględunakosztdostarczaniajedzenia
iprzeszacowanyrynekklientówchcącychkupowaćartykułyspożywczeprzezInternet.Ze
wszechmiarudałoimsięnapisaćoprogramowanieizbudowaćbiznes,alerynekniebył
jeszczenatogotowyiszybkozbankrutowali.Obecnieznacznaczęśćzbudowanejwtedy
infrastrukturyjestwykorzystywanaprzezAmazon.comdowspieraniaAmazonFresh.
Wteoriipraktykaiteoriasątymsamym.Wpraktyceniesą.
–AlbertEinstein
Obecniejesteśmywmomencie,gdyteoretyczniemożemypoprawniepisaćoprogramo-
wanieibędzieonodziałać,alepisanieodpowiedniegooprogramowaniajestznacznie
bardziejskomplikowanymproblemem.Tutajprzydajesięuczeniemaszynowe.
Pisanieodpowiedniegooprogramowaniaprzy
zastosowaniuuczeniamaszynowego
WksiążceTeKnowledge-CreatingCompanyNonakaiTakeuchizarysowali,cosprawiło,
żejapońskiefirmyodnosiłytakiesukcesywlatach80-ychXXwieku.Zamiaststosować
podejścienodogółudoszczegółu”przyrozwiązywaniuproblemów,uczyłysięizdobywały
wiedzę.Pochodzącyztejksiążkiprzykładzzagniataniemciastanachlebiopracowaniem
Pisanieprawidłowegooprogramowania
|
7