Теоретические сведения для студентов специальностей «Экономика и организация производства», страница 2

Использование С++ в качестве инструментального языка позволяет получать быстрые и компактные программы. Во многих случаях программы, написанные на С++, сравнимы по скорости с программами, написанными на языке ассемблера.

Перечислим некоторые существенные особенности языка С++:

·  С++ обеспечивает полный набор операторов структурного программирования.

·  С++ предлагает необычно большой набор операций.

·  Многие операции С++ соответствуют машинным командам и поэтому допускают прямую трансляцию в машинный код.

·  Разнообразие операций позволяет выбирать их различные наборы для минимизации результирующего кода.

·  С++ поддерживает указатели на переменные и функции.

·  Указатель на объект программы соответствует машинному адресу этого объекта.

·  Посредством разумного использования указателей можно создавать эффективно выполняемые программы, т.к. указатели позволяют ссылаться на объекты тем же самым путем, как это делает ЭВМ.

·  С++ поддерживает арифметику указателей, и тем самым позволяет осуществлять непосредственный доступ и манипуляции с адресами памяти.


Тема 1. Введение в объектно-ориентированный анализ, объектно-ориентированное проектирование и программирование

1.1. Объектно-ориентированный анализ

Объектно-ориентированный анализ (ООА) [1, 2] - метод, используемый для отождествления важных сущностей в задачах реального мира, понимания их взаимодействия. Он направлен на создание моделей, близких к реальности, с использованием объектно-ориентированного подхода. На результатах ООА формируются модели, на которых основывается объектно-ориентированное проектирование, в свою очередь создающее базу для окончательной реализации системы с использованием методологии объектно-ориентированного программирования.

При описании больших систем необходимо рассматривать ряд четко определенных предметных областей (доменов). Каждая из них должна рассматриваться как отдельный мир, населенный собственными концептуальными сущностями или объектами.

Объект в ООА - это такая абстракция множества предметов реального мира, которой свойственно следующее:

·  все предметы в этом множестве – экземпляры – имеют одни и те же характеристики;

·  все экземпляры подчинены и согласованы с одним и тем же набором правил и линий поведения.

ООА - метод для отождествления важных сущностей в задачах реального мира, для понимания и объяснения того, как они взаимодействуют между собой. Он описывается с помощью моделей следующих видов:

1. Информационные модели – абстрагирование реальных сущностей в терминах объектов и атрибутов. Отношения между сущностями формализуются в связях, которые основываются на линиях поведения, правилах и физических законах, превалирующих в реальном мире.

2. Модели состояний описывают поведение объектов и связей во времени. В ООА каждые объект и связь имеют жизненный цикл – регулярную составляющую часть динамического поведения.

3. Все процессы, совершающиеся в системе, устанавливаются в действиях. Модели процессов описывают алгоритмическую или функциональную природу действий. Цель моделирования заключается в расчленении каждого действия на фундаментальные процессы, которые, вместе взятые, определяют требуемое функциональное содержание системы. При описании больших систем приходится рассматривать ряд предметных областей, которые должны четко определять множество сущностей, их представляющих.

Классификация – средство упорядочения знаний. В ООА определение общих свойств объектов помогает найти общие ключевые абстракции и механизмы.

Методы классификации:

·  классическое распределение по категориям (категорию формируют сущности, обладающие свойством или совокупностью свойств);

·  концептуальное объединение (формируются концептуальные описания классов, а затем классифицируются сущности в соответствии с этим описанием);