Введение в объектно-ориентированное программирование на языке Object Pascal. Соколов Е.В. - 77 стр.

UptoLike

Составители: 

77
ЗАКЛЮЧЕНИЕ
Как уже отмечалось во введении, основное назначение объ ект но-
ориентированной технологии борьба со сложностью программиров а -
ния. Здесь под сложностью понимается отнюдь не витиеватость алго-
ритмов , а разрастание размеров исходных текстов приложений в сочет а-
нии с необходим остью их постоянной модификации. При использовании
структурного программирования каждая смена версии требует от разра-
ботчика многочисленных рутинных изменений и понимания едва ли не
всего текста проекта, написанного к данному моменту. Объектный под -
ход позволяет значительно увеличить степень пов торяе мости кода, т. е.
дает возмож ность использовать уже написанные и отлаженные библио-
теки без каких-либо изменений.
Объектная технология включает три относительно самостоятел ь -
ных механизма: поддержку абстрактных типов данных, динамическое
связывание и наследов а ние.
Во второй части мы много говорили о том , что абстракция дан-
ных необходима для обеспечения взаимной независимости разработчика
типа и пользователя. Стандартизованный интерфейс в данном случае
служит преградой на пути распространения изменений в исходном тек-
сте проекта.
Динамическое связывание в сочетании с хранением информации
о типе (RTTI run-time type information) позволяет выбирать конкрет-
ную реализацию той или иной операции прямо во время выполнения
приложения, исходя из типа данных, к кот орым она применяется. Эта
идея не является новой и даже имеет поддержку на аппаратном уровне;
как показывает § 4.1, средствами для ее реализации обладают и проц е -
дурные яз ы ки.
Третья концепция наследование устоялась значительно м е-
нее первых двух. Она служит двум основным целям : облегчению мод и -
фикации типов данных и определению новых правил совместимости
при присваивании.
Понятно, что вместо изменения уже существующего типа гораз -
до проще создать на его основе новый, добавив или переопределив не-
обходимые свойства. Если бы не появление защищенного уровня дос-
тупа, эта задача сама по себе столь же успешно могла бы быть решена и
посредством композиции, т. е. включения в новый тип ссылки на объект
старого. Однако и тот , и другой способ не будут эффективно работать
при сохранении строгой типизации, допускающей присваивания лишь
                                 З А К Л Ю ЧЕ Н И Е


           Как уже от м ечал ос ь в ов в ед ении, ос нов ное наз начение объект но-
ориент иров анной т ехнол огии — борь ба с ос л ожнос т ь ю програм м иров а-
ния. Зд ес ь под с л ожнос т ь ю поним ает с я от нюд ь не в ит иев атос т ь ал го-
рит м ов , а раз рас т ание раз м еров ис ход ны хт екс тов прил ожений в с очет а-
нии с необход им ос т ь ю ихпос тоянной м од ификации. При ис пол ь з ов ании
с т рукт урногопрограм м иров ания кажд ая с м ена в ерс ии т ребует от раз ра-
бот чика м ногочис л енны хрут инны хиз м енений и поним ания ед в а л и не
в с егот екс т а проект а, напис анногок д анном у м ом ент у. Объект ны й под -
ход поз в ол яет з начит ел ь но ув ел ичит ь с т епень пов торяем ос т и код а, т. е.
д ает в оз м ожнос т ь ис пол ь з ов ат ь уже напис анны е и отл аженны е библ ио-
т еки без каких-л ибоиз м енений.
           Объект ная т ехнол огия в кл ючает т ри от нос ит ел ь нос ам ос тоят ел ь -
ны х м еханиз м а: под д ержку абс т ракт ны х т ипов д анны х, д инам ичес кое
с в яз ы в ание и нас л ед ов ание.
           Во в торой час т и м ы м ного гов орил и о том , что абс т ракция д ан-
ны хнеобход им а д л я обес печения в з аим ной нез ав ис им ос т и раз работ чика
т ипа и пол ь з ов ат ел я. Ст анд арт из ов анны й инт ерфейс в д анном с л учае
с л ужит преград ой на пут и рас прос т ранения из м енений в ис ход ном т ек-
с т е проект а.
           Динам ичес кое с в яз ы в ание в с очет ании с хранением информ ации
о т ипе (RTTI — run-time type information) поз в ол яет в ы бират ь конкрет -
ную реал из ацию той ил и иной операции прям о в о в рем я в ы пол нения
прил ожения, ис ход я из т ипа д анны х, к которы м она прим еняет с я. Э т а
ид ея не яв л яет с я нов ой и д аже им еет под д ержку на аппарат ном уров не;
как показ ы в ает § 4.1, с ред с т в ам и д л я ее реал из ации обл ад ают и проце-
д урны е яз ы ки.
           Т рет ь я концепция — нас л ед ов ание — ус тоял ас ь з начит ел ь ном е-
нее перв ы хд в ух. Она с л ужит д в ум ос нов ны м цел ям : обл егчению м од и-
фикации т ипов д анны х и опред ел ению нов ы х прав ил с ов м ес т им ос т и
при прис в аив ании.
           Понят но, чтов м ес то из м енения уже с ущес т в ующегот ипа гораз -
д опроще с оз д ат ь на егоос нов е нов ы й, д обав ив ил и переопред ел ив не-
обход им ы е с в ойс т в а. Е с л и бы не появ л ение з ащищенного уров ня д ос -
т упа, э т а з ад ача с ам а пос ебе с тол ь же ус пеш ном огл а бы бы т ь реш ена и
пос ред с т в ом ком поз иции, т. е. в кл ючения в нов ы й т ип с с ы л ки на объект
с т арого. Од нако и тот, и д ругой с пос об не буд ут э ффект ив но работ ат ь
при с охранении с т рогой т ипиз ации, д опус кающей прис в аив ания л иш ь

                                         77