1. Îïðåäåëåíèå
ÿçûêà ïðîãðàììèðîâàíèÿ
2. Èñòîðèÿ
ÿçûêîâ ïðîãðàììèðîâàíèÿ
3. Ïîíÿòèå
ïàðàäèãìû ïðîãðàììèðîâàíèÿ
4.
Îáúåêòíî-îðèåíòèðîâàííîå ïðîãðàììèðîâàíèå
Ïðîãðåññ êîìïüþòåðíûõ òåõíîëîãèé îïðåäåëèë ïðîöåññ ïîÿâëåíèÿ íîâûõ ðàçíîîáðàçíûõ çíàêîâûõ ñèñòåì äëÿ çàïèñè àëãîðèòìîâ – ÿçûêîâ ïðîãðàììèðîâàíèÿ.
«Àëãîðèòìè÷åñêèé ÿçûê – ýòî íàáîð ñèìâîëîâ (àëôàâèò ÿçûêà), ñèñòåìà ïðàâèë îáðàçîâàíèÿ èç ýòèõ ñèìâîëîâ êîíñòðóêöèé, ñ ïîìîùüþ êîòîðûõ ïðåäñòàâëÿþòñÿ îïðåäåëåííûå êîìïîíåíòû àëãîðèòìà (ñèíòàêñèñ ÿçûêà), è ñèñòåìà ïðàâèë èñòîëêîâàíèÿ ýòèõ êîíñòðóêöèé, ïîçâîëÿþùèõ îäíîçíà÷íî âîñïðîèçâîäèòü ïðîöåññ ïåðåðàáîòêè äàííûõ (ñåìàíòèêà ÿçûêà)». Áîëåå êðàòêî ìîæíî ñêàçàòü, ÷òî «Íàçíà÷åíèå ÿçûêà ïðîãðàììèðîâàíèÿ ñîñòîèò â õðàíåíèè è ïåðåäà÷å óïîðÿäî÷åííûõ ïîñëåäîâàòåëüíîñòåé èíñòðóêöèé, èëè àëãîðèòìîâ».
Òàêèì
îáðàçîì, ÿçûê ïðîãðàììèðîâàíèÿ ñëóæèò äâóì ñâÿçàííûì ìåæäó ñîáîé öåëÿì: îí äàåò
ïðîãðàììèñòó àïïàðàò äëÿ çàäàíèÿ äåéñòâèé, êîòîðûå äîëæíû áûòü âûïîëíåíû, è
ôîðìèðóåò êîíöåïöèè, êîòîðûìè ïîëüçóåòñÿ ïðîãðàììèñò, ðàçìûøëÿÿ î òîì, ÷òî
äåëàòü.
Êîíêðåòíûé
êîìïüþòåð ñïîñîáåí ðàáîòàòü ñ ïðîãðàììàìè, íàïèñàííûìè íà åãî ðîäíîì ìàøèííîì
ÿçûêå. Ñóùåñòâóåò ïî÷òè ñòîëüêî æå ðàçíûõ ìàøèííûõ ÿçûêîâ, ñêîëüêî è
êîìïüþòåðîâ.
Ìîæíî
ïèñàòü ïðîãðàììû íåïîñðåäñòâåííî íà ìàøèííîì ÿçûêå, õîòÿ ýòî è ñëîæíî.  íà÷àëå
1950-õ ãã. ìàøèííûé ÿçûê áûë åäèíñòâåííûì ÿçûêîì. Äëÿ ñïàñåíèÿ ïðîãðàììèñòîâ îò
ñóðîâîãî ìàøèííîãî ÿçûêà ïðîãðàììèðîâàíèÿ, áûëè ñîçäàíû ÿçûêè âûñîêîãî óðîâíÿ (ò. å. íåìàøèííûå ÿçûêè), êîòîðûå ñòàëè
ñâîåîáðàçíûì ñâÿçóþùèì ìîñòîì ìåæäó ÷åëîâåêîì è ìàøèííûì ÿçûêîì êîìïüþòåðà.
ßçûêè âûñîêîãî óðîâíÿ ðàáîòàþò ÷åðåç òðàíñëÿöèîííûå ïðîãðàììû, êîòîðûå ââîäÿò
«èñõîäíûé êîä» (ãèáðèä àíãëèéñêèõ ñëîâ è ìàòåìàòè÷åñêèõ âûðàæåíèé, êîòîðûé
ñ÷èòûâàåò ìàøèíà), è â êîíå÷íîì èòîãå çàñòàâëÿåò êîìïüþòåð âûïîëíÿòü
ñîîòâåòñòâóþùèå êîìàíäû, êîòîðûå äàþòñÿ íà ìàøèííîì ÿçûêå.
Ñóùåñòâóåò
äâà îñíîâíûõ âèäà òðàíñëÿòîðîâ: èíòåðïðåòàòîðû, êîòîðûå ñêàíèðóþò è ïðîâåðÿþò
èñõîäíûé êîä â îäèí øàã, è êîìïèëÿòîðû, êîòîðûå ñêàíèðóþò èñõîäíûé êîä äëÿ
ïðîèçâîäñòâà òåêñòà ïðîãðàììû íà ìàøèííîì ÿçûêå, êîòîðàÿ çàòåì âûïîëíÿåòñÿ
îòäåëüíî.
Îäíîé èç ñàìûõ ðåâîëþöèîííûõ èäåé ïðèâåäøèõ ê ñîçäàíèþ àâòîìàòè÷åñêèõ öèôðîâûõ âû÷èñëèòåëüíûõ ìàøèí, áûëà âûñêàçàííàÿ â 20-õ ãîäàõ 19 âåêà ×àðëüçîì Áåáèäæåì ìûñëü î ïðåäâàðèòåëüíîé çàïèñè ïîðÿäêà äåéñòâèÿ ìàøèíû äëÿ ïîñëåäóþùåé àâòîìàòè÷åñêîé ðåàëèçàöèè âû÷èñëåíèé – ïðîãðàììå. È, õîòÿ èñïîëüçîâàííàÿ Áåáèäæåì çàïèñü ïðîãðàììû íà ïåðôîêàðòàõ, ïðèäóìàííàÿ äëÿ óïðàâëåíèÿ òàêèìè ñòàíêàìè ôðàíöóçñêèì èçîáðåòàòåëåì Æîçåôîì Ìàðè Æàêêàðîì, òåõíè÷åñêè íå èìååò íè÷åãî îáùåãî ñ ñîâðåìåííûìè ïðèåìàìè õðàíåíèÿ ïðîãðàìì â ÏÊ, ïðèíöèï çäåñü ïî ñóùåñòâó îäèí. Ñ ýòîãî ìîìåíòà íà÷èíàåòñÿ èñòîðèÿ ïðîãðàììèðîâàíèÿ.
Àäó Ëåâëåéñ, ñîâðåìåííèöó Áåáèäæà, íàçûâàþò ïåðâûì â ìèðå ïðîãðàììèñòîì. Îíà òåîðåòè÷åñêè ðàçðàáîòàëà íåêîòîðûå ïðèåìû óïðàâëåíèÿ ïîñëåäîâàòåëüíîñòüþ âû÷èñëåíèé, êîòîðûå èñïîëüçóþòñÿ â ïðîãðàììèðîâàíèè è ñåé÷àñ. Åþ æå áûëà îïèñàíà è îäíà èç âàæíåéøèõ êîíñòðóêöèé ïðàêòè÷åñêè ëþáîãî ñîâðåìåííîãî ÿçûêà ïðîãðàììèðîâàíèÿ – öèêë.
Ðåâîëþöèîííûì ìîìåíòîì â èñòîðèè ÿçûêîâ ïðîãðàììèðîâàíèÿ ñòàëî ïîÿâëåíèå ñèñòåìû êîäèðîâàíèÿ ìàøèííûõ êîìàíä ñ ïîìîùüþ ñïåöèàëüíûõ ñèìâîëîâ, ïðåäëîæåííîé Äæîíîì Ìîó÷ëè. Ñèñòåìà êîäèðîâàíèÿ, ïðåäëîæåííàÿ èì, âäîõíîâèëà îäíó èç åãî ñîòðóäíèö Ãðåéñ Ìþððåé Õîïïåð. Ïðè ðàáîòå íà êîìïüþòåðå «Ìàðê-1» åé è åå ãðóïïå ïðèøëîñü ñòîëêíóòüñÿ ñî ìíîãèìè ïðîáëåìàìè è âñå, ÷òî èìè ïðèäóìàíî, áûëî âïåðâûå.  ÷àñòíîñòè îíè ïðèäóìàëè ïîäïðîãðàììû. È åùå îäíî ôóíäàìåíòàëüíîå ïîíÿòèå òåõíèêè ïðîãðàììèðîâàíèÿ âïåðâûå ââåëè Õîïïåð è åå ãðóïïà – «îòëàäêà».
 êîíöå 40-õ ãîäîâ Äæ. Ìîó÷ëè ñîçäàë ñèñòåìó ïîä íàçâàíèåì «Short Code», êîòîðàÿ ÿâëÿëàñü ïðèìèòèâíûì ÿçûêîì ïðîãðàììèðîâàíèÿ âûñîêîãî óðîâíÿ.  íåé ïðîãðàììèñò çàïèñûâàë ðåøàåìóþ çàäà÷ó â âèäå ìàòåìàòè÷åñêèõ ôîðìóë, à çàòåì, èñïîëüçóÿ ñïåöèàëüíóþ òàáëèöó, ïåðåâîäèë ñèìâîë çà ñèìâîëîì, ïðåîáðàçîâûâàë ýòè ôîðìóëû â äâóõëèòåðíûå êîäû.  äàëüíåéøåì ñïåöèàëüíàÿ ïðîãðàììà êîìïüþòåðà ïðåâðàùàëà ýòè êîäû â äâîè÷íûé ìàøèííûé êîä. Ñèñòåìà, ðàçðàáîòàííàÿ Äæ. Ìîó÷ëè, ñ÷èòàåòñÿ îäíèì èç ïåðâûõ ïðèìèòèâíûõ èíòåðïðåòàòîðîâ.
