С). Объектно-ориентированное программирование.
Очевидно, что при создании программного продукта должны быть заранее известны состав и структура входных и выходных данных. Внутренние (рабочие) данные определяются уже в процессе проектирования и разработки программного продукта. В задачах связанных с экономической сферой, в отличии от вычислительных задач, проектирование структур данных является отдельной проблемой и удачное ее решение определяет эффективность созданной программы.
Любая модификация структур внутренних данных неизбежно приводит к изменению алгоритмов обработки и, следовательно, к изменению текстов программ. Такое изменение может быть вызвано уточнением постановки задачи, сменой объектов предметной области, которые эти данные описывают. Это влечет коррекцию структур данных, алгоритмов и в конце счете текстов программных модулей.
Объединение специфических понятий языков программирования высокого уровня, таких как - тип данных, процедура, функция, запись и относящихся к одному определенному объекту алгоритма, заложило основу для возникновения объектно-ориентированного программирования. Его специфика заключается в рассмотрении данных в неразрывной связи с методами их обработки, что позволяет условно записать следующее:
Объект = Данные + Операции
Такой подход позволяет программировать не вдаваясь в отработку деталей программ, которые могут уточняться в процессе реализации программного продукта. Объектно-ориентированное программирование представляет следующие преимущества:
- удобный и простой способ введения новых понятий, наиболее близких к понятиям реального мира;
- простая разработка компонент многократного применения;
- легкая модифицируемость (адаптируемость) программ;
- локализация свойств и поведения объектов в одном месте.
Каждый объект характеризуется состоянием (свойства объекта) и возможностью выполнять некоторые действия (методы объекта). Например, для объекта «Накладная» это могут быть переменные, в том числе структуры данных, в которых хранятся значения реквизитов документа, внешний вид документа, значения строк и т.д. Для выполнения требуемых действий обращаются (вызывают) к методам объекта, например, печать, вывод на экран, добавление строки и т.п.
Если изменится объект реального мира – документ «Накладная», то в программе надо будет только в одном месте внести изменения в виртуальный объект, либо создать новую разновидность объекта, учитывающую эти изменения. Таким образом, ООП позволяет создавать программы «более близкие» к реальному миру и легко адаптирующиеся к изменениям.
Каждый объект в ООП всегда принадлежит некоторому классу.
Класс объектов — это обобщенное (абстрактное) описание множества однотипных объектов. Объекты являются конкретными представителями своего класса, их принято называть экземплярами класса. Например, класс КОШКИ - понятие абстрактное, а экземпляр этого класса МОЙ КОТ ФИЛЯ - понятие конкретное. Основными понятиями ООП можно считать – абстрагирование инкапсуляцию, наследование и полиморфизм.
Абстрагирование– это выделение только значимые характеристики объекта.
Инкапсуляция– это объединение данных и методов, работающих с объектом, в некий класс и скрывающий детали его реализации от пользователя. Инкапсуляция делает объекты похожими на маленькие программные модули, у которых имеется интерфейс использования в виде подпрограмм. Переход от понятий "структура данных" и "алгоритм" к понятию "объект" значительно повысил ясность и надежность программ.
Наследование – это свойство системы, позволяющее описать новый класс объектов на основе уже существующего. При этом частично или полностью заимствуются его функции. Класс, от которого производится наследование, называется базовым или родительским. Новый класс – потомком, наследником или производным классом.
Полиморфизм – это свойство системы использовать объекты с одинаковым интерфейсом без информации об его типе и внутренней структуре. Это означает, что в производных классах можно изменять работу уже существующих в базовом классе методов. При этом весь программный код, управляющий объектами родительского класса, пригоден для управления объектами дочернего класса без всякой модификации.
Объектно – ориентированное программирование обычно используется при разработке крупных программных комплексов коллективом программистов. Проектирование системы в целом, создание отдельных компонент и их объединение в конечный продукт в этом случае часто выполняется разными людьми. Языками, поддерживающими данную технологию являются: C++, Java, Delphi и многие другие.
d). Case – технологии (Computer-aided software engineering)
Современные CASE- средства охватывают широкую область поддержки многочисленных технологий проектирования информационных систем (ИС): от простых средств анализа и документирования до средств автоматизации всего жизненного цикла программного обеспечения. CASE-средства – это программные средства, поддерживающие процессы создания и сопровождения ИС, включая анализ и формулировку требований, проектирование прикладного ПО (приложений) и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки ИС. Их компонентный состав включает:
·графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм, образующих модели ИС;
·библиотеку стандартных программных модулей;
·репозиторий;
·средства разработки приложений, включая языки 4GL и генераторы кодов;
· средства конфигурирования пакета;
·средства документирования;
·средства тестирования;
·средства управления проектом;
·средства реинжениринга, обеспечивающие анализ программных кодов и схем баз данных и формирование на их основе различных моделей и проектных спецификаций.
Современный рынок программных средств насчитывает около 300 различных CASE-программ, которые активно используются ведущими западными фирмами. На Российском рынке CASE-средств наиболее известными пакетами являются: Vantage Team Builder (Westmount I-CASE), Designer/2000, Erwin+Bpwin, CASE-аналитик, System Architect,Visible Analyst Workbench, EasyCASE.
В современных CASE-пакетах используются практически все известные методологии проектирования. CASE-технология - это не только методология, но и инструментарий. Сейчас на рынке существует большое количество CASE-пакетов. Например, построитель мета-моделей данных CA ERwin Data Modeler, который позволяет проводить их описание, анализ и моделирование.
Он включает в себя три стандартные методологии: IDEF0 (функциональное моделирование), DFD (моделирование потоков данных) и IDEF3 (моделирование потоков работ).
Дата добавления: 2016-05-31; просмотров: 1600;