лекции (2008) (by Kravets) (1160829)
Текст из файла
Ìîñêîâñêèé ãîñóäàðñòâåííûé óíèâåðñèòåò èìåíè Ëîìîíîñîâà.Ôàêóëüòåò âû÷èñëèòåëüíîé ìàòåìàòèêè è êèáåðíåòèêè.Êàôåäðà ñèñòåìíîãî ïðîãðàììèðîâàíèÿ.Ëåêöèè ïî ßçûêàì ïðîãðàììèðîâàíèÿÑòóäåíòÊðàâåö Àëåêñåé. 328 ãðóïïà.ËåêòîðÃîëîâèí Èãîðü Ãåííàäüåâè÷.Ìîñêâà 2008Ëåêöèÿ 11.Ëèòåðàòóðà ïî êóðñóÂ.Ø.Êàóôìàí ßçûêè ïðîãðàììèðîâàíèÿ êîíöåïöèè è ïðèìåðûÒ.Ïðàòò Ì.Çåíêîâè÷ ßçûêè ïðîãðàììèðîâàíèÿ. Ðàçðàáîòêà è ðåàëèçàöèÿÐ.Ñåáåñò Îñíîâíûå ïîíÿòèÿ ÿçûêîâ ïðîãðàììèðîâàíèÿÁåí Àðè ßçûêè ïðîãðàììèðîâàíèÿ2.Îñíîâíûå ÿçûêè çàòðàãèâàåìûå â êóðñåÑ++(Ñòðàóñòðóï ßçûê ïðîãðàììèðîâàíèÿ Ñ++, Ñòðàóñòðóï Äèçàéí èýâîëþöèÿ Ñ++)Ada (Í.
Äæåõàíè. ßçûê Àäà)javaC# (Ñ# óñêîðåííûé êóðñ)Ìîäóëà-2(Í. Âèðò Ïðîãðàììèðîâàíèÿ íà ÿçûêå àäà)ÎáåðîíPascal/CÌîäóëà-2 çàäóìûâàëàñü êàê ëåãêèé ÿçûê, â ïðîòèâîâåñ ÿçûêó Ada.Ãëàâà 1Îïðåäåëåíèå è êëàññèôèêàöèÿ ÿçûêîâ ïðîãðàììèðîâàíèÿ.ßçûê ïðîãðàììèðîâàíèÿ ïîíÿòèå íå îáÿçàòåëüíî ñâÿçàííîå ñ êîìïüþòåðîì (íàïðèìåð ÿçûê APL ÿçûê äëÿ ìàòåìàòè÷åñêèõ ôîðìóë,PLANNER ÿçûê äëÿ ëþäåé ). Ìîæíî îïðåäåëèòü ÿçûê ïðîãðàììèðîâàíèÿ ýêñòåíñèâíî, òî åñòü ÷åðåç ìíîæåñòâî ïîíÿòèé (íàïðèìåð ñêàçàòü÷òî ßÏ ýòî Ñ++,C,Ada, è òàê äàëåå).Äðóãîå îïðåäåëåíèå: ßçûê ïðîãðàììèðîâàíèÿ èíñòðóìåíò ïëàíèðîâàíèÿ ïîâåäåíèÿ èñïîëíèòåëÿ.Âèäû ïðîãðàììèðîâàíèÿ1.Èãðîâîå ïðîãðàììèðîâàíèå (ïðîãðàììèðîâàíèÿ äëÿ ñåáÿ)2.Íàó÷íîå ïðîãðàììèðîâàíèå (äëÿ ñåáÿ èëè î÷åíü îãðàíè÷åííîãî êðóãàëèö)3.Èíäóñòðèàëüíîå ïðîãðàììèðîâàíèå (êîììåð÷åñêîå ïðîãðàììèðîâàíèå)Êëàññèôèêàöèÿ ïî ïàðàäèãìå ïðîãðàììèðîâàíèÿ1.Ïðîöåäóðíàÿ (èìïåðàòèâíàÿ) F(S)->S ïðîöåññ ïåðåõîäà èç ñîñòîÿíèÿâ ñîñòîÿíèå íåêîãî àâòîìàòà.
íàëè÷èå îïåðàòîðà ïðèñâàèâàíèÿ ñòðóêòóðèðîâàíèå ïàìÿòè (íàëè÷èå òèïîâ äàííûõ)2.Ôóíêöèîíàëüíàÿ ïàðàäèãìà1Ëåêöèÿ2Èñòîðè÷åñêèé î÷åðê ðàçâèòèÿ ÿçûêîâ ïðîãðàììèðîâàíèÿ. ïåðèîä ñ 1960 ïî 1980 ãîäà ïîÿâèëîñü îãðîìíîå êîëè÷åñòâî ÿçûêîâ ïðîãðàììèðîâàíèÿ (ìèíèìóì 400). Ýòî áûëî âûçâàíî òåì, ÷òî êàæäûé Â×.êàæäûé ñåðüåçíûé ïðîåêò ñ÷èòàë ñâîèì äîëãîì èìåòü ñâîé ñîáñòâåííûéÿçûê ïðîãðàììèðîâàíèÿ.1. Îáîñíîâàíèå âûáîðà ÿçûêîâ êóðñàFortranÏðîåêò ðàçðàáîòêè ýòîãî ÿçûêà ñ÷èòàëñÿ íåàêòóàëüíûì òàê êàê ñàìûìäîðîãèì ðåñóðñîì ñ÷èòàëîñü êîìïüþòåðíîå è ïàìÿòü âðåìÿ, ñëåäîâàòåëüíî áûñòðîäåéñòâèå è ýôôåêòèâíîñòü ïðîãðàììû ÿâëÿëèñü ãëàâíûìèïðèîðèòåòàìè.
Ïîíÿòíî ÷òî íèêàêîé òðàíñëÿòîð íå ñïîñîáåí ãåíåðèðîâàòü êîä, ïî ñòåïåíè ýôôåêòèâíîñòè ðàâíûé êîäó íàïèñàííîìó ÷åëîâåêîì. Íî ñîçäàòåëè ôîðòðàíà ÷åòêî çíàëè ÷òî õîòåëè è äîáèëèñü âñåõ ïîñòàâëåííûõ öåëåé. Ãëàâíûå çàêàç÷èêè íà ïðîãðàììû - âîåííîå âåäîìñòâî( ðàñ÷åòû èç îáëàñòè ìàò ôèçèêè). Ñíà÷àëà Ìàòåìàòèê/ôèçèê ðàçðàáàòûâàë àëãîðèòì - äàëåå ïðîãðàììèñò åãî ðåàëèçîâûâàë. Îáúÿñíåíèå øëîíà îñíîâå áëîê-ñõåì. Ïðîãðàììèñò çàíèìàëñÿ ðàñïðåäåëåíèåì ïàìÿòè èïåðåâîäîì àëãîðèòìà â ìàøèííûå êîäû(òî åñòü ôàêòè÷åñêè âûïîëíÿëôóíêöèè òðàíñëÿòîðà).
Îòëàäêà òàê æå ïðåäñòàâëÿëà ïðîáëåìó. Ðåçóëüòàòîì ðàáîòû ïðîãðàììû áûëà ðàñïå÷àòêà öèôðîâîé èíôîðìàöèè (íàïðèìåð äàìï ïàìÿòè). Ãëàâíûé ïðèîðèòåòîì áûëî æåëàíèå èñêëþ÷èòüèç ñõåìû ÷åëîâåêà êîòîðûé ïåðåâîäèòü àëãîðèòì â ìàøèííûé êîä. Óæåòîãäà ñóùåñòâîâàëè ïðîãðàììû ïî ïåðåâîäó ïðîãðàìì ñ àññåìáëåðà (àâòî êîäîâ) íà ìàøèííûé ÿçûê. Ñîîòâåòñòâåííî íåîáõîäèìî ñðåäñòâî ïîïåðåâîäó ïðîãðàìì ñ ÿçûêà ïîíÿòíîãî è èçâåñòíîãî ìàòåìàòèêàì íà ìàøèííûé êîä.
Âàæíåéøèå îïåðàòîðû - îïåðàòîð ïðèñâàèâàíèÿ,îïåðàöèèââîäà/âûâîäà, óñëîâíûå îïåðàòîðû, îïåðàòîðû ïåðåõîäà.Fortran - òðàíñëÿòîð ôîðìóë. Ìàøèííàÿ êîìàíäà IF - ïðîòîòèï îïåðàòîðà IF(e) L1 L2 L3 â ôîðòðàíå.  ôîðòðàíå ñóùåñòâîâàëî 4 ðàçíîâèäíîñòè îïåðàòîðîâ ïåðåõîäà.  1964 áûë ïðèíÿò ïåðâûé ñòàíäàðò ÿçûêàôîðòðàí ÿâëÿþùèéñÿ ñàìûì ïîïóëÿðíûì ñåãîäíÿ.1977 - íîâûé ñòàíäàðò. Ôîðòðàí ñòàë êðàéíå ïîïóëÿðíûì â ìèðå, íîïðè ýòîì âî âñåõ êíèæêàõ ïî ïðîãðàììèðîâàíèþ ôîðòðàí - èñòî÷íèêêîíòð-ïðèìåðîâ. Ïðîåêò ðàçðàáàòûâàëñÿ â ñïåøêå - ïîýòîìó áûëî ñäåëàíî äîñòàòî÷íî ìíîãî îøèáîê. Íàïðèìåð ôîðòðàí - åäèíñòâåííûé ÿçûêâ êîòîðîì õðàíåíèå ìàòðèö îðãàíèçîâàííî ïî ñòîëáöàì.
Îïåðàòîð âûâîäà æå âûâîäèò âñå ïîñòðî÷íî ( 1 âûâîä - îäíà ñòðî÷êà). Ñëåäîâàòåëüíî2íåîáõîäèìî ðàñøèðåíèÿ ÿçûêà äëÿ âûâîäà (ñïèñîê âûâîäà) íàïðèìåðäëÿ âûâîäà ìàòðèö.Ôîðòðàí ïðåäïîëàãàëñÿ äëÿ ðàáîòû ñ ìàòåìàòè÷åñêèìè ìîäåëÿìè,íî íà íåì ñòàëè ïèñàòü âñå ÷òî óãîäíî ( íàïðèìåð âèçóàëüíûé òåêñòîâûé ðåäàêòîð).Äî 1964 ôîðòðàí áûë áàçîâûì ÿçûêîì IBM.  ýòî âðåìÿâëèÿíèå IBM áûëî êðàéíå âåëèêî (êàê Oracle + intel + Ms ñåé÷àñ).
Ãëàâíûé íåäîñòàòîê ÿçûêà ôîðòðàí - îí ïðîâîöèðîâàë ïîÿâëåíèå îøèáîê âïðîãðàììàõ. Îñíîâíîé ïðèìåð - âçðûâ ñïóòíèêà îòïðàâëåííîãî â êîñìîñ(îøèáêà â ïðîãðàììå).Îïåðàòîð öèêëà â ïðîãðàììåDO 5 I=1,3îïåðàòîðû òåëà öèêëà5 CONTINUEÑ òî÷êè çðåíèÿ ôîðòðàíà ýòî êîððåêòíàÿ ïðîãðàììàÊàæäûé îïåðàòîð ôîðòðàíà áûë íà ñâîåé ñòðî÷êå (ñòðîêà ïåðôîêàðòûèëè ëåíòû(êàê ïðè÷èíà)).  ôîðòðàíå ïðîáåëû íå èãðàëè íèêàêîé ðîëè(òî åñòü ïðîãðàììà ìîãëà áûòü íàïèñàíà áåç åäèíîãî ïðîáåëà).Åñëè â ïðèâåäåííîì ôðàãìåíòå çàìåíèòü çàïÿòóþ íà òî÷êó(îïèñêà)òî ïðîãðàììà ñòàíåò òàêîéDO5I=1.3Äëÿ ýêîíîìèè ïàìÿòè íåò îáúÿâëåíèÿ ïåðåìåííûõ,Íî åñëè ïåðåìåííàÿíà÷èíàåòñÿ ñ áóêâ I-N òî îíà öåëî÷èñëåííàÿ, èíà÷å âåùåñòâåííàÿ. Áîëååòîãî äàííûå ïðèâÿçêè ìîæíî ïåðåîïðåäåëÿòü.
Ó Ôîðòðàíà ñóùåñòâóåòåùå ìíîæåñòâî íåäîñòàòêîâ (äëÿ èíäóñòðèàëüíîãî ïðîãðàììèðîâàíèÿ).Âäàííîé îøèáêå âèíîâàòû òå êòî ïðèíÿë ðåøåíèå èñïîëüçîâàòü ôîðòðàí âòàêîì ïðîåêòå(çàïóñê ñïóòíèêà).Íî äëÿ ìàòåìàòèêè (íàó÷íûõ ïðîåêòîâ)èäåàëåí. Ñóùåñòâóåò îãðîìíûé ôîíä ïðîãðàìì íà ôîðòðàíå íàêîïëåííûé ñî âðåìåíè åãî ïîÿâëåíèÿ. Ïîíÿòèå ïîäïðîãðàììû âîçíèêëî âïåðâûåâ Ôîðòðàíå.Ïðîãðàììû íà ôîðòðàíå ïîëó÷àëèñü î÷åíü ýôôåêòèâíûìè .Äàëåå íà÷àëè ðàçðàáàòûâàòü íîâûå ÿçûêè òåìè êîãî íå óñòðàèâàë ôîðòðàí: 19IFIP ðåøèëè ðàçðàáîòàòü ÿçûê äëÿ îáìåíà àëãîðèòìàìè ìåæäó ñîáîé.Ðåçóëüòàòîì ñòàë ÿçûê ÀËÃÎË êîòîðûé ñòàë ñòàíäàðòîì äëÿ ßÏ, îñîáåííî äëÿ óíèâåðñèòåòîâ Åâðîïû.Äîñòîèíñòâà ÀËÃÎËÀ: ôîòðàíå áûëè òîëüêî ñòàòè÷åñêèå ïåðåìåííûå.
 Àëãîëå - áëî÷íàÿñòðóêòóðà, ñòåêîâîå áëî÷íîå ðàñïðåäåëåíèå ïàìÿòè,ðåêóðñèÿ,(íî íå áûëî îïåðàòîðà ââîäà/âûâîäà).for i:=1 to N step 1 dobegins:=s+a[i]3endÏðîãðàììà íà ÀËÃÎË60Êëþ÷åâûå ñëîâà âûäåëÿëîñü ïî äîãîâîðåííîñòè - íà áóìàãå ïîä÷åðêèâàíèåì â ìàøèíå çàâèñèò îò ðåàëèçàöèè. Ïîýòîìó êàæäàÿ ðåàëèçàöèÿââîäèëà ñâîé íàáîð îïåðàòîðîâ ââîäà/âûâîäà è ñâîé ñïîñîá âûäåëåíèÿêëþ÷åâûõ ñëîâ - ñëåäîâàòåëüíî ïðîãðàììû íå ïåðåíîñèìû. Íî ïðè ýòîìâ ñòàíäàðòå Ôîðòðàíà ìíîãèå âåùè íå îïðåäåëÿëèñü - ñîîòâåòñòâåííîìíîãîå çàâèñåëî îò òåõ òðàíñëÿòîðîâ êîòîðûå óæå ñóùåñòâîâàëè íà ýòàïå ðàçðàáîòêè ñòàíäàðòà.