Óæå â 1951 ã. Õîïïåð ñîçäàëà ïåðâûé â ìèðå êîìïèëÿòîð è åþ æå áûë ââåäåí ñàì ýòîò òåðìèí. Êîìïèëÿòîð Õîïïåð îñóùåñòâëÿë ôóíêöèþ îáúåäèíåíèÿ êîìàíä è â õîäå òðàíñëÿöèè ïðîèçâîäèë îðãàíèçàöèþ ïîäïðîãðàìì, âûäåëåíèå ïàìÿòè êîìïüþòåðà, ïðåîáðàçîâàíèå êîìàíä âûñîêîãî óðîâíÿ (â òî âðåìÿ ïñåâäîêîäîâ) â ìàøèííûå êîìàíäû. «Ïîäïðîãðàììû íàõîäÿòñÿ â áèáëèîòåêå (êîìïüþòåðà), à êîãäà âû ïîäáèðàåòå ìàòåðèàë èç áèáëèîòåêè – ýòî íàçûâàåòñÿ êîìïèëÿöèåé» – òàê îíà îáúÿñíÿëà ïðîèñõîæäåíèå ââåäåííîãî åþ òåðìèíà.
 1954 ãîäó ãðóïïà ïîä ðóêîâîäñòâîì Ã. Õîïïåð ðàçðàáîòàëà ñèñòåìó, âêëþ÷àþùóþ ÿçûê ïðîãðàììèðîâàíèÿ è êîìïèëÿòîð, êîòîðàÿ â äàëüíåéøåì ïîëó÷èëà íàçâàíèå Math-Matic. Ïîñëå óäà÷íîãî çàâåðøåíèÿ ðàáîò ïî ñîçäàíèþ Math-Matic Õîïïåð è åå ãðóïïà ïðèíÿëèñü çà ðàçðàáîòêó íîâîãî ÿçûêà è êîìïèëÿòîðà, êîòîðûé ïîçâîëèë áû ïîëüçîâàòåëÿìè ïðîãðàììèðîâàòü íà ÿçûêå, áëèçêîì ê îáû÷íîìó àíãëèéñêîìó.  1958 ã. ïîÿâèëñÿ êîìïèëÿòîð Flow-Matic. Êîìïèëÿòîð Flow-Matic áûë ïåðâûì ÿçûêîì äëÿ çàäà÷ îáðàáîòêè êîììåð÷åñêèõ äàííûõ.
Ðàçðàáîòêè â ýòîì íàïðàâëåíèè ïðèâåëè ê ñîçäàíèþ ÿçûêà Êîáîë (COBOL – Common Business Oriented Language). Îí áûë ñîçäàí â 1960 ãîäó.  ýòîì ÿçûêå ïî ñðàâíåíèþ ñ Ôîðòðàíîì è Àëãîëîì, ñëàáåå ðàçâèòû ìàòåìàòè÷åñêèå ñðåäñòâà, íî çàòî õîðîøî ðàçâèòû ñðåäñòâà îáðàáîòêè òåêñòîâ, îðãàíèçàöèÿ âûâîäà äàííûõ â ôîðìå òðåáóåìîãî äîêóìåíòà. Îí çàäóìûâàëñÿ êàê îñíîâíîé ÿçûê äëÿ ìàññîâîé îáðàáîòêè äàííûõ â ñôåðàõ óïðàâëåíèÿ è áèçíåñà.
Ñåðåäèíà 50-õ ãîäîâ õàðàêòåðèçóåòñÿ ñòðåìèòåëüíûì ïðîãðåññîì â îáëàñòè ïðîãðàììèðîâàíèÿ. Ðîëü ïðîãðàììèðîâàíèÿ â ìàøèííûõ êîìàíäàõ ñòàëà óìåíüøàòüñÿ. Ñòàëè ïîÿâëÿòüñÿ ÿçûêè ïðîãðàììèðîâàíèÿ íîâîãî òèïà, âûñòóïàþùèå â ðîëè ïîñðåäíèêà ìåæäó ìàøèíàìè è ïðîãðàììèñòàìè. Ïåðâûì è îäíèì èç íàèáîëåå ðàñïðîñòðàíåííûõ áûë Ôîðòðàí (FORTRAN, îò FORmula TRANslator – ïåðåâîä÷èê ôîðìóë), ðàçðàáîòàííûé ãðóïïîé ïðîãðàììèñòîâ ôèðìû IBM â 1954 ãîäó (ïåðâàÿ âåðñèÿ). Ýòîò ÿçûê áûë îðèåíòèðîâàí íà íàó÷íî-òåõíè÷åñêèå ðàñ÷åòû ìàòåìàòè÷åñêîãî õàðàêòåðà è ÿâëÿåòñÿ êëàññè÷åñêèì ÿçûêîì ïðîãðàììèðîâàíèÿ ïðè ðåøåíèè íà ÏÊ ìàòåìàòè÷åñêèõ è èíæåíåðíûõ çàäà÷.
Äëÿ ïåðâûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ âûñîêîãî óðîâíÿ ïðåäìåòíàÿ îðèåíòàöèÿ ÿçûêîâ áûëà õàðàêòåðíîé ÷åðòîé.
Îñîáîå ìåñòî ñðåäè ÿçûêîâ ïðîãðàììèðîâàíèÿ çàíèìàåò Àëãîë, ïåðâàÿ âåðñèÿ êîòîðîãî ïîÿâèëàñü â 1958 ãîäó. Îäíèì èç ðàçðàáîò÷èêîâ Àëãîëà áûë «îòåö» Ôîðòðàíà Äæîí Áýêóñ. Íàçâàíèå ÿçûêà ALGOrithmic Language ïîä÷åðêèâàåò òî îáñòîÿòåëüñòâî, ÷òî îí ïðåäíàçíà÷åí äëÿ çàïèñè àëãîðèòìîâ. Áëàãîäàðÿ ÷åòêîé ëîãè÷åñêîé ñòðóêòóðå Àëãîë ñòàë ñòàíäàðòíûì ñðåäñòâîì çàïèñè àëãîðèòìîâ â íàó÷íîé è òåõíè÷åñêîé ëèòåðàòóðå.
 ñåðåäèíå 60-õ ãîäîâ Òîìàñ Êóðö è Äæîí Êàìåíè (ñîòðóäíèêè ìàòåìàòè÷åñêîãî ôàêóëüòåòà Äàðòìóíòñêîãî êîëëåäæà) ñîçäàëè ñïåöèàëèçèðîâàííûé ÿçûê ïðîãðàììèðîâàíèÿ, êîòîðûé ñîñòîÿë èç ïðîñòûõ ñëîâ àíãëèéñêîãî ÿçûêà. Íîâûé ÿçûê íàçâàëè «óíèâåðñàëüíûì ñèìâîëè÷åñêèì êîäîì äëÿ íà÷èíàþùèõ» (Beginner All-Purpose Symbolic Instruction Code, èëè, ñîêðàùåííî, BASIC). Ãîäîì ðîæäåíèÿ íîâîãî ÿçûêà ìîæíî ñ÷èòàòü 1964. Ñåãîäíÿ óíèâåðñàëüíûé ÿçûê Áåéñèê (èìåþùèé ìíîæåñòâî âåðñèé) ïðèîáðåë áîëüøóþ ïîïóëÿðíîñòü è ïîëó÷èë øèðîêîå ðàñïðîñòðàíåíèå ñðåäè ïîëüçîâàòåëåé ÏÊ ðàçëè÷íûõ êàòåãîðèé âî âñåì ìèðå.  çíà÷èòåëüíî ìåðå ýòîìó ñïîñîáñòâîâàëî òî, ÷òî Áåéñèê íà÷àëè èñïîëüçîâàòü êàê âñòðîåííûé ÿçûê ïåðñîíàëüíûõ êîìïüþòåðîâ, øèðîêîå ðàñïðîñòðàíåíèå êîòîðûõ íà÷àëîñü â êîíöå 70-õ ãîäîâ. Îäíàêî Áåéñèê íåñòðóêòóðíûé ÿçûê, è ïîýòîìó îí ïëîõî ïîäõîäèò äëÿ îáó÷åíèÿ êà÷åñòâåííîìó ïðîãðàììèðîâàíèþ. Ñïðàâåäëèâîñòè ðàäè ñëåäóåò çàìåòèòü, ÷òî ïîñëåäíèå âåðñèè Áåéñèêà äëÿ ÏÊ (íàïðèìåð, QBasic) ñòàëè áîëåå ñòðóêòóðíûìè è ïî ñâîèì èçîáðàçèòåëüíûì âîçìîæíîñòÿì ïðèáëèæàþòñÿ ê òàêèì ÿçûêàì, êàê Ïàñêàëü.
