«аочное дистанционное образование с получением государственного диплома через Internet










ѕолучить информацию о поступлении
 
√лавна€ Ќовости  арта сайта ‘отоальбом √остева€ книга  онтакты

ќсновы безошибочного программировани€
јнализ правильности алгоритмов

{LTS}

 

ќбъектно-ориентированное программирование

¬ середине 80-х годов в программировании возникло новое направление, основанное на пон€тие объекта. –еальные объекты окружающего мира обладают трем€ базовыми характеристиками: они имеют набор свойств, способны разными методами измен€ть эти свойства и реагировать на событи€, возникающие как в окружающем мире, так и внутри самого объекта. »менно в таком виде в €зыках программировани€ и реализовано пон€тие объекта, как совокупности свойств (структур данных, характерных дл€ этого объекта), методов их обработки (подпрограмм изменени€ свойств) и событий, на которые данный объект может реагировать и которые привод€т, как правило, к изменению свойств объекта.

ќбъекты могут иметь идентичную структуру и отличатьс€ только значени€ми свойств. ¬ таких случа€х в программе создаетс€ новый тип, основанный на единой структуре объекта. ќн называетс€ классом, а каждый конкретный объект, имеющий структуру этого класса, называетс€ экземпл€ром класса.

ќбъектно-ориентированный подход использует следующие базовые пон€ти€:
Ц объект Ц совокупность свойств (параметров) определенных сущностей и методов их обработки (программных средств) (объект содержит инструкции (программный код), определ€ющий действи€, которые может выполн€ть объект, и обрабатываемые данные);
Ц свойство объекта Ц характеристика объекта, его параметр;
Ц метод обработки Ц программа действий над объектом или его свойствами;
Ц событие Ц изменение состо€ни€ объекта;
Ц класс объектов Ц совокупность объектов, характеризующихс€ общностью примен€емых методов обработки или свойств.
 
ќбъектно-ориентированный подход основан на трЄх основополагающих концепци€х:
Ц инкапсул€ци€;
Ц полиморфизм;
Ц наследование.
 
–ассмотрим эти концепции.

¬ажнейша€ характеристика класса Ц возможность создани€ на его основе новых классов с наследованием всех его свойств и методов и добавлением собственных.  ласс, не имеющий предшественника, называетс€ базовым.

Ќапример, класс Ђживотноеї имеет свойства Ђназваниеї, Ђразмерї, методы Ђидтиї и Ђразмножатьс€ї. —озданный на его основе класс Ђкошкаї наследует все эти свойства и методы, к которым дополнительно добавл€етс€ свойство Ђокраскаї и метод Ђпитьї.

Ќаследование позвол€ет создавать новые классы, повторно использу€ уже готовый исходный код и не трат€ времени на его переписывание.

“аким образом, наследование Ц это процесс, посредством которого один объект может приобретать свойства другого. “очнее, объект может наследовать основные свойства другого объекта и добавл€ть к ним черты, характерные только дл€ него. Ќаследование €вл€етс€ важным, поскольку оно позвол€ет поддерживать концепцию иерархии классов. Ќапример, подумайте об описании жилого дома. ƒом Ц это часть общего класса, называемого строением. — другой стороны, строение Ц это часть более общего класса Ц конструкции, который €вл€етс€ частью ещЄ более общего класса объектов, который можно назвать созданием рук человека. ¬ каждом случае порождЄнный класс наследует все, св€занные с родителем, качества и добавл€ет к ним свои собственные определ€ющие характеристики. Ѕез использовани€ иерархии классов, дл€ каждого объекта пришлось бы задать все характеристики, которые бы исчерпывающи его определ€ли. ќднако при использовании наследовани€ можно описать объект путЄм определени€ того общего класса (или классов), к которому он относитс€, с теми специальными чертами, которые делают объект уникальным.

ѕолиморфизм Ц это свойство, которое позвол€ет одно и то же им€ использовать дл€ решени€ двух или более схожих, но технически разных задач. ÷елью полиморфизма, применительно к объектно-ориентированному программированию, €вл€етс€ использование одного имени дл€ задани€ общих дл€ класса действий. ¬ыполнение каждого конкретного действи€ будет определ€тьс€ типом данных.

ѕреимуществом полиморфизма €вл€етс€ то, что он помогает снижать сложность программ, разреша€ использование того же интерфейса дл€ задани€ единого класса действий. ¬ыбор же конкретного действи€, в зависимости от ситуации, возлагаетс€ на компил€тор.

»нкапсул€ци€ Ц это механизм, который объедин€ет данные и код, манипулирующий этими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использовани€.

¬ объектно-ориентированном программировании код и данные могут быть объединены вместе; в этом случае говор€т, что создаЄтс€ так называемый ЂчЄрный €щикї.  огда коды и данные объедин€ютс€ таким способом, создаЄтс€ объект. ƒругими словами, объект Ц это то, что поддерживает инкапсул€цию. ¬нутри объекта коды и данные могут быть закрытыми. «акрытые коды или данные доступны только дл€ других частей этого объекта.

“аким образом, закрытые коды и данные недоступны дл€ тех частей программы, которые существуют вне объекта. ≈сли коды и данные €вл€ютс€ открытыми, то, несмотр€ на то, что они заданы внутри объекта, они доступны и дл€ других частей программы. ’арактерной €вл€етс€ ситуаци€, когда открыта€ часть объекта используетс€ дл€ того, чтобы обеспечить контролируемый интерфейс закрытых элементов объекта. Ќа самом деле объект €вл€етс€ переменной определЄнного пользователем типа. ћожет показатьс€ странным, что объект, который объедин€ет коды и данные, можно рассматривать как переменную.


”знать как сэкономить в кризис моно на сайте ekonom-it.ru

ќбразцы курсовых работ “емы курсовых работ (2 группа) «аконы эволюции программного обеспечени€ —труктурное программирование ћодульное программирование ѕринципы ќќѕ ƒостоинства и недостатки ќќѕ ¬вод и вывод данных ƒиаграммы вариантов использовани€ ƒиаграммы классов 


 
     
   
 


ѕриглашаем прин€ть участие в круглом столе!
подробнее   >>>
 

»нститут ћенеджмента, Ёкономики и »нноваций начинает набор на курсы повышени€ квалификации!
подробнее   >>>
 

”важемые студенты јЌќ ¬ѕќ »ћЁи»!
подробнее   >>>
 

Ќачинаетс€ набор на курсы повышени€ квалификации!
подробнее   >>>
 

ѕриглашаем прин€ть участие в конференци€х!
подробнее   >>>
 


все новости...

 


–ассылки Subscribe.Ru
—овременное образование
ѕодписатьс€ письмом