Реферат по предмету "Информатика, программирование"


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

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

Содержание
Замечания руководителя
Введение
1. Основныепонятия объектно-ориентированного программирования
2. Объект– как базовое понятие в объектно-ориентированном программировании
2.1 Инкапсуляция
2.2 Наследованиекак важнейшее свойство объекта
2.3 Экземплярыобъектных типов
2.4 Поляобъектов
2.5 Методы
2.6 Полиморфизм
3 Понятиекласса
4 Процессобъектно-ориентированного проектирования
5 Объектно-ориентированныеязыки
6 Простаяобъектная модель и ссылочно-объектная модель
7  Языкии программное окружение
Заключение
Список литературы
 

 
Введение
Исторически сложилось так,что программирование возникло и развивалось как процедурное программирование, котороепредполагает, что основой программы является алгоритм, процедура обработки данных.Объектно-ориентированное программирование — это методика разработки программ, воснове которой лежит понятие объекта как некоторой структуры, описывающей объектреального мира, его поведение. Задача, решаемая с использованием методики объектно-ориентированногопрограммирования, описывается в терминах объектов и операций над ними, а программапри таком подходе представляет собой набор объектов и связей между ними. Другимисловами можно сказать, что объектно-ориентированное программирование представляетсобой метод программирования, который весьма близко напоминает наше поведение. Оноявляется естественной эволюцией более ранних нововведений в разработке языков программирования.Объектно-ориентированное программирование является более структурным, чем все предыдущиеразработки, касающиеся структурного программирования. Оно также является более модульными более абстрактным, чем предыдущие попытки абстрагирования данных и переноса деталейпрограммирования на внутренний уровень.
Использование объектно-ориентированногопрограммирования является хорошим решением при разработке крупных программных проектов.Чем проект объемнее и сложнее, тем больше выгоды вы получите при использовании объектно-ориентированнойтехнологии программирования. Одним из наибольших преимуществ объектно-ориентированногопрограммирования является возможность многократного использования программного кода.Если вы, к примеру, создали класс, то можете порождать от него новые классы и изменятьих свойства и функциональное назначение.
В качестве примера объектно-ориентированногоязыка в дальнейшем будем рассматривать Borland Pascal. Языковые расширения BorlandPascal предоставляют все средства объектно-ориентированного программирования: большуюструктурированность и модульность, большую абстрактность и встроенную непосредственнов язык возможность повторного использования. Все эти характеристики соответствуюткоду, который является более структурированным, более гибким и более легким дляобслуживания.
Объектно-ориентированноепрограммирование требует оставить в стороне характерные представления о программировании,которые долгие годы рассматривались как стандартные. Однако после того, как этосделано, объектно-ориентированное программирование становится простым, наглядными превосходным средством разрешения многих проблем, которые доставляют неприятноститрадиционному программному обеспечению.

 
1. Основные понятия объектно-ориентированногопрограммирования
В основе объектно-ориентированногоязык программирования лежат два основных понятия: объект и класс. Основными характеристическимисвойствами этих понятий являются:
Инкапсуляция — комбинированиезаписей с процедурами и функциями, манипулирующими полями этих записей, формируетновый тип данных — объект (под записью понимается переменная типа «запись»).
Наследование — определениеобъекта и его дальнейшее использование для построения иерархии порожденных объектовс возможностью для каждого порожденного объекта, относящегося к иерархии, доступак коду и данным всех порождающих объектов.
Полиморфизм — присваиваниедействию одного имени, которое затем совместно используется вниз и вверх по иерархииобъектов, причем каждый объект иерархии выполняет это действие способом, именноему подходящим.
 

 
2. Объект — как базовое понятие в объектно-ориентированномпрограммировании
Понятию “объект” сопоставляютряд дополняющих друг друга определений. Ниже приведены некоторые из них.
Объект — это осязаемая реальность,характеризующаяся четко определяемым поведением.
Объект — особый опознаваемыйпредмет, блок или сущность (реальная или абстрактная), имеющая важное функциональноеназначение в данной предметной области.
Объект может быть охарактеризованструктурой, его состоянием, поведением и индивидуальностью. Состояние объекта определяетсяперечнем всех возможных (обычно статических) свойств и текущими значениями (обычнодинамическими) каждого из этих свойств. Свойства объекта характеризуются значениямиего параметров. Поведение объекта описывает, как объект воздействует на другие объектыили как он подвергается воздействию со стороны других объектов с точки зрения измененияего собственного состояния и состояния других объектов. Говорят также, что поведениеобъекта определяется его действиями. Определенное воздействие одного объекта надругой с целью вызвать соответствующую реакцию называют операцией. В объектно-ориентированныхязыках программирования операции называют методами.
Можно выделить пять типовопераций:
— конструктор, созданиеи инициализация объекта;
— деструктор, разрушающийобъект;
— модификатор, изменяющийсостояние объекта;
— селектор для доступа кпеременным объекта без их изменения;
— итератор для доступа ксодержанию объекта по частям в определенной последовательности.
Известна и другая классификацияметодов объекта, когда выделяют функции управления, реализации, доступа и вспомогательныефункции.
Под индивидуальностью объектапонимают свойство объекта, позволяющее отличать этот объект от всех других объектов.
Объекты могут находитьсяв определенных отношениях друг к другу. Эти отношения могут быть иерархическими.Основные иерархические отношения — это отношения использования и включения. Отношениеиспользования реализуется посылкой сообщений от объекта A к объекту B. При этомобъект A может выступать в роли:
— активного или воздействующегообъекта, когда он воздействует на другие объекты, но сам воздействию не подвергается;
— пассивного или исполняющего,когда объект подвергается воздействию, но сам на другие объекты не воздействует;
— посредника, если объекти воздействует и сам подвергается воздействию.
Отношение включения имеетместо, когда составной объект содержит другие объекты.
 