Ðàçðàáîò÷èêè îðèåíòèðîâàëè ÿçûêè íà ðàçíûå êëàññû çàäà÷, â òîé èëè èíîé ìåðå ïðèâÿçûâàëè èõ ê êîíêðåòíîé àðõèòåêòóðå ÏÊ, ðåàëèçîâûâàëè ëè÷íûå âêóñû è èäåè.  60-å ãîäû áûëè ïðåäïðèíÿòû ïîïûòêè ïðåîäîëåòü ýòó «ðàçíîãîëîñèöó» ïóòåì ñîçäàíèÿ óíèâåðñàëüíîãî ÿçûêà ïðîãðàììèðîâàíèÿ. Ïåðâûì äåòèùåì ýòîãî íàïðàâëåíèÿ ñòàë PL/1 (Programm Language One), ðàçðàáîòàííûé ôèðìîé IBM â 1967 ãîäó. Ýòîò ÿçûê ïðåòåíäîâàë íà âîçìîæíîñòü ðåøàòü ëþáûå çàäà÷è: âû÷èñëèòåëüíûå, îáðàáîòêè òåêñòîâ, íàêîïëåíèÿ è ïîèñêà èíôîðìàöèè. Îäíàêî îí îêàçàëñÿ ñëèøêîì ñëîæíûì, òðàíñëÿòîð ñ íåãî – íåäîñòàòî÷íî îïòèìàëüíûì è ñîäåðæàë ðÿä íåâûÿâëåííûõ îøèáîê.
Îäíàêî ëèíèÿ íà óíèâåðñàëèçàöèþ ÿçûêîâ áûëà ïîääåðæàíà. Ñòàðûå ÿçûêè áûëè ìîäåðíèçèðîâàíû â óíèâåðñàëüíûå âàðèàíòû: Àëãîë-68 (1968 ã.), Ôîðòðàí-77. Ïðåäïîëàãàëîñü, ÷òî ïîäîáíûå ÿçûêè áóäóò ðàçâèâàòüñÿ è óñîâåðøåíñòâîâàòüñÿ, ñòàíóò âûòåñíÿòü âñå îñòàëüíûå. Îäíàêî íè îäíà èç ýòèõ ïîïûòîê íå óâåí÷àëàñü óñïåõîì.
ßçûê ËÈÑÏ ïîÿâèëñÿ â 1965 ãîäó. Îñíîâíûì â íåì ñëóæèò ïîíÿòèå ðåêóðñèâíî îïðåäåëåííûõ ôóíêöèé. Ïîñêîëüêó äîêàçàíî, ÷òî ëþáîé àëãîðèòì ìîæåò áûòü îïèñàí ñ ïîìîùüþ íåêîòîðîãî íàáîðà ðåêóðñèâíûõ ôóíêöèé, òî ËÈÑÏ ïî ñóòè ÿâëÿåòñÿ óíèâåðñàëüíûì ÿçûêîì. Ñ åãî ïîìîùüþ ÏÊ ìîæåò ìîäåëèðîâàòü äîñòàòî÷íî ñëîæíûå ïðîöåññû, â ÷àñòíîñòè – èíòåëëåêòóàëüíóþ äåÿòåëüíîñòü ëþäåé.
Ïðîëîã ðàçðàáîòàí âî Ôðàíöèè â 1972 ãîäó äëÿ ðåøåíèÿ ïðîáëåì «èñêóññòâåííîãî èíòåëëåêòà». Ïðîëîã ïîçâîëÿåò â ôîðìàëüíîì âèäå îïèñûâàòü ðàçëè÷íûå óòâåðæäåíèÿ, ëîãèêó ðàññóæäåíèé è çàñòàâëÿåò ÏÊ äàâàòü îòâåòû íà çàäàííûå âîïðîñû.
Çíà÷èòåëüíûì ñîáûòèåì â èñòîðèè ÿçûêîâ ïðîãðàììèðîâàíèÿ ñòàëî ñîçäàíèå â 1971 ãîäó ÿçûêà Ïàñêàëü. Åãî àâòîð – øâåéöàðñêèé ó÷åíûé Íèêëàóñ Âèðò. Âèðò íàçâàë åãî â ÷åñòü âåëèêîãî ôðàíöóçñêîãî ìàòåìàòèêà è ðåëèãèîçíîãî ôèëîñîôà XVII âåêà Áëåçà Ïàñêàëÿ, êîòîðûé èçîáðåë ïåðâîå ñóììèðóþùåå óñòðîéñòâî, èìåííî ïîýòîìó íîâîìó ÿçûêó áûëî ïðèñâîåíî åãî èìÿ. Ýòîò ÿçûê ïåðâîíà÷àëüíî ðàçðàáàòûâàëñÿ êàê ó÷åáíûé ÿçûê ñòðóêòóðíîãî ïðîãðàììèðîâàíèÿ, è, äåéñòâèòåëüíî, ñåé÷àñ îí ÿâëÿåòñÿ îäíèì èç îñíîâíûõ ÿçûêîâ îáó÷åíèÿ ïðîãðàììèðîâàíèþ â øêîëàõ è âóçàõ.
 1975 ãîäó äâà ñîáûòèÿ ñòàëè âåõàìè â èñòîðèè ïðîãðàììèðîâàíèÿ – Áèëë Ãåéòñ è Ïîë Àëëåí çàÿâèëè î ñåáå, ðàçðàáîòàâ ñâîþ âåðñèþ Áåéñèêà, à Âèðò è Éåíñåí âûïóñòèëè êëàññè÷åñêîå îïèñàíèå ÿçûêà «Pascal User Manual and Report».
