Чтение онлайн

на главную

Жанры

Внедрение SAP R/3: Руководство для менеджеров и инженеров

Кале Вивек

Шрифт:

• Это открытый и доступный язык, благодаря интерфейсам программирования, предусмотренных в системах SAP.

• Этот язык обеспечивает возможность моделирования посредством стандартных программ и операций, которые можно использовать повторно, а также модулей функций, которые содержатся в централизованной библиотеке.

• Этот язык обеспечивает обширные функции манипуляции данными — такими, как даты, строки, плавающие десятичные запятые и т. д.

• Этот язык поддерживает многоязычность текстовых элементов, в том числе ярлыков, сообщений и т. д.

• Этот язык содержит ряд стандартных запросов SQL для прозрачности доступа к любым стандартным базам данных — таким, как Oracle, DB2, Informix и т. д.

АРМ Разработчика АВАР/4 — это полноценная среда для создания полномасштабных приложений «клиент-сервер».

Она поддерживает полный жизненный цикл разработки программного обеспечения (SDLC) — определение данных, дизайн пользовательского интерфейса, внутреннее устройство, составление отчетов, тестирование и устранение сбоев, а также документирование и управление программированием по принципу «проект в ходе разработки» (work-in-process, WIP). В этой среде предусмотрена совершенная среда управления мета-данными, которая называется «словарь данных АВАР/4», а также библиотека функций многоразового использования. Программы, разработанные на АВАР/4 могут работать без дополнительных настроек на любой операционной системе, с любым графическим интерфейсом пользователя, системой управления базами данных, сетевыми интерфейсами и т. д., причем работать как в централизованной, так и в децентрализованной среде «клиент-сервер».

Язык АВАР — это уже не просто язык четвертого поколения, особенно после внедрения Объектов АВАР; он обладает многими характеристиками объектно-ориентированной среды. Компания SAP уже поставляет браузер для просмотра объектов и библиотеку классов, которые мы рассмотрим ниже. В следующем разделе мы познакомимся с концепцией объектной ориентации и ролью этой концепции для будущего использования приложений. Затем мы рассмотрим различные компоненты интегрированного АРМ Разработчика АВАР/4 и различные аспекты программирования на АВАР.

Объектная ориентация

Перед исследованием ориентированности системы SAP R/3 на процессы необходимо кратко осветить смысл такой ориентации. Объектно-ориентированная парадигма основывается на новом взгляде на традиционное противопоставление данных и вычислительных процедур.

Парадигма ориентации на объекты

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

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

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

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

класс объекта (Class Defining Object, CDO), в рамках которого объекты называются экземплярами этого класса. Класс может содержать в себе экземпляры других классов; однако каждый экземпляр принадлежит только одному CDO, и ассоциирован только с ним. Таким образом, вычисления производятся путем обращения к объекту с помощью сообщения; объект унаследует метод своего CDO. Этот метод, в свою очередь, может обратиться к другим объектам и т. д. Цепочка может прерваться, когда вызывается простейший объект, который изменяет переменную величину экземпляра или затрагивает внешние устройства — такие, как принтер, жесткий диск и т. д. Например, автомобили с бензиновым или дизельным двигателем можно рассматривать как случаи (подклассы) объекта «четырехколесное транспортное средство», который в свою очередь является подклассом в классе автомобилей.

Унаследование и инкапсуляция

Класс — это шаблон, с помощью которого можно быстро генерировать новые объекты. Это логически объясняет многие важные характеристики ориентированной на объекты среды — такие, как унаследование и инкапсуляция. На рис. 8.1 представлены подклассы и классы случаев Определяющего класс объекта (CDO) под названием «Автомобиль».

В примере с автомобилями, унаследование можно понимать как некие стандартные характеристики и компоненты — такие, как топливо, бензобак, колеса, коробка передач, двигатель и т. д., которые считаются составными частями автомобилей с бензиновым или дизельным двигателем. Эти свойства унаследованы от класса «четырехколесное транспортное средство», который в свою очередь унаследовал их от класса «Автомобиль». Нетрудно представить себе прослеживание явления объектификации в любом порядке — например, от движущихся объектов до деталей двигателя внутреннего сгорания через Список материалов (ВОМ). Фактически, ВОМ — тоже полноценный объект! Общий результат — это иерархия, или лестница с классами и объектами на каждом уровне. Примерно по такому же принципу организована классификация животных в биологии.

Рис. 8.1. Подклассы и классы случаев Определяющего класс объекта (CDO) под названием «Автомобиль».

Вторая важная характеристика инкапсуляции относится к прозрачности каждого объекта в рамках такой иерархии. То есть, каждый объект X просто выполняет свои функции, а вопросы о принципе его работы и составляющих его объектах не имеют никакого значения. Если ответ на эти вопросы все-таки необходим, надо просто отследить цепочку унаследования, т. е. переместиться вверх или вниз по ступеням иерархии объектов.

Преимущества объектной ориентации

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

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

Объектная ориентация и SAP
Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор