Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
1.
Wprowadzenie
Wlatachsiedemdziesiątychzwróconouwagę,żedyskusjaojęzykachprogramowa-
nianieograniczasiędosamegojęzyka.Wrzeczywistościdotyczyczegośzupełnieinnego
określonejmetodologiiprojektowania,ponieważkażdyjęzykwspierarealizacjęjednej
znich.Danegojęzykamożnaużywaćtakżewinnychmetodologiach,alejegowykorzysta-
nieniejestwtedyoptymalne.Dlategozamiastmówićojęzykachprogramowania,lepiej
skupićuwagęnametodologiachprojektowaniaiimplementacjioprogramowania.Wlatach
siedemdziesiątychiosiemdziesiątychuważano,żeprojektowaniejęzykaprogramowania,
łączniezopracowaniemkompilatorówiodpowiedniegośrodowiskaprogramowegooraz
wyszkoleniemtysięcytwórcówiinnychspecjalistów,trwa1015lat,obecnieprzyjmuje
się,że23lata.Wrezultacienawettakiejęzyki,jakModula2,ChilllubAda,jużpo68
latachodwprowadzeniadopraktykiczęściowoprzestarzałeinieodzwierciedlają
najnowszychosiągnięćwdziedziniemetodologiiprogramowania.Spektakularnymprzy-
kłademrozwojujęzykówprogramowaniamożebyćichewolucyjneulepszanie.Wwy-
padkujęzykaAlgol(58,60,68)możnawyróżnićdwakierunkijegorozwoju:
ñ
reprezentowanyprzezprof.N.Wirtha:Algol,Pascal(1974),Modula2,Oberon,
Modula3;
ñ
rozwijanyprzezfirmęBorland:Algol,Pascal,TurboPascal1.03.0(1985),Turbo
Pascal4.0(moduły)(1987),TurboPascal5.5(obiekty)TurboPascal7.0.
DalszymefektemrozwojujęzykaTurboPascalkontynuowanegoprzezBorlandajest
Delphi,któryjużmanastępującewersje1.011(2007).
Najważniejszymwnioskiemzpowyższegowywodujeststwierdzenie,żepraktycznie
nigdyniebędziejęzykareprezentującegonajnowszystanwiedzywdziedziniemetodolo-
giioprogramowania.Dlategonależyrozważyćproblem,jakwspomagaćnowszemetodo-
logie,stosującjęzyki,któreniebyłydonichprzeznaczone.
Historycznierzeczbiorąc,większośćkonstrukcjiwjęzykach,któreopracowanodo
1975roku,dotyczyławłaściwegoformułowaniainstrukcjidowyrażaniaalgorytmów
istrukturdanychnapoziomieproceduralnym.Takiepodejścienazwanoprogramo−
waniemwmałejskali(ang.programming-in-the-small).Dzisiajodgrywaonoistotnąrolę
wnauczaniuprogramowaniaiwobliczeniachnakomputerachosobistych.Możnapowie-
dzieć,żestanowipodstawowyzakreswiedzyprogramistycznej,którąpowinienopanować
każdyinformatyk.Sytuacjęwtejdziedziniecharakteryzująnajlepiejtakiejęzyki,jak
PascalczyDelphi.
Wwypadkudużychsystemównależyrozwiązaćproblemwłaściwejwspółpracy
wieluludzi,różnychalgorytmówistrukturdanych.Poszczególnefragmentysystemu
mogąmiećróżnychautorów,pochodzićzbibliotekibyćniedostosowanewszczegółach