Íå ìåíåå âïå÷àòëÿþùåé, â òîì ÷èñëå è ôèíàíñîâîé, óäà÷è äîáèëñÿ Ôèëèï Êàí, ôðàíöóç, ðàçðàáîòàâøèé â 1983 ãîäó ñèñòåìó Òóðáî-Ïàñêàëü. Ñóòü åãî èäåè ñîñòîÿëà â îáúåäèíåíèè ïîñëåäîâàòåëüíûõ ýòàïîâ îáðàáîòêè ïðîãðàììû – êîìïèëÿöèè, ðåäàêòèðîâàíèÿ ñâÿçåé, îòëàäêè è äèàãíîñòèêè îøèáîê – â åäèíîì èíòåðôåéñå. Òóðáî-Ïàñêàëü – ýòî íå òîëüêî ÿçûê è òðàíñëÿòîð ñ íåãî, íî åùå è îïåðàöèîííàÿ îáîëî÷êà, ïîçâîëÿþùàÿ ïîëüçîâàòåëþ óäîáíî ðàáîòàòü íà Ïàñêàëå. Ýòîò ÿçûê âûøåë çà ðàìêè ó÷åáíîãî ïðåäíàçíà÷åíèÿ è ñòàë ÿçûêîì ïðîôåññèîíàëüíîãî ïðîãðàììèðîâàíèÿ ñ óíèâåðñàëüíûìè âîçìîæíîñòÿìè.  ñèëó íàçâàííûõ äîñòîèíñòâ Ïàñêàëü ñòàë èñòî÷íèêîì ìíîãèõ ñîâðåìåííûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ. Ñ òåõ ïîð ïîÿâèëîñü íåñêîëüêî âåðñèé Òóðáî-Ïàñêàëÿ, ïîñëåäíÿÿ – ñåäüìàÿ.
Ôèðìà Borland/Inprise çàâåðøèëà ëèíèþ ïðîäóêòîâ Òóðáî-Ïàñêàëü è ïåðåøëà ê âûïóñêó ñèñòåìû âèçóàëüíîé ðàçðàáîòêè äëÿ Windows – Delphi.
Áîëüøîé îòïå÷àòîê íà ñîâðåìåííîå ïðîãðàììèðîâàíèå íàëîæèë ÿçûê Ñè (ïåðâàÿ âåðñèÿ – 1972 ãîä), ÿâëÿþùèéñÿ î÷åíü ïîïóëÿðíûì â ñåðåäå ðàçðàáîò÷èêîâ ñèñòåì ïðîãðàììíîãî îáåñïå÷åíèÿ (âêëþ÷àÿ îïåðàöèîííûå ñèñòåìû). Ýòîò ÿçûê ñîçäàâàëñÿ êàê èíñòðóìåíòàëüíûé ÿçûê äëÿ ðàçðàáîòêè îïåðàöèîííûõ ñèñòåì, òðàíñëÿòîðîâ, áàç äàííûõ è äðóãèõ ñèñòåìíûõ è ïðèêëàäíûõ ïðîãðàìì. Ñè ñî÷åòàåò â ñåáå êàê ÷åðòû ÿçûêà âûñîêîãî óðîâíÿ, òàê è ìàøèííî-îðèåíòèðîâàííîãî ÿçûêà, äîïóñêàÿ ïðîãðàììèñòà êî âñåì ìàøèííûì ðåñóðñàì, ÷åãî íå îáåñïå÷èâàþò òàêèå ÿçûêè êàê Áåéñèê è Ïàñêàëü.
Ïåðèîä ñ êîíöà 60-õ äî íà÷àëà 80-õ ãîäîâ õàðàêòåðèçóåòñÿ áóðíûì ðîñòîì ÷èñëà ðàçëè÷íûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ, ñîïðîâîæäàâøèì êðèçèñ ïðîãðàììíîãî îáåñïå÷åíèÿ.  ÿíâàðå 1975 ãîäà Ïåíòàãîí ðåøèë íàâåñòè ïîðÿäîê â õàîñå òðàíñëÿòîðîâ è ó÷ðåäèë êîìèòåò, êîòîðîìó áûëî ïðåäïèñàíî ðàçðàáîòàòü îäèí óíèâåðñàëüíûé ÿçûê.  ìàå 1979 ãîäà áûë îáúÿâëåí ïîáåäèòåëü – ãðóïïà ó÷åíûõ âî ãëàâå ñ Æàíîì Èõáèà. Ïîáåäèâøèé ÿçûê îêðåñòèëè Àäà, â ÷åñòü Îãàñòû Àäû Ëåâëåéñ. Ýòîò ÿçûê ïðåäíàçíà÷åí äëÿ ñîçäàíèÿ è äëèòåëüíîãî (ìíîãîëåòíåãî) ñîïðîâîæäåíèÿ áîëüøèõ ïðîãðàììíûõ ñèñòåì, äîïóñêàåò âîçìîæíîñòü ïàðàëëåëüíîé îáðàáîòêè, óïðàâëåíèÿ ïðîöåññàìè â ðåàëüíîì âðåìåíè.
1950
|
|
1960 |
|
1970 |
|
1980 1990… |
|
Ðèñóíîê 1. Èñòîðèÿ ñîçäàíèÿ ÿçûêîâ ïðîãðàììèðîâàíèÿ |
 òå÷åíèå ìíîãèõ ëåò ïðîãðàììíîå îáåñïå÷åíèå ñòðîèëîñü íà îñíîâå îïåðàöèîííûõ è ïðîöåäóðíûõ ÿçûêîâ, òàêèõ êàê Ôîðòðàí, Áåéñèê, Ïàñêàëü, Àäà, Ñè. Ïî ìåðå ýâîëþöèè ÿçûêîâ ïðîãðàììèðîâàíèÿ ïîëó÷èëè øèðîêîå ðàñïðîñòðàíåíèå è äðóãèå, ïðèíöèïèàëüíî èíûå, ïîäõîäû ê ñîçäàíèþ ïðîãðàìì.
Ñóùåñòâóåò áîëüøîå êîëè÷åñòâî êëàññèôèêàöèé ÿçûêîâ ïðîãðàììèðîâàíèÿ ïî ðàçëè÷íûì ïðèçíàêàì. Íàèáîëåå ðàñïðîñòðàíåííûìè ÿâëÿþòñÿ ñëåäóþùèå êëàññèôèêàöèè:
- ÿçûêè ïðîãðàììèðîâàíèÿ âûñîêîãî (Ïàñêàëü, Áåéñèê) è íèçêîãî óðîâíÿ (Àññåìáëåð);
- ñòðîãî òèïèçèðîâàííûå (Ïàñêàëü) è íåñòðîãî òèïèçèðîâàííûå (Áåéñèê);
- ñ ïîääåðæêîé îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ (Ñè++) è áåç è ò.ä.
Ðàññìîòðèì äðóãóþ êëàññèôèêàöèþ. ßçûêè ïðîãðàììèðîâàíèÿ äåëÿòñÿ íà:
1) Ìàøèííî-îðèåíòèðîâàííûå ÿçûêè:
- ìàøèííûå ÿçûêè;
- ÿçûêè ñèìâîëè÷åñêîãî êîäèðîâàíèÿ;
- àâòîêîäû;
- ìàêðîñ.
2) Ìàøèííî-íåçàâèñèìûå ÿçûêè:
- ïðîáëåìíî-îðèåíòèðîâàííûå ÿçûêè;
- óíèâåðñàëüíûå ÿçûêè;
- äèàëîãîâûå ÿçûêè;
- íåïðîöåäóðíûå ÿçûêè.
Ìàøèííî-îðèåíòèðîâàííûå ÿçûêè
Ìàøèííî-îðèåíòèðîâàííûå ÿçûêè – ýòî ÿçûêè, íàáîðû îïåðàòîðîâ è èçîáðàçèòåëüíûå ñðåäñòâà êîòîðûõ ñóùåñòâåííî çàâèñÿò îò îñîáåííîñòåé ÏÊ (âíóòðåííåãî ÿçûêà, ñòðóêòóðû ïàìÿòè è ò. ä.). Ìàøèííî-îðèåíòèðîâàííûå ÿçûêè èìåþò ñëåäóþùèå îñîáåííîñòè:
- âûñîêîå êà÷åñòâî ñîçäàâàåìûõ ïðîãðàìì (êîìïàêòíîñòü è ñêîðîñòü âûïîëíåíèÿ);
- âîçìîæíîñòü èñïîëüçîâàíèÿ êîíêðåòíûõ àïïàðàòíûõ ðåñóðñîâ;
- ïðåäñêàçóåìîñòü îáúåêòíîãî êîäà è çàêàçîâ ïàìÿòè;
- äëÿ ñîñòàâëåíèÿ ýôôåêòèâíûõ ïðîãðàìì íåîáõîäèìî çíàòü ñèñòåìó êîìàíä è îñîáåííîñòè ôóíêöèîíèðîâàíèÿ äàííîãî ÏÊ;
- òðóäîåìêîñòü ïðîöåññà ñîñòàâëåíèÿ ïðîãðàìì (îñîáåííî íà ìàøèííûõ ÿçûêàõ è ßÑÊ), ïëîõî çàùèùåííîãî îò ïîÿâëåíèÿ îøèáîê;
- íèçêàÿ ñêîðîñòü ïðîãðàììèðîâàíèÿ;
- íåâîçìîæíîñòü íåïîñðåäñòâåííîãî èñïîëüçîâàíèÿ ïðîãðàìì, ñîñòàâëåííûõ íà ýòèõ ÿçûêàõ, íà ÝÂÌ äðóãèõ òèïîâ.
Ìàøèííî-îðèåíòèðîâàííûå ÿçûêè ïî ñòåïåíè àâòîìàòè÷åñêîãî ïðîãðàììèðîâàíèÿ ïîäðàçäåëÿþòñÿ íà êëàññû.
Ìàøèííûé ÿçûê
Îòäåëüíûé êîìïüþòåð èìååò ñâîé îïðåäåëåííûé ìàøèííûé ÿçûê (äàëåå Ìß), åìó ïðåäïèñûâàþò âûïîëíåíèå óêàçûâàåìûõ îïåðàöèé íàä îïðåäåëÿåìûìè èìè îïåðàíäàìè, ïîýòîìó Ìß ÿâëÿåòñÿ êîìàíäíûì. Â êîìàíäå ñîîáùàåòñÿ èíôîðìàöèÿ î ìåñòîíàõîæäåíèè îïåðàíäîâ è òèïå âûïîëíÿåìîé îïåðàöèè.
 íîâûõ ìîäåëÿõ ÏÊ íàìå÷àåòñÿ òåíäåíöèÿ ê ïîâûøåíèþ âíóòðåííèõ ÿçûêîâ ìàøèííî-àïïàðàòíûì ïóòåì ðåàëèçîâûâàòü áîëåå ñëîæíûå êîìàíäû, ïðèáëèæàþùèåñÿ ïî ñâîèì ôóíêöèîíàëüíûì äåéñòâèÿì ê îïåðàòîðàì àëãîðèòìè÷åñêèõ ÿçûêîâ ïðîãðàììèðîâàíèÿ.