2.1 Инкапсуляция
Объекты моделируют характеристикии поведение элементов мира, в котором мы живем. Они являются окончательной абстракциейданных.
Объекты содержат вместевсе свои характеристики и особенности поведения. Отношения частей к целому и взаимоотношениямежду частями становятся понятнее тогда, когда все содержится вместе в одной упаковке.Это и называется инкапсуляцией.
 

 
2.2 Наследование как важнейшеесвойство объекта
Не менее важным являетсяи тот факт, что объекты могут наследовать характеристики и поведение того, что мыназываем порождающие, родительские объекты (или предки). Здесь происходит качественныйскачок: наследование, возможно, является сегодня единственным самым крупным различиеммежду обычным программированием на Паскале и объектно-ориентированным программированиемв Borland Pascal.
В терминах Паскаля, объектво многом схож с записью, которая является оболочкой для объединения несколькихсвязанных элементов под одним именем.
Процесс, с помощью которогоодин тип наследует характеристики другого типа, называется наследованием. Наследникназывается порожденным (дочерним) типом, а тип, которому наследует дочерний тип,называется порождающим (родительским) типом. Ранее известные типы записей Паскаляне могут наследовать. Однако Borland Pascal расширяет язык Паскаля для поддержкинаследования. Одним из этих расширений является новая категория структуры данных,связанная с записями, но значительно более мощная. Типы данных в этой новой категорииопределяются с помощью нового зарезервированного слова object. Тип объекта можетбыть определен как полный, самостоятельный тип в манере описания записей Паскаля,но он может определяться и как потомок существующего типа объекта путем помещенияпорождающего (родительского) типа в скобки после зарезервированного слова object.
Большая часть конструированияобъектно-ориентированных прикладных программ состоит в построении иерархии объектов,являющейся отражением генеалогического дерева объектов в приложениях.
Как показали данные определения,объекты тесно связаны с записями. Новое зарезервированное слово object являетсянаиболее очевидным различием, но как мы увидим позднее, имеется большое число другихразличий, некоторые из которых довольно тонкие.
 
