Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
14
ROZDZIAŁ1.WPROWADZENIE
zapisówwyższegopoziomu,dziękiktórymprogramiścimogliłatwiejpisaćob-
liczenianumeryczne,aplikacjebiznesoweiprogramyoperującenasymbolach.
Językitebyłytakudane,żedziśnadalużywane.
Wkolejnychdekadachpowstałowielenowychjęzykówzawierającychinno-
wacyjnecechy,którepomagałysprawić,abyprogramowaniestałosięłatwiejsze,
bardziejnaturalne,aprzedewszystkimniezawodne.Wdalszejczęścitegoroz-
działuomówimykilkakluczowychwłaściwości,którewspólnedlawielu
współczesnychjęzykówprogramowania.
Obecniemamytysiącejęzykówprogramowania.Możnajeklasyfikowaćna
wielesposobów.Jednąztychklasyfikacjijestpojęciegeneracji.Językipierwszej
generacjitojęzykimaszynowe,drugageneracjatoasemblery,trzeciazaśtojęzy-
kiwyższegopoziomu,takiejakFortran,Cobol,Lisp,C,C++,C#czyJava.
Językiczwartejgeneracjitojęzykizaprojektowanedookreślonychzastosowań,na
przykładNOMADdogenerowaniaraportów,SQLdlazapytańdobazdanychlub
Postscriptdoformatowaniatekstu.Terminjęzykipiątejgeneracjijeststosowany
dojęzykówopartychnalogicelubograniczeniachtakichjakPrologiOPS5.
Innaklasyfikacjajęzykówużywapojęciaimperatywnedlajęzyków,wktórych
programokreśla,jakobliczeniamająbyćwykonywane,ideklaratywnedlajęzyków,
wktórychprogramokreśla,jakieobliczeniamająbyćwykonane.Języki,takiejak
C,C++,C#iJava,językamiimperatywnymi.Wjęzykachimperatywnych
istniejepojęciestanuprogramuorazinstrukcji,którezmieniajątenstan.Języki
funkcyjne,takiejakMLczyHaskell,atakżejęzykizograniczeniamilogicznymi,
takiejakProlog,zwyklepostrzeganejakojęzykideklaratywne.
TerminjęzykvonNeumannadotyczyjęzykówprogramowania,którychmodel
obliczeniowyjestopartynaarchitekturzekomputerazdefiniowanejprzezvon
Neumanna.Wielewspółczesnychjęzyków,takichjakFortraniC,językami
vonNeumanna.
Językzorientowanyobiektowototaki,któryobsługujeprogramowanieobiek-
towe,czylistylprogramowania,wktórymprogramskładasięzezbioruobiektów,
którewchodzązesobąwinterakcje.Simula67orazSmalltalkbyłypierwszymi
ważnymijęzykamizorientowanymiobiektowo.Przykładybardziejwspółczesnych
językówobiektowychtoC++,C#,JavaorazRuby.
Językiskryptowetojęzykiinterpretowanewyposażonewoperatorywysokiego
poziomu,zaprojektowanedowykonywaniaobliczeńnsklejającychcałość”.Te
obliczeniabyłypierwotnienazywanenskryptami”
.Awk,JavaScript,Perl,PHP,
Python,RubyiTcltoprzykładypopularnychjęzykówskryptowych.Programy
pisanewjęzykachskryptowychczęstoznaczniekrótszeodrównoważnych
programównapisanychwtakichjęzykach,jakC.
1.3.2.Wpływnakompilatory
Jakożeprojektowaniejęzykówprogramowaniaikompilatorówjestnierozerwalnie
związane,postępywjęzykachprogramowaniastawiałynowewyzwaniaprzed
autoramikompilatorów.Musielioniwymyślaćalgorytmyireprezentacjedo