ßçûêè
Ñèìâîëè÷åñêîãî Êîäèðîâàíèÿ
ßçûêè Ñèìâîëè÷åñêîãî Êîäèðîâàíèÿ (äàëåå ßÑÊ), òàê æå, êàê è Ìß, ÿâëÿþòñÿ êîìàíäíûìè. Îäíàêî êîäû îïåðàöèé è àäðåñà â ìàøèííûõ êîìàíäàõ, ïðåäñòàâëÿþùèå ñîáîé ïîñëåäîâàòåëüíîñòü äâîè÷íûõ (âî âíóòðåííåì êîäå) èëè âîñüìåðè÷íûõ (÷àñòî èñïîëüçóåìûõ ïðè íàïèñàíèè ïðîãðàìì) öèôð, â ßÑÊ çàìåíåíû íà ñèìâîëû (èäåíòèôèêàòîðû), ôîðìà íàïèñàíèÿ êîòîðûõ ïîìîãàåò ïðîãðàììèñòó ëåã÷å çàïîìèíàòü ñìûñëîâîå ñîäåðæàíèå îïåðàöèè. Ýòî îáåñïå÷èâàåò ñóùåñòâåííîå óìåíüøåíèå ÷èñëà îøèáîê ïðè ñîñòàâëåíèè ïðîãðàìì.
Èñïîëüçîâàíèå ñèìâîëè÷åñêèõ àäðåñîâ – ïåðâûé øàã ê ñîçäàíèþ ßÑÊ.
Êîìàíäû ÏÊ âìåñòî èñòèííûõ (ôèçè÷åñêèõ) àäðåñîâ ñîäåðæàò ñèìâîëè÷åñêèå àäðåñà.
Ïî ðåçóëüòàòàì ñîñòàâëåííîé ïðîãðàììû îïðåäåëÿåòñÿ òðåáóåìîå êîëè÷åñòâî ÿ÷ååê
äëÿ õðàíåíèÿ èñõîäíûõ ïðîìåæóòî÷íûõ è ðåçóëüòèðóþùèõ çíà÷åíèé. Íàçíà÷åíèå
àäðåñîâ, âûïîëíÿåìîå îòäåëüíî îò ñîñòàâëåíèÿ ïðîãðàììû â ñèìâîëè÷åñêèõ àäðåñàõ,
ìîæåò ïðîâîäèòüñÿ ìåíåå êâàëèôèöèðîâàííûì ïðîãðàììèñòîì èëè ñïåöèàëüíîé
ïðîãðàììîé, ÷òî â çíà÷èòåëüíîé ñòåïåíè îáëåã÷àåò òðóä ïðîãðàììèñòà.
Àâòîêîäû
Ñóùåñòâóþò ÿçûêè, âêëþ÷àþùèå â ñåáÿ âñå âîçìîæíîñòè ßÑÊ, ïîñðåäñòâîì ðàñøèðåííîãî ââåäåíèÿ ìàêðîêîìàíä - îíè íàçûâàþòñÿ àâòîêîäû.
 ðàçëè÷íûõ ïðîãðàììàõ
âñòðå÷àþòñÿ íåêîòîðûå äîñòàòî÷íî ÷àñòî èñïîëüçóþùèåñÿ êîìàíäíûå
ïîñëåäîâàòåëüíîñòè, êîòîðûå ñîîòâåòñòâóþò îïðåäåëåííûì ïðîöåäóðàì
ïðåîáðàçîâàíèÿ èíôîðìàöèè. Ýôôåêòèâíàÿ ðåàëèçàöèÿ òàêèõ ïðîöåäóð îáåñïå÷èâàåòñÿ
îôîðìëåíèåì èõ â âèäå ñïåöèàëüíûõ ìàêðîêîìàíä è âêëþ÷åíèåì ïîñëåäíèõ â ÿçûê
ïðîãðàììèðîâàíèÿ, äîñòóïíûé ïðîãðàììèñòó. Ìàêðîêîìàíäû ïåðåâîäÿòñÿ â ìàøèííûå
êîìàíäû äâóìÿ ïóòÿìè – ðàññòàíîâêîé è
ãåíåðèðîâàíèåì.  ïîñòàíîâî÷íîé
ñèñòåìå ñîäåðæàòñÿ «îñòîâû» - ñåðèè êîìàíä, ðåàëèçóþùèõ
òðåáóåìóþ ôóíêöèþ, îáîçíà÷åííóþ ìàêðîêîìàíäîé. Ìàêðîêîìàíäû îáåñïå÷èâàþò
ïåðåäà÷ó ôàêòè÷åñêèõ ïàðàìåòðîâ, êîòîðûå â ïðîöåññå òðàíñëÿöèè âñòàâëÿþòñÿ â
«îñòîâ» ïðîãðàììû, ïðåâðàùàÿ å¸ â ðåàëüíóþ ìàøèííóþ ïðîãðàììó.
 ñèñòåìå ñ ãåíåðàöèåé
èìåþòñÿ ñïåöèàëüíûå ïðîãðàììû, àíàëèçèðóþùèå ìàêðîêîìàíäó, êîòîðûå îïðåäåëÿþò,
êàêóþ ôóíêöèþ íåîáõîäèìî âûïîëíèòü è ôîðìèðóþò íåîáõîäèìóþ ïîñëåäîâàòåëüíîñòü
êîìàíä, ðåàëèçóþùèõ äàííóþ ôóíêöèþ.
Îáå óêàçàííûõ ñèñòåìû
èñïîëüçóþò òðàíñëÿòîðû ñ ßÑÊ è íàáîð ìàêðîêîìàíä, êîòîðûå òàêæå ÿâëÿþòñÿ
îïåðàòîðàìè àâòîêîäà.
Ðàçâèòûå àâòîêîäû ïîëó÷èëè
íàçâàíèå àññåìáëåðû. Ñåðâèñíûå ïðîãðàììû è ïð., êàê ïðàâèëî, ñîñòàâëåíû íà
ÿçûêàõ òèïà àññåìáëåð.
Ìàêðîñ
ßçûê, ÿâëÿþùèéñÿ ñðåäñòâîì äëÿ çàìåíû ïîñëåäîâàòåëüíîñòè
ñèìâîëîâ îïèñûâàþùèõ âûïîëíåíèå òðåáóåìûõ äåéñòâèé ÝÂÌ íà áîëåå ñæàòóþ ôîðìó - íàçûâàåòñÿ ìàêðîñ (ñðåäñòâî çàìåíû).
 îñíîâíîì, ìàêðîñ