Ïðè ýòîì ôîðòðàí áûë ïðîùå ÀËÃÎËÀ è áûëïåðåíîñèìûì(åñëè ïðîãðàììà áûëà íàïèñàíà íà ñòàíäàðòå ). ÀËÃÎË îáëàäàåò ðÿäîì ñâîéñòâ(î íèõ ïîçäíåå) ïðîãðàììû íà ÀËÃÎËÅ íå áûëèýôôåêòèâíû, òàê êàê îñíîâíîé öåëüþ áûëà ïåðåäàòü ìàòåìàòè÷åñêóþêðàñîòó àëãîðèòìà íî íå ýôôåêòèâíîñòü.Íåôîðìàëüíûé êðèòåðèé êà÷åñòâà êîìïèëÿòîðà - ñðàâíèòü îòíîøåíèå ýôôåêòèâíîñòè îòòðàíñëèðîâàííîé ïðîãðàììû è ïðîãðàììû íà àññåìáëåðå (t1 t2).  êëàññè÷åñêîì âàðèàíòå t1/t2 áîëüøå 1. Íà Àëãîëåîíî 7-10, ïðè ýòîì íà ôîðòðàíå ôèðìû IBM (îïòèìèçèðóþùèé êîìïèëÿòîð) 1.05. Äëÿ RISC àðõèòåêòóð îòíîøåíèå ìîæåò áûòü ìåíüøå 1(ñëîæíîñòü àðõèòåêòóðû).
Ôîðòðàí ïðîäåìîíñòðèðîâàë "ïðèíöèï ýêîëîãè÷åñêèõ íèø êàæäûé âèä çàíèìàåò ñòðîãî îäíó ýêîëîãè÷åñêóþ íèøó. Òàêèìîáðàçîì ìîæíî ñêàçàòü ÷òî ó êàæäîãî ÿçûêà åñòü ñâîÿ ýêîëîãè÷åñêàÿ íèøà - ïðîáëåìíàÿ îáëàñòü è íàáîð íàâûêîâ, áèáëèîòåê,ëþäåé,àëãîðèòìîâè ïðî÷åãî, ñâÿçàííîãî ñ ýòèì ÿçûêîì. Ëþäÿì òÿæåëî çàáûâàòü ñòàðîå (íàâûêè,áèáëèîòåêè..).Ôîðòðàí çàíÿë íèøó - íàó÷íî òåõíè÷åñêèå âû÷èñëåíèÿ (îí çàíÿë åå ïåðâûì è ïîëó÷èë ðåøàþùåå ïðåèìóùåñòâî).Ñ òî÷êèçðåíèÿ íàó÷íî òåõíè÷åñêèõ âîïðîñîâ ïîÿâèëîñü ìíîæåñòâî ÿçûêîâ ïîñëå ôîðòðàíà âîçìîæíî ïðåâîñõîäÿùèõ åå, íî îíè íå ñìîãëè âûòåñíèòüôîðòðàí. Ïðèìåðîì âûòåñíåíèÿ ÿâëÿåòñÿ âûòåñíåíèå àññåìáëåðà èç íèøè ñèñòåìíîãî ïðîãðàììèðîâàíèÿ ÿçûêîì Ñ.Ìîäóëà-2 ñîçäàâàëñÿ äëÿ ñèñòåìíîãî ïðîãðàììèðîâàíèÿ íî íå ñìîãâûòåñíèòü ÿçûê Ñ. Ïðèñïîñîáèâøèñü ê íèøå ÿçûê óæå ïî÷òè íå ñïîñîáåí åå ïîêèíóòü.
Åñëè ÿçûê íåòî÷íî ïîçèöèîíèðîâàí äëÿ êàêîé-ëèáîíèøè(èëè åãî íèøà óæå çàíÿòà) òî îí ñ áîëüøîé âåðîÿòíîñòüþ íå ïîëó÷èò ïîïóëÿðíîñòè.ÏåðèîäûI.1950 - 1960ÔîðòðàíÀËÃÎË (1960)Àëãîë - ïåðâàÿ ðàçðàáîòêà ñåðüåçíîãî êîëëåêòèâà ó÷åíûõ. Àëãîë60 ïî4âëèÿë íà òàêèå ÿçûêè êàê íàïðèìåð Ïàñêàëü, ïðè îïèñàíèè ñèíòàêñèñààëãîëà âïåðâûå èñïîëüçîâàëèñü ÁÍÔ(ðàçðàáîòàííûå äëÿ îïèñàíèÿ ñèíòàêñèñà ýòîãî ÿçûêà). Êîãäà áûëè ââåäåíû ãðàììàòèêè ñòàëî ÿñíî ÷òîÁÍÔ ñîîòâåòñòâóþò ãðàììàòèêàì êëàññà 2. Ñî âðåìåí àëãîëà60 ñèíòàêñèñ ëþáûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ îïèñûâàëèñü ôîðìàëüíî (íàïðèìåð ñ ïîìîùüþ ÁÍÔ).1967 - ÿçûê simula67 (èìèòàöèîííîå ìîäåëèðîâàíèå - ñîçäàíèå ïðîãðàììíûé ìîäåëåé).
Ïîíÿòèå îáúåêòà/êëàññà. Êëþ÷åâûå ñëîâà class new.Îáúåêòû êëàññîâ çàâîäèëèñü òîëüêî â äèíàìè÷åñêîé ïàìÿòè ñ ïîìîùüþ new. Ñòðàóñòðóï ðàáîòàë ñ ýòèì ÿçûêîì. ðàçðàáàòûâàÿ Ñ++. ÊîãäàÑòðàóñòðóï ïðèåõàë â Àìåðèêó îí ñòàë çàíèìàòüñÿ èìèòàöèîííûì ìîäåëèðîâàíèåì ( äëÿ òåëåôîííûõ ñèñòåì). Îí ðàçðàáîòàë Ñ ñ êëàññàìè-êîòîðûé ïîòìî ýâîëþöèîíèðîâàë â Ñ++.
Èòàê simula ñòàëà çíàêîâûìÿçûêîì â ðàçâèòèè ßÏ.Íàó÷íàÿ çàäà÷à - íåáîëüøîé îáúåì äàííûõ è âû÷èñëèòåëüíîåìêèåîïåðàöèè ( èäåàëåí ôîðòðàí). Êîììåð÷åñêèå ïðèëîæåíèÿ - áîëüøèå îáúåìû äàííûõ è ïðîñòûå îïåðàöèè. Òðåáóåòñÿ ýôôåêòèâíîñòü îïåðàöèéââîäà âûâîäà.1959 COBOL.Áûë ñîçäàí ñïåö êîìèòåòîì - çàíÿë ñâîþ ýêîëîãè÷åñêóþíèøó(áèçíåñ ïðèëîæåíèÿ) + ïîääåðæêà ïðàâèòåëüñòâà ÑØÀ(îäèí èç÷ëåíîâ êîìèòåòà). Òàêèì îáðàçîì áîëüøèíñòâî êîììåð÷åñêèõ ïðèëîæåíèé áûëî íà ýòîì ÿçûêå(áàíêè è ïðî÷åå).Âñå êîìïüþòåðû ïîêóïàåìûåçà áþäæåòíûå äåíüãè äîëæíû áûëè èìåòü êîìïèëÿòîð êîáîëà. Äàæåñåé÷àñ â íåêîòîðûõ îðãàíèçàöèÿõ ðàáîòàþò ïðîãðàììû íà êîáîëå.Ïðîáëåìà 2000 - ñëåäñòâèå èñïîëüçîâàíèÿ êîáîëà (â 1959 íå äóìàëè î2000 ãîäó). Íà äàòó (DDMMYY) îòâîäèëîñü ìèíèìóì ïàìÿòè ( 2 öèôðûíà ãîä).  ðåçóëüòàòå îãðîìíûå ñóììû áûëè ïîòðà÷åíû è íà ïåðåïèñûâàíèå ïðîãðàìì íà êîáîëå ñ ó÷åòîì ïðîáëåìû 2000.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.