Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
ZbiórzadańprogramistycznychwJavie
9
Jeślihistoriązbutamichciałeśwzbudzićwemniewspółczucie,tona
nieszczęściedlasiebiepomyliłeśadresydoskonalepamiętam,ktoigdzie
chciałstudiować.Niejestemjednaktakokrutna,jakCisięwydaje.UdzielęCi
jeszczejednejrady:znajdźjakieśczteroletnieczłowieczedziecko,którema
podobnyproblemnowiesz,ludziemawiają,żecodwiegłowytoniejedna.
Przygotujsięjednaknato,żeposzukiwaniawcaleniebędąłatwe.Większość
czterolatkównieumiewiązaćsznurowadeł,aleniejestskora,abysiędotego
przyznawać.Tyle,jeślichodziomojąpomocwkwestiachpraktycznych.
Pamiętasz,jakpisałam,żetylkonapierwszyrzutokabędzieCitrudniej
nauczyćsięprogramowaćniżistotomczłowieczymzTwojegoroku.Weźmyte
nieszczęsnebutyispróbujmyprzyjrzećsięproblemowiichwiązaniazpunktu
widzeniaprogramisty.
Wpoprzednimliścieustaliliśmy,żeprogramy,którejużniedługonapiszesz,
będąwykonywałydrobneczynności.Musimyjednakdokonaćmałego
sprostowania.Otóżzewzględunato,żekomputeryzupełnieniepojmują
znaczeniaprzymiotników(pisałamCiotymwpoprzednimliście),nasze
ustaleniepowinnomiećnastępującąformę:programy,którejużniedługo
napiszesz,będąwykonywałyczynności.Ituwłaśniepozorniewżadensposób
niezwiązanezprogramowaniembutyokażąsiębardzoprzydatne.Wiązanie
butówto,jaksięjużprzekonałeś,ciągczynności,którychpoprawnewykonanie
powinnogwarantowaćosiągnięcieokreślonegoefektu.Wyrażenieciągczynności
oznacza,żeważnejestnietylko,conależyzrobić,alerównieżwjakiej
kolejności.Oczywiścieznowunieuwierzyszminasłowo,więcprzyjrzyjmysię
owejkolejnościzbliska.
Wyobraźsobie,żejesteśprojektantemwspomnianej,nieistniejącejjeszcze
przystawkidopalmtopa,któramaumożliwiaćinnymkrasnoludomsprawne
używaniesznurowanychbutów.Całączęśćmechanicznąmaszjużgotową,
pozostałCitylkodonapisaniaprogram,którywykonabrudnąrobotę.
Czynności,którebędziemiałdowykonaniatenprogramto:włóżbut,
zawiążbut,włóżdrugibut,zawiążdrugibut.Naprogramskładająsięcztery
czynności,którychkolejnośćwydajesięistotna.Maszwątpliwości,codojej
znaczenia?NazwijmypowyższąsekwencjęprogramemAiprzedstawmy
konkurencyjnyprogramB:zawiążbut,włóżbut,zawiążdrugibut,włóżdrugi
but.Przyznasz,żeprogramyAiBpodobne,aleniemaszchybawątpliwości