ïðåäíàçíà÷åí äëÿ òîãî, ÷òîáû ñîêðàòèòü çàïèñü èñõîäíîé ïðîãðàììû. Êîìïîíåíò
ïðîãðàììíîãî îáåñïå÷åíèÿ, îáåñïå÷èâàþùèé ôóíêöèîíèðîâàíèå ìàêðîñîâ, íàçûâàåòñÿ ìàêðîïðîöåññîðîì. Íà ìàêðîïðîöåññîð ïîñòóïàåò ìàêðîîïðåäåëÿþùèé è èñõîäíûé
òåêñò. Ðåàêöèÿ ìàêðîïðîöåññîðà íà âûçîâ - âûäà÷à âûõîäíîãî òåêñòà.
Ìàêðîñ îäèíàêîâî ìîæåò ðàáîòàòü, êàê ñ ïðîãðàììàìè, òàê è ñ
äàííûìè.
Ìàøèííî-íåçàâèñèìûå
ÿçûêè
Ìàøèííî-íåçàâèñèìûå ÿçûêè – ýòî ñðåäñòâî îïèñàíèÿ àëãîðèòìîâ ðåøåíèÿ çàäà÷ è èíôîðìàöèè, ïîäëåæàùåé îáðàáîòêå. Îíè óäîáíû â èñïîëüçîâàíèè äëÿ øèðîêîãî êðóãà ïîëüçîâàòåëåé è íå òðåáóþò îò íèõ çíàíèÿ îñîáåííîñòåé îðãàíèçàöèè ôóíêöèîíèðîâàíèÿ ÏÊ.
Ïîäîáíûå ÿçûêè ïîëó÷èëè íàçâàíèå âûñîêîóðîâíåâûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ. Ïðîãðàììû, ñîñòàâëÿåìûå íà òàêèõ ÿçûêàõ, ïðåäñòàâëÿþò ñîáîé ïîñëåäîâàòåëüíîñòè îïåðàòîðîâ, ñòðóêòóðèðîâàííûå ñîãëàñíî ïðàâèëàì ðàññìàòðèâàíèÿ ÿçûêà (çàäà÷è, ñåãìåíòû, áëîêè è ò. ä.). Îïåðàòîðû ÿçûêà îïèñûâàþò äåéñòâèÿ, êîòîðûå äîëæíà âûïîëíÿòü ñèñòåìà ïîñëå òðàíñëÿöèè ïðîãðàììû íà Ìß.
Òàêèì îáðàçîì, êîìàíäíûå ïîñëåäîâàòåëüíîñòè (ïðîöåäóðû, ïîäïðîãðàììû), ÷àñòî èñïîëüçóåìûå â ìàøèííûõ ïðîãðàììàõ, ïðåäñòàâëåíû â âûñîêîóðîâíåâûõ ÿçûêàõ îòäåëüíûìè îïåðàòîðàìè. Ïðîãðàììèñò ïîëó÷èë âîçìîæíîñòü íå ðàñïèñûâàòü â äåòàëÿõ âû÷èñëèòåëüíûé ïðîöåññ íà óðîâíå ìàøèííûõ êîìàíä, à ñîñðåäîòî÷èòüñÿ íà îñíîâíûõ îñîáåííîñòÿõ àëãîðèòìà.
Ïðîáëåìíî-îðèåíòèðîâàííûå
ÿçûêè
Ñ ðàñøèðåíèåì îáëàñòåé ïðèìåíåíèÿ âû÷èñëèòåëüíîé
òåõíèêè âîçíèêëà íåîáõîäèìîñòü ôîðìàëèçîâàòü ïðåäñòàâëåíèå ïîñòàíîâêè è ðåøåíèå
íîâûõ êëàññîâ çàäà÷. Íåîáõîäèìî áûëî ñîçäàòü òàêèå ÿçûêè ïðîãðàììèðîâàíèÿ,
êîòîðûå, èñïîëüçóÿ â äàííîé îáëàñòè îáîçíà÷åíèÿ è òåðìèíîëîãèþ, ïîçâîëèëè áû
îïèñûâàòü òðåáóåìûå àëãîðèòìû ðåøåíèÿ äëÿ ïîñòàâëåííûõ çàäà÷, èìè ñòàëè ïðîáëåìíî-îðèåíòèðîâàííûå ÿçûêè. Ýòè
ÿçûêè îðèåíòèðîâàíû íà ðåøåíèå îïðåäåëåííûõ ïðîáëåì, äîëæíû îáåñïå÷èòü
ïðîãðàììèñòà ñðåäñòâàìè, ïîçâîëÿþùèìè êîðîòêî è ÷åòêî ôîðìóëèðîâàòü çàäà÷ó è
ïîëó÷àòü ðåçóëüòàòû â òðåáóåìîé ôîðìå.
Ïðîáëåìíûõ ÿçûêîâ î÷åíü ìíîãî, íàïðèìåð:
- Ôîðòðàí, Àëãîë – ÿçûêè, ñîçäàííûå äëÿ ðåøåíèÿ ìàòåìàòè÷åñêèõ çàäà÷;
- Simula, Ñëýíã - äëÿ ìîäåëèðîâàíèÿ;
- Ëèñï, Ñíîáîë – äëÿ ðàáîòû ñî ñïèñî÷íûìè ñòðóêòóðàìè.
Óíèâåðñàëüíûå
ÿçûêè
Óíèâåðñàëüíûå ÿçûêè áûëè ñîçäàíû äëÿ øèðîêîãî êðóãà çàäà÷: êîììåð÷åñêèõ, íàó÷íûõ, ìîäåëèðîâàíèÿ è ò. ä. Ïåðâûé óíèâåðñàëüíûé ÿçûê áûë ðàçðàáîòàí ôèðìîé IBM, ñòàâøèé â ïîñëåäîâàòåëüíîñòè ÿçûêîâ PL/1. Âòîðîé ïî ìîùíîñòè óíèâåðñàëüíûé ÿçûê íàçûâàåòñÿ Àëãîë-68.
Äèàëîãîâûå
ÿçûêè
Ïîÿâëåíèå íîâûõ òåõíè÷åñêèõ âîçìîæíîñòåé ïîñòàâèëî çàäà÷ó ïåðåä ñèñòåìíûìè ïðîãðàììèñòàìè – ñîçäàòü ïðîãðàììíûå ñðåäñòâà, îáåñïå÷èâàþùèå îïåðàòèâíîå âçàèìîäåéñòâèå ÷åëîâåêà ñ ÏÊ èõ íàçâàëè äèàëîãîâûìè ÿçûêàìè.
Ýòè ðàáîòû âåëèñü â äâóõ íàïðàâëåíèÿõ. Ñîçäàâàëèñü ñïåöèàëüíûå óïðàâëÿþùèå ÿçûêè äëÿ îáåñïå÷åíèÿ îïåðàòèâíîãî âîçäåéñòâèÿ íà ïðîõîæäåíèå çàäà÷, êîòîðûå ñîñòàâëÿëèñü íà ëþáûõ ðàííåå íåðàçðàáîòàííûõ (íå äèàëîãîâûõ) ÿçûêàõ. Ðàçðàáàòûâàëèñü òàêæå ÿçûêè, êîòîðûå êðîìå öåëåé óïðàâëåíèÿ îáåñïå÷èâàëè áû îïèñàíèå àëãîðèòìîâ ðåøåíèÿ çàäà÷.
Íåîáõîäèìîñòü îáåñïå÷åíèÿ îïåðàòèâíîãî âçàèìîäåéñòâèÿ ñ ïîëüçîâàòåëåì ïîòðåáîâàëà ñîõðàíåíèÿ â ïàìÿòè ÝÂÌ êîïèè èñõîäíîé ïðîãðàììû äàæå ïîñëå ïîëó÷åíèÿ îáúåêòíîé ïðîãðàììû â ìàøèííûõ êîäàõ. Ïðè âíåñåíèè èçìåíåíèé â ïðîãðàììó ñ èñïîëüçîâàíèåì äèàëîãîâîãî ÿçûêà ñèñòåìà ïðîãðàììèðîâàíèÿ ñ ïîìîùüþ ñïåöèàëüíûõ òàáëèö óñòàíàâëèâàåò âçàèìîñâÿçü ñòðóêòóð èñõîäíîé è îáúåêòíîé ïðîãðàìì. Ýòî ïîçâîëÿåò îñóùåñòâèòü òðåáóåìûå ðåäàêöèîííûå èçìåíåíèÿ â îáúåêòíîé ïðîãðàììå.
Îäíèì èç ïðèìåðîâ äèàëîãîâûõ ÿçûêîâ ÿâëÿåòñÿ Áåéñèê.
Íåïðîöåäóðíûå
ÿçûêè
Íåïðîöåäóðíûå ÿçûêè ñîñòàâëÿþò ãðóïïó ÿçûêîâ, îïèñûâàþùèõ îðãàíèçàöèþ äàííûõ, îáðàáàòûâàåìûõ ïî ôèêñèðîâàííûì àëãîðèòìàì (òàáëè÷íûå ÿçûêè è ãåíåðàòîðû îò÷åòîâ), è ÿçûêîâ ñâÿçè ñ îïåðàöèîííûìè ñèñòåìàìè.
Ïîçâîëÿÿ ÷åòêî îïèñûâàòü êàê çàäà÷ó, òàê è íåîáõîäèìûå äëÿ åå ðåøåíèÿ äåéñòâèÿ, òàáëèöû ðåøåíèé äàþò âîçìîæíîñòü â íàãëÿäíîé ôîðìå îïðåäåëèòü, êàêèå óñëîâèÿ äîëæíû áûòü âûïîëíåíû ïðåæäå ÷åì ïåðåõîäèòü ê êàêîìó-ëèáî äåéñòâèþ. Îäíà òàáëèöà ðåøåíèé, îïèñûâàþùàÿ íåêîòîðóþ ñèòóàöèþ, ñîäåðæèò âñå âîçìîæíûå áëîê-ñõåìû ðåàëèçàöèé àëãîðèòìîâ ðåøåíèÿ.
Òàáëè÷íûå ìåòîäû ëåãêî îñâàèâàþòñÿ ñïåöèàëèñòàìè ëþáûõ ïðîôåññèé. Ïðîãðàììû, ñîñòàâëåííûå íà òàáëè÷íîì ÿçûêå, óäîáíî îïèñûâàþò ñëîæíûå ñèòóàöèè, âîçíèêàþùèå ïðè ñèñòåìíîì àíàëèçå.
ßçûêè ïðîãðàììèðîâàíèÿ ñëóæàò ðàçíûì öåëÿì, è èõ âûáîð îïðåäåëÿåòñÿ óäîáíîñòüþ äëÿ ïîëüçîâàòåëÿ, ïðèãîäíîñòüþ äëÿ äàííîãî êîìïüþòåðà è äàííîé çàäà÷è. À çàäà÷è äëÿ êîìïüþòåðà áûâàþò ñàìûå ðàçíîîáðàçíûå: âû÷èñëèòåëüíûå, ýêîíîìè÷åñêèå, ãðàôè÷åñêèå, ýêñïåðòíûå è ò. ä. Òàêàÿ ðàçíîòèïíîñòü ðåøàåìûõ êîìïüþòåðîì çàäà÷ è îïðåäåëÿåò ìíîãîîáðàçèå ÿçûêîâ ïðîãðàììèðîâàíèÿ.  ïðîãðàììèðîâàíèè íàèëó÷øèé ðåçóëüòàò äîñòèãàåòñÿ ïðè èíäèâèäóàëüíîì ïîäõîäå, èñõîäÿùåì èç êëàññà çàäà÷è, óðîâíÿ è èíòåðåñîâ ïðîãðàììèñòà.
Ïàðàäèãìû ïðîãðàììèðîâàíèÿ – ýòî ëèøü ðàçëè÷íûå èíñòðóìåíòû, êîòîðûå ìîæíî èñïîëüçîâàòü ïðè ïðîãðàììèðîâàíèè. Êàæäûé èç ýòèõ èíñòðóìåíòîâ ïî-ñâîåìó õîðîø. Íî ýòî íå çíà÷èò, ÷òî îíè "ýôôåêòèâíî óíèâåðñàëüíû". Òî åñòü, íà ñàìîì äåëå, ðàçëè÷íûå ìåòîäèêè ïðîãðàììèðîâàíèÿ äàþò ðàçíûé âûèãðûø äëÿ ðåøåíèÿ çàäà÷ ðàçíûõ êëàññîâ. Ýòîò âûèãðûø ìîæíî ìåðèòü ïî äâóì ïàðàìåòðàì:
· ýôôåêòèâíîñòü ïðîãðàììíîãî îáåñïå÷åíèÿ íà ñîâðåìåííûõ ÝÂÌ
· îáùèå çàòðàòû íà ðàçðàáîòêó ïðîãðàììíîãî îáåñïå÷åíèÿ
Òàê êàê ñîâðåìåííûå êîìïüþòåðû (ïåðñîíàëüíûå, êàê íàèáîëåå øèðîêî ðàñïðîñòðàíåííûå è, êàê íè ñòðàííî, íàèáîëåå âîñòðåáîâàííûå øèðîêèì ïîëüçîâàòåëåì) ïðàêòè÷åñêè âñå ïîñòðîåíû ïî ïðèíöèïàì, çàëîæåííûì åùå Ôîí Íåéìàíîì â ñåðåäèíå íàøåãî âåêà. Òî åñòü, åñòü ïðîöåññîð, åñòü ïàìÿòü, åñòü âíåøíèå óñòðîéñòâà, è âñå ýòî ðàáîòàåò ïîä óïðàâëåíèåì ïîñëåäîâàòåëüíîé âûáîðêè êîìàíä èç ïàìÿòè.
Ñîâðåìåííûå êîìïüþòåðû ïðàêòè÷åñêè âñå îðèåíòèðîâàíû íà ïîñëåäîâàòåëüíûå âû÷èñëåíèÿ. Ñëåäîâàòåëüíî, ïàðàäèãìîé, èìåþùåé íàèáîëåå "åñòåñòâåííóþ" ðåàëèçàöèþ ñåìàíòèêè íà íûíåøíèõ êîìïüþòåðàõ, ÿâëÿåòñÿ èìïåðàòèâíîå ïðîãðàììèðîâàíèå. Îíî çàâåäîìî âûèãðûâàåò ëþáîé äðóãîé ìåòîäîëîãèè â ýôôåêòèâíîñòè ðåàëèçàöèè. Õîðîøèå òðàíñëÿòîðû, íàïðèìåð, ñ ÷èñòûõ îáúåêòíî-îðèåíòèðîâàííûõ ÿçûêîâ – âåùü äîñòàòî÷íî ðåäêàÿ. Ïî èçëîæåííûì âûøå ïðè÷èíàì íå ñòîèò îñóæäàòü îòäåëüíûå ïàðàäèãìû èñêëþ÷èòåëüíî ðóêîâîäñòâóÿñü àðãóìåíòîì: "ìàëà ýôôåêòèâíîñòü ãîòîâîé ïðîãðàììû", çàáûâàÿ î òîì, ÷òî ïðàêòè÷åñêè âñå ñëîæíûå ïðîãðàììû ðàáîòàþò íå òàê áûñòðî è òðåáóþò áîëüøèõ îáúåìîâ ïàìÿòè.
Çàìåòèì, ÷òî ïðàêòè÷åñêè ëþáîé ÿçûê ïðîãðàììèðîâàíèÿ â íàøè äíè – ýòî ÿçûê îïðåäåëåíèé. Ïðîãðàììû ïðåäñòàâëÿþò èç ñåáÿ ìíîæåñòâî îïðåäåëåíèé ïðîãðàììíûõ îáúåêòîâ (òèïîâ äàííûõ, ôóíêöèé, ...), êîòîðûå êàê-òî âçàèìîñâÿçàíû. Ìåòîäîëîãèè ïðîãðàììèðîâàíèÿ, êàê ïðàâèëî, ôîêóñèðóþòñÿ íà îïèñàíèè àëãîðèòìè÷åñêîé ÷àñòè îïðåäåëåíèé, âõîäÿùèõ â ïðîãðàììó. Ìåòîäîëîãèÿ äëÿ ðàáîòû ñ îïèñàòåëüíîé ÷àñòüþ âñåãî îäíà: ïðîãðàììà äîëæíà áûòü ìàêñèìàëüíî ñòðóêòóðèðîâàíà. Ýòî ïîìîãàåò ïåðåèñïîëüçîâàòü åäèíîæäû íàïèñàííûé êîä, äà è ïðîñòî îáëåã÷àåò ïîíèìàíèå òåêñòà ïðîãðàììû. Ñòðóêòóðèðîâàííîñòü ïðîãðàììû ïîçâîëÿåò ïîâûñèòü óðîâåíü äåêëàðàòèâíîñòè (òî åñòü, åùå ñèëüíåå îòîðâàòüñÿ îò äåòàëåé àðõèòåêòóðû êîíêðåòíîãî êîìïüþòåðà è ïðîãðàììèðîâàòü ïðàêòè÷åñêè â òåðìèíàõ ïðåäìåòíîé îáëàñòè çàäà÷è) äàæå äëÿ ïðîãðàììèðîâàíèÿ íà ÿçûêå àññåìáëåðà ïðîöåññîðà Intel.  àëãîðèòìè÷åñêîé æå ÷àñòè ìíîãèå ñîâðåìåííûå ÿçûêè íà ñàìîì äåëå ïîääåðæèâàþò â ÿâíîì âèäå íåñêîëüêî ïàðàäèãì ïðîãðàììèðîâàíèÿ.
Äëÿ îïèñàíèÿ ñèíòàêñèñà áóäóò èñïîëüçîâàíû ãðàììàòèêè â ðàñøèðåííîé ôîðìå Áåêóñà-Íàóýðà.  ïðàâîé ÷àñòè òàêèõ ãðàììàòèê äîïóñêàåòñÿ èñïîëüçîâàíèå ñëåäóþùèõ "ðåãóëÿðíûõ îïåðàöèé":
A B -
ïîñëåäîâàòåëüíî À, çà òåì Â.
A | B - àëüòåðíàòèâà. ×èòàåòñÿ: "A èëè B".
A* - ïðîèçâîëüíîå êîëè÷åñòâî ïîâòîðåíèé (â òîì ÷èñëå - 0 ðàç) À. ×èòàåòñÿ:
"ïîñëåäîâàòåëüíîñòü À".
A # B - ýêâèâàëåíòíî A ( B A )*. ×èòàåòñÿ: "ïîñëåäîâàòåëüíîñòü À ÷åðåç
Â".
Òåðìèíàëüíûå ñèìâîëû âûäåëÿþòñÿ ïîä÷åðêèâàíèåì.
Îáúåêòíî-îðèåíòèðîâàííîå ïðîãðàììèðîâàíèå ïîÿâèëîñü íà ñâåò áîæèé èç íåäð ñîáûòèéíî-óïðàâëÿåìîãî ïðîãðàììèðîâàíèÿ è ïðàêòè÷åñêè çàòìèëî åãî ñâîèì ñâåòîì, òàê êàê îêàçàëîñü çíà÷èòåëüíî áîëåå ìîùíûì è óíèâåðñàëüíûì ñðåäñòâîì ïðîãðàììèðîâàíèÿ è ïðîåêòèðîâàíèÿ.
 ÷èñòîì îáúåêòíî-îðèåíòèðîâàííîì ïðîãðàììèðîâàíèè âñå, ÷òî ìîæíî - ïðîöåññû, äàííûå, ñîáûòèÿ - ÿâëÿþòñÿ îáúåêòàìè. Âñå îáúåêòû ðàñïîëàãàþò íåêîòîðûìè "ñîáñòâåííûìè" äàííûìè, ïðåäñòàâëåííûìè êàê ññûëêè íà äðóãèå îáúåêòû. Îáúåêòû ìîãóò îáìåíèâàòüñÿ ìåæäó ñîáîé ñîîáùåíèÿìè. Ïðè ïîëó÷åíèè îáúåêòîì ñîîáùåíèÿ çàïóñêàåòñÿ ñîîòâåòñòâóþùèé åìó îáðàáîò÷èê, èíà÷å íàçûâàåìûé ìåòîäîì. Ó îáúåêòà åñòü àññîöèàòèâíûé êîíòåéíåð, êîòîðûé ïîçâîëÿåò ïîëó÷èòü ïî ñîîáùåíèþ åãî ìåòîä äëÿ åãî îáðàáîòêè. Êðîìå ýòîãî, ó îáúåêòà åñòü îáúåêò-ïðåäîê. Åñëè ìåòîä äëÿ îáðàáîòêè ñîîáùåíèÿ íå íàéäåí, ñîîáùåíèå áóäåò ïåðåíàïðàâëåíî îáúåêòó-ïðåäêó. Ýòó ñòðóêòóðó â öåëîì (òàáëèöà îáðàáîò÷èêîâ + ïðåäêè) èç ñîîáðàæåíèé ýôôåêòèâíîñòè âûäåëÿþò â îòäåëüíûé îáúåêò, íàçûâàåìûé êëàññîì äàííîãî îáúåêòà. Ó ñàìîãî îáúåêòà áóäåò ññûëêà íà îáúåêò, ïðåäñòàâëÿþùèé åãî êëàññ. Îáúåêò ïî îòíîøåíèþ ê ñêîâåìó êëàññó ÿâëÿåòñÿ ýêçåìëÿðîì. Òàê êàê êëàññû òîæå ïðåäñòàâëåíû, êàê îáúåêòû, ñóùåñòâóåò êëàññ, îïðåäåëÿþùèé ïîâåäåíèå, îáùåå äëÿ âñåõ êëàññîâ. Òàêîé êëàññ ïðèíÿòî íàçûâàòü ìåòàêëàññîì.