2.3 Экземпляры объектныхтипов
Экземпляры объектных типовописываются в точности так же, как в Паскале описывается любая переменная, либостатическая, либо указатель, ссылающийся на размещенную в динамической памяти переменную.
 
2.4 Поля объектов
Мы можем обратиться к полюобъекта в точности так же, как к полю обычной записи, либо с помощью оператора with,либо путем уточнения имени с помощью точки.
 
2.5 Методы
Даже если мы можем обратитьсяк полям объекта непосредственно, это будет не совсем хорошей идеей. Принципы объектно-ориентированногопрограммирования требуют, чтобы поля объектов были исключены из исходного кода,насколько это возможно. Это ограничение поначалу может показаться спорным и жестким,но оно является только частью огромной картины объектно-ориентированное программирования.
Ответ заключается в том,что при всякой возможности для доступа к полям данных должны использоваться методыобъекта. Метод является процедурой или функцией, описанной внутри объекта и жесткоограниченной этим объектом.
Методы являются одними изнаиболее примечательных атрибутов объектно-ориентированного программирования и требуютнекоторой практики перед использованием.
Метод — это процедура илифункция, объединенная с данным типом столь тесно, что метод является как бы окруженнымневидимым оператором with, что делает экземпляр данного типа доступными изнутридля метода. Определение типа включает заголовок метода. Полное определение методаквалифицируется в имени типа. Тип объекта и метод объекта являются двумя лицамиэтой новой разновидности структуры, именуемой методом.
Одним из важнейших принциповобъектно-ориентированного программирования является то, что программист во времяразработки программы должен думать о коде и о данных совместно. Ни код, ни данныене существуют в вакууме. Данные управляют потоком кода, а код манипулирует образамии значениями данных.
Если наш код и данные являютсяразделенными элементами, то всегда существует опасность вызова правильной процедурыс неверными данными или ошибочной процедуры с правильными данными. Забота о совпаденииэтих элементов возлагается на программиста, и хотя строгая типизация Паскаля здесьпомогает, самое лучшее, что он может сделать — это указать на несоответствие.
Объект осуществляет синхронизациюкода и данных путем совместного построения их описаний. Реально, чтобы получитьзначение одного из полей объекта, мы вызываем относящийся к этому объекту метод,который возвращает значение нужного поля. Чтобы присвоить полю значение, мы вызываемметод, который назначает данному полю новое значение.
Однако, Borland Pascal невынуждает нас делать это. Как всякое структурное программирование, объектно-ориентированноепрограммирование является дисциплиной, которую мы должны навязать себе, используяпредоставляемые языком средства. Borland Pascal позволяет нам обращаться к полямобъекта непосредственно извне объекта, однако он поощряет нас использовать преимуществаобъектно-ориентированного программирования и создавать методы для манипулированияполями объекта внутри самого объекта.
Итак, подведем некоторыйитог. Что такое объект?
Объект состоит из структурыданных и связанных с ней процедур (которые называются методами), которые работаютс данными, записанными в экземплярах структуры данных.
Объект может наследоватьхарактеристики порождающего объекта. Это означает, что структура данных нового объектавключает структуру данных порождающего объекта, а также новые данные. Кроме того,новый объект может вызывать все процедуры порождающего объекта, а также те процедурыметодов, которые в нем описываются.
Объект, не имеющий наследования,называется базовым объектом. Объект, наследующий характеристики других объектов,называется порожденным или производным объектом.
 
2.6. Полиморфизм
 
