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

Современные программные системы становятся сложнее, претендуя на решение глобальных задач, например таких, как создание единой системы управления предприятием. При этом автоматизация отдельных операций или отделов фактически исчерпала свой потенциал, а возможность безболезненного объединения нескольких подсистем в единое целое, как правило, требует значительных усилий.
Гибкость программного обеспечения определяется набором типовых частей, из которых можно было бы собирать множество программ.
Объектно-ориентированные языки программирования дали четыре новых механизма использования типовых частей:
- механизм классов, порождающих при выполнении любое количество однотипных объектов, например, ряд однотипных кнопок;
- возможность тиражирования объектов от породившей программы во все новые программы;
- динамически линкуемые библиотеки с порождающими объекты классами;
- механизм сборки программ из компонентов - объектов в процессе выполнения программ.
Первый механизм облегчил развитие систем визуального программирования, при работе в которых, значительная часть программы может быть создана путем отбора мышкой стандартных компонентов.
Второй механизм привел к возникновению объектных систем управления базами данных (СУБД), поставляющих программам не только данные, но и код, обpaбатывающий эти данные.
На основе третьего механизма возникли COM-технологии, что позволило строить гибкие программы, которые обладают свойством возможного развития при изменении условий их эксплуатации.
Четвертый механизм пока не нашел должной поддержки в инструментальных средствах разработки программ, что и предопределило направление данных исследований.
Введём два вида контейнеров: динамический и статический.
Если контейнер для «общения» с вложенными объектами общается через единый интерфейс, то такой контейнер будем называть статическим. Если контейнер работает со всеми вложенными объектами не по одной схеме, а используя разные методы, то такой контейнер будем называть динамическим.
Чтобы приведённая классификация контейнеров стала более понятной, стоит оговориться о том, что разделение контейнеров на статические и динамические относится к строению контейнера.
Контейнеры по определению могут общаться с другими контейнерами, с которыми находится на одном уровне иерархии, а также на одну ступень выше и ниже по иерархической лестнице. Соответственно, сообщение может быть внутренним относительно контейнера - ситуация, когда контейнер передаёт сообщения между своими компонентами, и вешними - ситуация, когда контейнер передаёт сообщения другим контейнерам или контейнеру, в состав которого входит источник сообщения.
Для обеспечения заявленной возможности замены (добавления/удаления) новых свойств и методов принято решение хранить в контейнерах только ссылки на свойства и методы.
Помимо такой программной сущности, как контейнер, необходимо внедрить модули-диспетчеры - виртуальные таблицы, в которых содержатся ссылки на экземляры свойств и методы, обращаясь к которым объект-контейнер фактически агрегирует их в своей структуре.
Заключение
Применение контейнеров для построения крупных программных систем, которые должны обладать возможностью быстрого изменения исходя из требований бизнеса, предоставляет увеличивает скорость создания такой системы и существенно облегчает процесс её поддержки.
Работа представлена на III научную международную конференцию «Фундаментальные исследования», Доминиканская республика, 10-20 апреля 2008 г. Поступила в редакцию 20.03.2008.
Статья в формате PDF
121 KB...
22 05 2026 7:53:41
Статья в формате PDF
115 KB...
21 05 2026 20:56:10
Статья в формате PDF
180 KB...
20 05 2026 0:39:51
Статья в формате PDF
101 KB...
19 05 2026 14:38:18
Статья в формате PDF
114 KB...
18 05 2026 5:42:43
Статья в формате PDF
110 KB...
17 05 2026 8:19:42
Статья в формате PDF
142 KB...
16 05 2026 22:37:40
Статья в формате PDF
116 KB...
14 05 2026 8:46:47
Статья в формате PDF
361 KB...
13 05 2026 2:27:36
Статья в формате PDF
122 KB...
12 05 2026 0:23:32
Статья в формате PDF
132 KB...
11 05 2026 6:45:26
Статья в формате PDF
137 KB...
10 05 2026 20:58:47
Статья в формате PDF
307 KB...
09 05 2026 8:49:34
Статья в формате PDF
115 KB...
08 05 2026 7:52:35
Статья в формате PDF
102 KB...
07 05 2026 12:30:28
Статья в формате PDF
371 KB...
06 05 2026 21:26:51
Статья в формате PDF
121 KB...
05 05 2026 11:44:51
Статья в формате PDF
329 KB...
04 05 2026 11:52:44
Статья в формате PDF
297 KB...
03 05 2026 0:25:49
02 05 2026 17:23:32
Статья в формате PDF
106 KB...
01 05 2026 21:33:56
Статья в формате PDF
104 KB...
30 04 2026 21:19:36
Статья в формате PDF
112 KB...
29 04 2026 22:50:55
28 04 2026 6:58:41
На основании диагностических признаков приводятся доказательства, указывающие на то, что Chytridiomycosis существует в популяциях Rana arvalis на Среднем Урале. Показана методика обнаружения заболевания по аномалиям ротового аппарата личинок и отслеживания динамики частоты встречаемости его в популяции. В экстремальных условиях инфекция поражает ослабленных и ведет к их выбpaковке, что приводит к ускорению адаптации популяции в целом в быстро изменяемой среде.
...
27 04 2026 5:22:12
Статья в формате PDF
137 KB...
26 04 2026 15:56:32
Статья в формате PDF
121 KB...
25 04 2026 5:35:29
Статья в формате PDF
121 KB...
24 04 2026 12:30:14
Статья в формате PDF
129 KB...
23 04 2026 17:19:38
22 04 2026 11:53:49
Статья в формате PDF
104 KB...
21 04 2026 19:46:46
Статья в формате PDF
184 KB...
20 04 2026 14:47:42
Статья в формате PDF
121 KB...
18 04 2026 14:52:47
Статья в формате PDF
111 KB...
17 04 2026 11:52:18
Статья в формате PDF
238 KB...
16 04 2026 12:51:23
Статья в формате PDF
120 KB...
14 04 2026 9:48:49
Статья в формате PDF
112 KB...
13 04 2026 20:48:19
Еще:
Поддержать себя -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 ::