Âàæíî âûäåëèòü ñëåäóþùèå îñíîâíûå ñâîéñòâà îáúåêòîâ:
1.) Òàê êàê îäèí îáúåêò ìîæåò âîçäåéñòâîâàòü íà äðóãîé èñêëþ÷èòåëüíî ïðè ïîìîùè ïîñûëêè ïîñëåäíåìó ñîîáùåíèé, îí íå ìîæåò êàê-ëèáî íåïîñðåäñòâåííî ðàáîòàòü ñ ñîáñòâåííûìè äàííûìè "ñîáåñåäíèêà", è, ñëåäîâàòåëüíî, íå ìîæåò íàðóøèòü èõ âíóòðåííþþ ñîãëàñîâàííîñòü. Ýòî ñâîéñòâî (ñîêðûòèå äàííûõ) ïðèíÿòî íàçûâàòü èíêàïñóëÿöèåé.
2.) Òàê êàê îáúåêòû âçàèìîäåéñòâóþò èñêëþ÷èòåëüíî çàñ÷åò îáìåíà ñîîáùåíèÿìè, îáúåêòû-ñîáåñåäíèêè ìîãóò íè÷åãî íå çíàòü î ðåàëèçàöèè îáðàáîò÷èêîâ ñîîáùåíèé ó ñâîåãî âèçàâè. Âçàèìîäåéñòâèå ïðîèñõîäèò èñêëþ÷èòåëüíî â òåðìèíàõ ñîîáùåíèé/ñîáûòèé, êîòîðûå äîñòàòî÷íî ëåãêî ïðèâÿçàòü ê ïðåäìåòíîé îáëàñòè. Ýòî ñâîéñòâî (îïèñàíèå âçàèìîäåéñòâèÿ èñêëþ÷èòåëüíî â òåðìèíàõ ïðåäìåòíîé îáëàñòè) íàçûâàþò àáñòðàêöèåé.
3.) Îáúåêòû âçàèìîäåéñòâóþò èñêëþ÷èòåëüíî ÷åðåç ïîñûëêó ñîîáùåíèé äðóã äðóãó. Ïîýòîìó åñëè â êàêîì-ëèáî ñöåíàðèè âçàèìîäåéñòâèÿ îáúåêòîâ çàìåíèòü ïðîèçâîëüíûé îáúåêò äðóãèì, ñïîñîáíûì îáðàáàòûâàòü òå æå ñîîáùåíèÿ, ñöåíàðèé òàê æå áóäåò ðåàëèçóåì. Ýòî ñâîéñòâî (âîçìîæíîñòü ïîäìåíû îáúåêòà äðóãèì îáúåêòîì ñî ñõîäíîé ñòðóêòóðîé êëàññà) íàçûâàåòñÿ ïîëèìîðôèçìîì.
Îòíîøåíèå "ïîòîìîê-ïðåäîê" íà êëàññàõ ïðèíÿòî íàçûâàòü íàñëåäîâàíèåì.
Âñå ýòè ñâîéñòâà ïî-îòäåëüíîñòè âñòðå÷àþòñÿ è â äðóãèõ ìåòîäîëîãèÿõ ïðîãðàììèðîâàíèÿ. Òàê, ëîêàëüíûå ïåðåìåííûå èíêàïñóëèðîâàíû â ïðîöåäóðå. Îáúåêòíî-îðèåíòèðîâàííîå ïðîãðàììèðîâàíèå äîñòàòî÷íî ãàðìîíè÷íî èõ ñî÷åòàåò.
Ñèíòàêñèñ ÷èñòûõ îáúåêòíî-îðèåíòèðîâàííûõ ÿçûêîâ îïèñûâàåò âñåãî îäíó îïåðàöèþ: ïîñëàòü ñîîáùåíèå M îáúåêòó À ñ ïàðàìåòðàìè B1..Ân. Ïàðàìåòðû ñîîáùåíèÿ - ýòî îáúåêòû, êîòîðûå ñàìè ìîãóò áûòü ðåçóëüòàòàìè îáðàáîòêè äðóãèõ ñîîáùåíèé. ×àñòî îïåðàöèþ "âåðíóòü îáúåêò-ðåçóëüòàò" òàê æå ââîäÿò â ÿâíîì âèäå, õîòÿ åå äîñòàòî÷íî ëåãêî ðåàëèçîâàòü êàê ïîñûëêó ñîîáùåíèÿ ñèñòåìíîìó îáúåêòó "ñòåê âîçâðàùàåìûõ çíà÷åíèé".
Åñëè â ÷èñòîì îáúåêòíî-îðèåíòèðîâàííîì ÿçûêå íóæíî ñîçäàòü íîâûé êëàññ - òðåáóåòñÿ ïîñëàòü êëàññó-ïðåäêó ñîîáùåíèå: "ïîðîäèòü íàñëåäíèêà" ( sublcass ). Ñóùåñòâóåò êëàññ, ÿâëÿþùèéñÿ âåðøèíîé âñåé èåðàðõèè íàñëåäîâàíèÿ (êàê ïðàâèëî, íàûâàåìûé Object), òàê ÷òî ïðåäîê áóäåò ó âñåõ êëàññîâ, äàæå ÿâíî åãî íå èìåþùèõ. Äëÿ îïèñàíèÿ îáðàáîòêè ñîîáùåíèÿ íóæíî ïîñëàòü êëàññó, â êîòîðîì çàäàåòñÿ îáðàáîò÷èê, ñîîáùåíèå: "óñòàíîâèòü íîâûé îáðàáîò÷èê ñîîáùåíèÿ" ( answer ).