Ñ ìîìåíòà ïîÿâëåíèÿ ïåðâûõ ýëåêòðîííî-âû÷èñëèòåëüíûõ ìàøèí ðàçðàáîòêà ïðîãðàììíîãî îáåñïå÷åíèÿ ïðîøëà áîëüøîé ïóòü: îò âîñõèùåíèÿ ôàêòîì íàïèñàòü õîòü êàêóþ-íèáóäü ïðîãðàììó äî îñîçíàíèÿ òîãî, ÷òî èìåííî òåõíîëîãèÿ ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ îïðåäåëÿåò ïðîãðåññ â âû÷èñëèòåëüíîé òåõíèêå.
Ðàíåå ðàçâèòèå âû÷èñëèòåëüíîé òåõíèêè áûëî ñîñðåäîòî÷åíî íà ðåøåíèè òåõíè÷åñêèõ ïðîáëåì. Ïðåäìåòîì çàáîò áûëà, ïðåæäå âñåãî, àïïàðàòóðà, âû÷èñëèòåëüíàÿ ìàøèíà êàê òàêîâàÿ. Êàçàëîñü âïîëíå åñòåñòâåííûì, ÷òî ïðîãðàììû äëÿ òàêèõ ìàøèí äîëæíû áûëè ðàçðàáàòûâàòüñÿ â äâîè÷íûõ êîäàõ. Ïðîãðàììèðîâàíèå áûëî óäåëîì ýíòóçèàñòîâ.
Èñòîðèÿ ðàçâèòèÿ îáúåêòíî-îðèåíòèðîâàííîãî ïîäõîäà îòðàæàåò è ïîâòîðÿåò èñòîðèþ âû÷èñëèòåëüíîé òåõíèêè â öåëîì. Ñ 1940-õ ãîäîâ ïåðâûå ðàáîòû ïî âû÷èñëèòåëüíîé òåõíèêè áûëè ñâÿçàíû èñêëþ÷èòåëüíî ñ òåì, ÷òî â íàñòîÿùåå âðåìÿ íàçûâàþò ïðîãðàììèðîâàíèåì. Ïîçæå âûäåëèëèñü ïðîãðàììèðîâàíèå è àíàëèç. Òî÷íî òàê æå ïåðâûì ïðèâëåêëî ê ñåáå âíèìàíèå îáúåêòíî-îðèåíòèðîâàííîå ïðîãðàììèðîâàíèå, ïîçæå ïîÿâèëîñü îáúåêòíî-îðèåíòèðîâàííîå ïðîåêòèðîâàíèå, åù¸ ïîçæå îáúåêòíî-îðèåíòèðîâàííûé àíàëèç.
Õîòÿ Òåí Äåéê è Êàíö îáúÿâèëè, ÷òî ðàçðàáîò÷èêè ðàêåò èñïîëüçîâàëè ýëåìåíòàðíûå îáúåêòíî-îðèåíòèðîâàííûå ìåòîäû åù¸ â 1957 ãîäó, èñòîðèÿ îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ íà ñàìîì äåëå íà÷àëàñü â Íîðâåãèè â 1967 ãîäó. Îäíàêî ñ ðàçâèòèÿ ÿçûêà ïðîãðàììèðîâàíèÿ Simula, îñíîâàííîãî íà ÿçûêå ALGOL è áîëåå ðàííåì ÿçûêå ìîäåëèðîâàíèÿ äèñêðåòíûõ ñîáûòèé Simula 1 è ïðîäîëæàëñÿ èñïîëüçîâàòüñÿ â 1970-õ ãîäàõ îáúåêòíûé ïîäõîä ïàðàëëåëüíî ñ ÿçûêîì Smalltalk, êîòîðûé ñäåëàë ïîíÿòèå «îáúåêò» îáúåêòîì ïîêëîíåíèÿ.
Ñòîèòü îòìåòèòü, ÷òî â îáúåêòíî-îðèåíòèðîâàííîì ÿçûêå Simula áûëè ïðåäñòàâëåíû âñå ïîíÿòèÿ ñòðóêòóðíîãî ïðîãðàììèðîâàíèÿ. Ñ òåõ ïîð áûëî ñîçäàíî ìíîãî ÿçûêîâ, êîòîðûå áûëè ïîðîæäåíû ýòèìè ðàçðàáîòêàìè è ïîëó÷èëè íàçâàíèå «îáúåêòíî-îðèåíòèðîâàííûõ».
Îñíîâíàÿ öåëü îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ, êàê è áîëüøèíñòâà äðóãèõ ïîäõîäîâ ê ïðîãðàììèðîâàíèþ – ïîâûøåíèå ýôôåêòèâíîñòè ðàçðàáîòêè ïðîãðàìì. Èäåè îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ îêàçàëèñü ïëîäîòâîðíûìè, è íàøëè ïðèìåíåíèå íå òîëüêî â ÿçûêàõ ïðîãðàììèðîâàíèÿ, íî è â äðóãèõ îáëàñòÿõ Computer Science, íàïðèìåð, â îáëàñòè ðàçðàáîòêè îïåðàöèîííûõ ñèñòåì.
Ïîÿâëåíèå îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ áûëî ñâÿçàíî ñ òåì íàáëþäåíèåì, ÷òî êîìïüþòåðíûå ïðîãðàììû ïðåäñòàâëÿþò ñîáîé îïèñàíèå äåéñòâèé, âûïîëíÿåìûõ íàä ðàçëè÷íûìè îáúåêòàìè.  ðîëè ïîñëåäíèõ ìîãóò âûñòóïàòü, íàïðèìåð, ãðàôè÷åñêèå îáúåêòû, çàïèñè â áàçàõ äàííûõ èëè ñîâîêóïíîñòè ÷èñëîâûõ çíà÷åíèé.  òðàäèöèîííûõ ìåòîäàõ ïðîãðàììèðîâàíèÿ èçìåíåíèå äàííûõ èëè ïðàâèë è ìåòîäîâ îáðàáîòêè ÷àñòî ïðèâîäèëî ê íåîáõîäèìîñòè çíà÷èòåëüíîãî èçìåíåíèÿ ïðîãðàììû. Âñÿêîå ñóùåñòâåííîå èçìåíåíèÿ ïðîãðàììû – ýòî áîëüøàÿ íåïðèÿòíîñòü äëÿ ïðîãðàììèñòà, òàê êàê ïðè ýòîì óâåëè÷èâàåòñÿ âåðîÿòíîñòü îøèáîê, âñëåäñòâèå ÷åãî âîçðàñòàåò âðåìÿ, íåîáõîäèìîå äëÿ «äîâîäêè» ïðîãðàììû. Èñïîëüçîâàíèå îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ ïîçâîëÿåò âûéòè èç òàêîé ñèòóàöèè ñ ìèíèìàëüíûìè ïîòåðÿìè, ñâîäÿ íåîáõîäèìóþ ìîäèôèêàöèþ ïðîãðàììû ê å¸ ðàñøèðåíèþ è äîïîëíåíèþ. Íåîáõîäèìî çàìåòèòü, ÷òî îáúåêòíî-îðèåíòèðîâàííîå ïðîãðàììèðîâàíèå íå ÿâëÿåòñÿ ïàíàöååé îò âñåõ ïðîãðàììèñòñêèõ áåä, íî åãî öåííîñòü êàê ïåðåäîâîé òåõíîëîãèè ïðîãðàììèðîâàíèÿ íåñîìíåííà. Èçó÷åíèå èäåé è ìåòîäîâ ÎÎÏ ìîæåò ñóùåñòâåííî óïðîñòèòü ðàçðàáîòêó è îòëàäêó ñëîæíûõ ïðîãðàìì.
|