Полиморфизм означает, чтоодин и тот же метод выполняется по-разному для различных объектов. Например, методкласса Музыкальный инструмент — PlayMusicForAnOrchestra (играй музыку для оркестра)- может быть определен как общий метод, который может использоваться с любой категориеймузыкальных инструментов. Этот метод написан таким образом, что не важно, какойименно инструмент получает задание играть, однако для классов, описывающих конкретныеинструменты, данный метод должен быть переопределен (override), что даст возможностьопределить конкретные действия, учитывающие особенности данного инструмента.
 

 
3. Понятие класса
В класс объединяются объектыс одинаковыми свойствами и методами.
Одним из первых действий,предпринимаемых человеком при попытке понять окружающий мир, является применениек нему некоторой структурной формы. При встрече с неизвестным объектом мы пытаемсявтиснуть его в нашу существующую структуру: другими словами, классифицировать его.Большинство людей знакомо по крайней мере с несколькими классификационными структурамиили иерархиями.
Использование иерархии классоввводит необходимость абстракции. Классы становятся более абстрактными по мере продвижениявверх по иерархии.
Объектно-ориентированныеязыки используют такой же подход. Иерархии обычно начинаются с нескольких абстрактныхклассов. Каждый новый класс представляется как подкласс существующего класса (называемогоего суперклассом). Он наследует данные и методы от классов, стоящих выше в иерархии.Только те данные и методы, которые являются новыми для этого класса, следует определитьи реализовать.
Класс — это абстрактноепонятие, сравнимое с понятием категория в его обычном смысле.
По определенным свойствамлюбого элемента определенной категории можно установить, что он принадлежит к этойкатегории. Сама категория определяется общими свойствами, которые имеют все экземплярыэтой категории.
Это можно пояснить на примеремузыкальных инструментов. Музыкальные инструменты делятся на следующие категории:духовые, ударные и струнные.
Все эти категории принадлежатк категории музыкальных инструментов. В свою очередь, категория музыкальных инструментоввходит в категорию инструментов. На рис.1 эта структура категорий графически представленав виде дерева.
/>
Музыкальные инструментыимеют общие свойства, но каждый инструмент сам по себе обладает особыми свойствами,которые определяют его назначение и отличают его от других инструментов. По томуже принципу можно описать и классы в ООП. Определенный музыкальный инструмент некоторойкатегории, например труба, является объектом. Категория, к которой этот инструментпринадлежит, — это класс.
Класс в объектно-ориентированномпрограммировании — это абстрактный тип данных, который включает не только данные,но и функции и процедуры.
Функции и процедуры классаназываются методами и содержат исходный код, предназначенный для обработки внутреннихданных объекта данного класса.
Наличие в классах абстрагирования,которое максимально удобно для программистов, работающих с этими классами, имеетпервостепенное значение при разработке повторно используемого ПО. Если вы выстроитеинтерфейс, на который не влияют изменения в реализации, то вашему приложению долгоевремя не понадобятся никакие модификации. Если вы знакомы с предметной областьюзадачи, вы без труда определите, какие методы понадобятся пользователям класса.Скажем так: если при проектировании класса вам удается сочетать хорошее знание предметнойобласти с прогнозом относительно дальнейших перспектив использования класса, можногарантировать, что большая часть интерфейса этого класса останется неизменной, дажев случае возможного совершенствования реализации класса. В результате отстраненияпользователя от деталей реализации система в целом становится понятнее, а значит,и удобнее в работе.
Между классами также могутбыть установлены отношения:
— отношение разновидности(кошка — вид определенного биологического семейства или кошка — домашнее животное);
— включения или составнойчасти (лапа — часть кошки);
— ассоциативности, когдамежду классами есть чисто смысловая связь (кошки и собаки — домашние животные).
 

 4. Процесс объектно-ориентированного проектированияОбъектно-ориентированное проектирование (Object-OrientedDesign — OOD) — это поступательный итеративный процесс. Граница между объектно-ориентированныманализом и проектированием расплывчата и построение проекта программного изделиясостоит из ряда циклов, в которых уточняются описания классов и взаимодействия междуними, разрабатываются реализующие их программы, проводится их отладка и тестированиеи по результатам каждого этапа уточняются рабочие документы предыдущих этапов, дорабатываютсяописания классов и программы. Эти циклы повторяются до получения требуемого результата.В рассмотренном выше примере были выделеныклассы “множество данных” и “данное”. Пусть классу “множество данных” присвоеноимя TXSet.С учетом имеющихся инструментальных средствкласс TXSet может быть построен на основе класса Array из библиотеки CLASSLIB, т.е.это множество может быть интерпретировано массивом. Массив представляет собой упорядоченнуюсовокупность однотипных элементов, в то же время данные могут принадлежать различнымтипам и каждому тип соответствует свой набор характеристик. Это противоречие можнопреодолеть, если элементами массива TXSet будут указатели на экземпляры данных.Чтобы использовать указатели на экземплярыданных как элементы массива, все классы, определяющие типы данных, должны быть образованыиз общего базового класса.Пусть требуется обеспечить возможность использованиячисловых скалярных данных и массивов (векторов и прямоугольных матриц), а такжеданных типа строк и массива строк. Естественно определить для каждого такого типасвой класс: TDScal, TDArray, TDString, TDStringArray. В каждом из этих классов должнобыть поле идентификатора данного ident, поле описания данного head и, возможно,поле flags, представляющее собой набор битов, дополняющих описание данного. Можетоказаться удобным иметь и поля, содержащие количество знаков при представлении скаляраили элементов массивов (width) и количество цифр в дробной части для представлениячисел (dec). Все эти данные можно объединить в классе TData, базовом для остальныхклассов данных. Таким образом, вместо одного класса “данное”, выделенного на этапеанализа, появилось пять классов. После этого следует вернуться к этапу анализа иоформить рабочие документы анализа для новых классов.Аналогичным образом следует уточнить состави определения остальных классов, выбранных на этапе анализа.После определение перечня классов следует разработатьсемантику каждого класса — определить состав и назначение методов класса. При этомтакже может возникнуть необходимость выделения новых классов и, следовательно, повторениеотдельных частей этапа анализа и новое уточнение ранее описанных классов.Таким образом, процесс объектно-ориентированногопроектирования состоит из циклического выполнения четырех основных шагов:— Определение классов и объектов на определенномуровне абстракции.— Определение семантики классов.— Определение (идентификация) связей междуклассами и объектами.— Реализация классов.На каждом повторении этого цикла уточняютсяописания классов и перерабатываются проектные документы.
 

 
