Тысяча полезных мелочей    

ПРИНЦИПЫ ТЕОРИИ КОНТЕЙНЕРОВ В ПРИМЕНЕНИИ К СОЗДАНИЮ ГИБКИХ ПРОГРАММНЫХ СИСТЕМ

ПРИНЦИПЫ ТЕОРИИ КОНТЕЙНЕРОВ В ПРИМЕНЕНИИ К СОЗДАНИЮ ГИБКИХ ПРОГРАММНЫХ СИСТЕМ

Прыгунков М.О. Статья в формате PDF 103 KB

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

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

Объектно-ориентированные языки программирования дали четыре новых механизма использования типовых частей:

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

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

Второй механизм привел к возникновению объектных систем управления базами данных (СУБД), поставляющих программам не только данные, но и код, обpaбатывающий эти данные.

На основе третьего механизма возникли COM-технологии, что позволило строить гибкие программы, которые обладают свойством возможного развития при изменении условий их эксплуатации.

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

Введём два вида контейнеров: динамический и статический.

Если контейнер для «общения» с вложенными объектами общается через единый интерфейс, то такой контейнер будем называть статическим. Если контейнер работает со всеми вложенными объектами не по одной схеме, а используя разные методы, то такой контейнер будем называть динамическим.

Чтобы приведённая классификация контейнеров стала более понятной, стоит оговориться о том, что разделение контейнеров на статические и динамические относится к строению контейнера.

Контейнеры по определению могут общаться с другими контейнерами, с которыми находится на одном уровне иерархии, а также на одну ступень выше и ниже по иерархической лестнице. Соответственно, сообщение может быть внутренним относительно контейнера - ситуация, когда контейнер передаёт сообщения между своими компонентами, и вешними - ситуация, когда контейнер передаёт сообщения другим контейнерам или контейнеру, в состав которого входит источник сообщения.

Для обеспечения заявленной возможности замены (добавления/удаления) новых свойств и методов принято решение хранить в контейнерах только ссылки на свойства и методы.

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

Заключение

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

Работа представлена на III научную международную конференцию «Фундаментальные исследования», Доминиканская республика, 10-20 апреля 2008 г. Поступила в редакцию 20.03.2008.



НЕИЗОТЕРМИЧЕСКАЯ ДЕГИДРАТАЦИЯ МЕМБРАН

НЕИЗОТЕРМИЧЕСКАЯ  ДЕГИДРАТАЦИЯ  МЕМБРАН Статья в формате PDF 99 KB...

09 10 2026 14:23:12

ЗЕМСКИЕ ВРАЧИ В КОНЦЕ XIX – НАЧАЛЕ XX вв.

ЗЕМСКИЕ ВРАЧИ В КОНЦЕ XIX – НАЧАЛЕ XX вв. Статья в формате PDF 165 KB...

28 09 2026 10:26:58

СОПРЯЖЕННАЯ ЭКОЛОГО-ГЕНЕТИЧЕСКАЯ ИЗМЕНЧИВОСТЬ В ПАРАЗИТАРНЫХ СИСТЕМАХ

СОПРЯЖЕННАЯ ЭКОЛОГО-ГЕНЕТИЧЕСКАЯ ИЗМЕНЧИВОСТЬ В ПАРАЗИТАРНЫХ СИСТЕМАХ По частотам генов белковых локусов остромордой лягушки и ее паразитов изучали уровень генетической изменчивости в паразитарных системах. Показано, что состояние генетической структуры популяции у хозяина и разных видов паразитов в одних и тех же условиях может быть различным. ...

22 09 2026 18:15:47

ШАРОВАЯ МОЛНИЯ

ШАРОВАЯ МОЛНИЯ Статья в формате PDF 194 KB...

19 09 2026 15:34:57

ПОЛОВЫЕ РАЗЛИЧИЯ В РАЗВИТИИ ТКАНЕВОГО ВОСПАЛЕНИЯ И ИХ СВЯЗЬ С УРОВНЕМ ОКСИДА АЗОТА ПРИ ДЛИТЕЛЬНОМ ВОЗДЕЙСТВИИ ТАБАЧНОГО ДЫМА

ПОЛОВЫЕ РАЗЛИЧИЯ В РАЗВИТИИ ТКАНЕВОГО ВОСПАЛЕНИЯ И ИХ СВЯЗЬ С УРОВНЕМ ОКСИДА АЗОТА ПРИ ДЛИТЕЛЬНОМ ВОЗДЕЙСТВИИ ТАБАЧНОГО ДЫМА Исследования проведены на 128 пoлoвoзрелых крысах различного пола, содержавшихся в «курительных камерах» в течение 60 дней с ежедневной затравкой животных в течение 1 часа. Определяли содержание нитратов и нитритов в тканях легких, мозга и печени на 30, 45 и 60 сутки. Мы предполагали выяснить пoлoвые особенности роли оксида азота в гомогенатах тканей крыс различного пола, подвергшихся воздействию табачного дыма. Как показало настоящее исследование, длительная интоксикация табачным дымом приводит к выраженному развитию воспалительных явлений в изучаемых органах, более выраженное в тканях легких и печени, особенно у самцов. В генезе выявленных морфологических и морфометрических изменений в исследуемых тканях лежит активизация индуцибельной формы оксида азота, что приводит к прогрессированию воспалительных и оксидативных явлений. Выявлен пoлoвoй диморфизм в регуляции уровня оксида азота. ...

18 09 2026 18:58:12

РИСКИ В ЛЕСНОЙ ОТРАСЛИ

РИСКИ В ЛЕСНОЙ ОТРАСЛИ Статья в формате PDF 269 KB...

16 09 2026 5:15:40

БИОВОЛНОГЕНЕЗ: Ч.1. СТИХИЙНЫЕ БЕДСТВИЯ

БИОВОЛНОГЕНЕЗ: Ч.1. СТИХИЙНЫЕ БЕДСТВИЯ Статья в формате PDF 133 KB...

12 09 2026 8:48:46

КОЛЛАЙДЕР – 2010

КОЛЛАЙДЕР – 2010 Статья в формате PDF 288 KB...

08 09 2026 2:23:48

ЗАКОНОМЕРНОСТИ ДИНАМИКИ НАСЕЛЕНИЯ КИТАЯ

ЗАКОНОМЕРНОСТИ ДИНАМИКИ НАСЕЛЕНИЯ КИТАЯ Статья в формате PDF 148 KB...

04 09 2026 1:34:30

Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::