5. Объектно-ориентированные языки
Инкапсуляция, наследованиеи полиморфизм — фундаментальные свойства, требуемые от языка, претендующего называтьсяобъектно-ориентированным. (Языки, не имеющие наследования и полиморфизма, но имеющиетолько классы, обычно называются основанными на классах.) Различные объектно-ориентированныеязыки используют совершенно разные подходы. Мы можем различать объектно-ориентированныеязыки, сравнивая механизм контроля типов, способность поддерживать различные программныемодели и то, какие объектные модели они поддерживают. Языки объектного программированияпринято делить на объектные, в которых существуют классы и объекты, и объектно-ориентированные,в которых программист может не только пользоваться предопределёнными классами, нои задавать собственные пользовательские классы (либо создавать объекты, устройствокоторых отличается от устройства прототипов — в языках прототипного программирования).
Объектное и объектно-ориентированноепрограммирование возникло в результате развития идеологии процедурного программирования,где данные и подпрограммы (процедуры, функции) их обработки формально не связаны.Кроме того, в современном объектно-ориентированном программировании часто большоезначение имеют понятия события (так называемое событийно-ориентированное программирование)и компонента (компонентное программирование).
Объектно-ориентированноепрограммирование в настоящее время является абсолютным лидером в области прикладногопрограммирования (языки Java, C#, C++, JavaScript, ActionScript и др.). В то жевремя в области системного программирования до сих пор лидирует парадигма процедурногопрограммирования, и основным языком программирования является язык C. Хотя при взаимодействиисистемного и прикладного уровней операционных систем заметное влияние стали оказыватьязыки объектно-ориентированного программирования. Например, мультиплатформеннымстандартом стала система Qt, написанная на языке C++.
Си++ — это универсальныйязык программирования, задуманный так, чтобы сделать программирование более приятнымдля серьезного программиста. За исключением второстепенных деталей Си++ являетсянадмножеством языка программирования Cи. Помимо возможностей, которые дает Cи, Си++предоставляет гибкие и эффективные средства определения новых типов. Используя определенияновых типов, точно отвечающих концепциям приложения, программист может разделятьразрабатываемую программу на легко поддающиеся контролю части. Такой метод построенияпрограмм часто называют абстракцией данных. Информация о типах содержится в некоторыхобъектах типов, определенных пользователем. Такие объекты просты и надежны в использованиив тех ситуациях, когда их тип нельзя установить на стадии компиляции. При правильномиспользовании этот метод дает более короткие, проще понимаемые и легче контролируемыепрограммы.
Первым языком программирования,в котором были предложены принципы объектной ориентированности, была Симула. В моментсвоего появления (в 1967 году), этот язык программирования предложил поистине революционныеидеи: объекты, классы, виртуальные методы и др., однако это всё не было воспринятосовременниками как нечто грандиозное. Тем не менее, большинство концепций были развитыАланом Кэйем и Дэном Ингаллсом в языке Smalltalk. Именно он стал первым широко распространённымобъектно-ориентированным языком программирования./>
Различаются чистые и гибридныеобъектно-ориентированные языки. Чистые — это те, которые позволяют использоватьтолько одну модель программирования — объектно-ориентированную. Вы можете объявлятьклассы и методы, но не можете завести глобальные переменные и обычные функции ипроцедуры старого типа.
Среди трех наших языков,только Java(и его клон C#) является чистым объектно-ориентированным языком (какEiffel и Smalltalk). На первый взгляд это кажется положительной идеей. Однако онаведет к тому, что вы используете кучу статических методов и статических данных,что не так уж отличается от использования глобальных функций и данных, за исключениемболее сложного синтаксиса. Чистые объектно-ориентированные языки дают преимуществоновичкам в объектно-ориентированном программировании, потому что программист вынуждениспользовать (и учить) модель объектно-ориентированного программирования. C++ иObject Pascal, наоборот, — типичные примеры гибридных языков, которые позволяютпрограммистам использовать при необходимости традиционный подход C или Pascal.
Smalltalk расширяет этуидею до уровня «обобъекчивания» таких предопределенных типов данных, как целые исимволы, а также языковых конструкций (таких как циклы). Это теоретически интересно,но сильно уменьшает эффективность. Java останавливается много раньше, допуская присутствиепростых не объектно-ориентированных типов данных (хотя имеются необязательные классы-оберткии для простых типов).
/>

/> 
6. Простая объектная модель и ссылочно-объектная модель
Третий элемент, по которомуразличаются языки объектно-ориентированного программирования — их объектная модель.Некоторые традиционные языки объектно-ориентированного программирования позволяютпрограммистам создавать объекты в стеке, в куче (в хипе — heap) или в статическойпамяти. В этих языках переменная типа класс соответствует объекту в памяти. Такработает C++.
В последнее время появиласьтенденция использовать другую модель, часто называемую ссылочно-объектной моделью.В этой модели каждый объект динамически размещается в куче, а переменная типа классфактически является ссылкой или хэндлом объекта в памяти (технически это нечто вродеуказателя). Java и Object Pascal оба используют эту ссылочную модель. Как мы увидим,вкратце это значит, что вам необходимо не забыть выделить память для объекта.
 

 
7. Языки и программное окружение
Хотя мы пытались исследоватьэти языки, только сравнивая синтаксические и семантические характеристики, важнорассмотреть их в соответствующем контексте. Языки нацелены на различные потребности,что означает, что они решают разные проблемы разными способами и используются вочень разных средах программирования. Хотя как языки, так и их среда копируют характеристикидруг друга, они были сконструированы для разных потребностей, и в этом вы можетеубедиться, сравнивая их характеристики.
Цель C++ — мощность и контрольза счет сложности. Целью Delphi является легкое, визуальное программирование (неотказываясь от мощности) и прочная связь с Windows. Цель Java — мобильность, дажеза счет некоторого отказа от скорости, и распределённые приложения или исполняемоесодержание WWW (хотя это, конечно, — не Microsoft-овский взгляд на Java!).
Можно определить, что успехэтих трех языков зависит не от технических характеристик, которые я включил в этустатью. Финансовый статус Borland, операционная система управления Microsoft, популярностьSun в мире Internet, тот факт, что Java рассматривается как anti-Microsoft-овскийязык, будущее броузеров Паутины и Win32 API, роль и признание модели ActiveX (из-засвязанной с ней проблемой безопасности) и три уровня архитектуры Delphi — вот показатели,которые могли повлиять на ваш выбор сильнее, чем технические элементы. Например,такой хороший язык как Eiffel, у которого Object Pascal и Java взяли не только некотороевдохновение, никогда не получит реальной доли рынка, хотя он был популярен во многихуниверситетах земного шара.
Просто имейте в виду, что«модный» становится все более частым словом в компьютерном мире. Как пользователихотят иметь инструменты этого года (вероятно, по этой причине операционные системыназываются по тому году, в котором они выпущены), программисты любят работать споследним языком программирования и первыми овладеть им. Можно наверняка утверждать,что Java — не последний из языков объектно-ориентированного программирования, черезнесколько следующих лет найдется кто-то с новым языком.

 
Заключение
Объектно-ориентированноепрограммирование является в настоящее время основой всей индустрии прикладного программированияблагодаря выигрышу в конкурентной борьбе с альтернативными технологиями программирования.В промышленном программировании только в системном программировании позиции объектно-ориентированногопрограммирования еще не очень сильны. Поэтому, с одной стороны, теоретические рассужденияо непригодности объектно-ориентированного программирования не соответствуют наблюдаемойна практике ситуации. С другой стороны, нельзя считать, что объектно-ориентированноепрограммирование во всех случаях является наилучшей из методик программирования.
Процедурное программированиелучше подходит для случаев, когда важны быстродействие и потребляемые ресурсы, объектное- когда важна управляемость проекта и его модифицируемость, а также безопасностьпрограмм. Процедурное программирование обычно лучше подходит для небольших проектов,объектное — для больших.

Список литературы
/>
1. Иан Грэхем Объектно-ориентированныеметоды. Принципы ипрактика= Object-Oriented Methods: Principles & Practice. — 3-еизд.— М.:«Вильямс»,2004. — С.880.
2. АнтониСинтесОсвойсамостоятельнообъектно-ориентированноепрограммированиеза21 день = Sams Teach Yourself Object-Oriented Programming in 21 Days. — М.:«Вильямс»,2002. — С.672.
/>3. Бертран Мейер Объектно-ориентированноеконструирование программных систем + CD. Интернет-университет информационных технологий- ИНТУИТ.ру, Русская Редакция, 2005
/>4. Биллиг В.А. Основы программированияна C#. Интернет-университет информационных технологий — ИНТУИТ.ру, 2006
5.“Новые языки программирования и тенденции их развития”, Ушкова В., 2005 г.


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Идеология исламской организации Аль-Джихад
Реферат Выставочная деятельность в туризме
Реферат Работа с семьей
Реферат Микроэлементы в окружающей среде и в волосах детей
Реферат Гуманисты Валла и Помпонаций
Реферат Важнейшие эллинистические царские династии
Реферат Театральеные реформы в России конца 1980-х начала 1990-х годов.
Реферат Агностический корпус, где проводится всестороннее обследование больных, консультативный прием врачей-специалистов и отпускаются разнообразные лечебные процедуры
Реферат Взаємозв язок між внутрішньою та зовнішньою політикою
Реферат 1 Теоретические основания кредитования
Реферат Противодействие техническим средствам разведки
Реферат Romeo And Juliet Essay Research Paper 2
Реферат Роль фондов обязательного страхования в реализации социальных программ государства
Реферат История политической мысли 2 2
Реферат Европейский Союз этапы развития, проблемы, перспективы