КОНТЕЙНЕРЫ В МЕТОДОЛОГИИ ПРОГРАММИРОВАНИЯ

Объектно-ориентированные языки поддерживают три базовых принципа объектной технологии:
1) инкапсуляция
2) наследование
3) полиморфизм
Принцип инкапсуляции. В основе любого объектного языка лежит принцип инкапсуляции. Этим термином обозначается способность языка скрывать второстепенные детали реализации от пользователя объекта.
Принцип наследования. В объектно-ориентированных языках можно моделировать связь путём объявления базового класса и производного от него. Классы связываются посредством классического наследования («А есть В») или с помощью модели контейнеров («А содержит В»). В любом случаи наследование всегда предполагает, что один класс является специальной формой другого.
Отношение «А есть В»: классическое наследование. В классическом наследовании подкласс перенимает существующую функциональность базового класса.
Отношение «А содержит В»: контейнеры и делегирование. Другой способ наследования является реализация отношения «А содержит В» и известен также как модель контейнеризации/делегирования (containment/delegation).
Принцип полиморфизма. Полиморфизм позволяет связанным классам единым образом реагировать на одинаковые сообщения. Так же как и с наследованием, существуют две формы полиморфизма - классический и конкретный (adhoc) полиморфизм.
Классический полиморфизм поддерживается только теми языками, которые поддерживают классическое наследование. Оба принципа тесно связаны друг с другом.
Рассматривая возможность агрегации нескольких объектов в новый класс - контейнер, необходимо определить основы агрегации. Каждый объект обладает некоторым декларированным интерфейсом, с помощью которого с ним могут взаимодействовать другие объекты. Контейнер, имея в своём составе некоторое множество объектов, может предоставлять вовне весь интерфейс вложенных объектов или только его часть. Совокупность интерфейсов, которые использует контейнер у вложенного объекта, назовём ролью вложенного объекта. Несколько вложенных объектов могут играть одинаковые или различные роли в одном и том же контейнере.
Понятие роли объекта не менее важно для агрегации, чем формальные параметры подпрограмм в структурном программировании. Это положение исходит из того, что понятие роли вводит виртуальность объектов в контейнере. Действительно, можно с полным правом сказать, что контейнер агрегирует объекты, способные выступать в таких-то ролях, то есть, объектов, имеющих некоторую определённую совокупность интерфейсов.
Понятие роли динамично, поскольку оно позволяет непосредственно при работе системы объявить ролью некоторый набор интерфейсов и потребовать от системы список классов, объекты которых способны выступать в данной роли. Для примера можно рассмотреть класс, который имеет интерфейсы A, B, C, D и F. В роли «альфа» объединим интерфейсы A и B, в роли «бета» - интерфейсы B, C и F, в роли «гамма» - A, C и D и т.д. Понятно, что подклассы всегда могут выступать в тех ролях. Однако, благодаря тому, что полиморфизм является понятием независимым от наследования (обратное неверно), то справедливо будет и утверждение, что классы, не находящиеся в наследственной связи, тоже способны играть одну и ту же роль.
Простота и удобство механизма виртуальности объектов в контейнере позволяют существенно облегчить разработку сложных систем за счёт перехода от упрощенных опытных моделей к промышленным образцам. С другой стороны, на основе данного вида виртуализации можно моделировать и реальную эволюцию сложных систем, например, биологических, технических, социальных. Однако, как будет отмечено ниже, такие требования не являются непреодолимыми, поскольку, с одной стороны, контейнеры существенно упрощают вложенные классы, в том числе и спецификации интерфейсов, а, с другой стороны, наследование контейнеров, как обычных классов, приводит и к наследованию функционала, который представим в виде ролей вложенных объектов. И, наконец, у контейнеров, как и любых других классов можно будет «наращивать» функциональность по мере необходимости, повышая возможности системы. Поэтому можно установить порядок разработки контейнера, определяя тем самым приоритеты реализации ролей, то есть интерфейсов вложенных классов.
Отметим, что на основе механизма сборки программ из объектов в процессе выполнения программ можно даже предложить способ создания новых типовых элементов построения программ, названных «кубиками» из уже созданных «кубиков».
Статья в формате PDF
185 KB...
23 03 2026 19:20:41
Статья в формате PDF
267 KB...
22 03 2026 4:46:50
Статья в формате PDF
129 KB...
21 03 2026 16:10:22
Статья в формате PDF
121 KB...
20 03 2026 16:20:32
Статья в формате PDF
140 KB...
18 03 2026 13:31:40
Статья в формате PDF
166 KB...
17 03 2026 21:20:32
В работе освещены современные представления о питании беременных женщин. Описаны возможные осложнения при нарушении пищевого статуса перед вступлением в бpaк. Показаны пути коррекции питания беременных женщин в первые периоды беременности, которые используются в России и в развитых западных странах.
...
16 03 2026 20:39:40
Статья в формате PDF
244 KB...
15 03 2026 14:36:54
Исследовано влияние вегетативной нервной системы на нелинейную динамику сердечного ритма. С этой целью рассмотрены две модели: первая основана на изучении нелинейных показателей у лиц с различным вегетативным балансом, который является важнейшим показателем состояния вегетативной нервной регуляции сердечно-сосудистой системы. Вторая модель – это возрастные особенности нелинейной динамики сердечного ритма. Показано, что наибольшая сложность и «хаотичность» ритма сердца наблюдается у лиц с преобладающим влиянием парасимпатического отдела ВНС. Наоборот, смещение вегетативного баланса в сторону симпатического отдела приводит к упорядочению последовательности кардиоинтервалов, Однако конечный результат не является просто суммой данных воздействий, поскольку интегрированные влияния обеих отделов ВНС имеет форму нелинейных взаимосвязей. ...
14 03 2026 11:32:52
Основным механизмом теплообмена для капиллярно-пористых физических систем (типа легкого бетона) является контактная теплопроводность, которая осуществляется благодаря связанным между собой процессам: переходом тепла от частицы к частице через непосредственные контакты между ними и переходом тепла через разделяющую промежуточную среду. С термодинамической точки зрения теплообмен в легких бетонах представляет собой теплоперенос (поток тепла Q), а точнее перенос энтропии (S), под действием градиента температуры (Т), осуществляемый, в соответствии со вторым законом термодинамики, от мест с более высокой к местам с меньшей температурой. Термодинамическая идентичность коэффициента теплопроводности () и S позволила, на базе второго закона термодинамики, вывести общее уравнение для прогноза теплопроводности легкого бетона в условиях его эксплуатации. Установлено, что релаксация теплопроводности (τ) пропорциональна затуханию объемных деформаций бетона (Θ), вызванных температурным градиентом и уровнем напряжения (η). Экспериментальные исследования теплопроводности легкого бетона подтвердили затухающий хаpaктер изменения Δλ как функции времени (t) и деформативности.
...
13 03 2026 4:19:45
Статья в формате PDF
132 KB...
11 03 2026 14:31:41
Статья в формате PDF
262 KB...
10 03 2026 12:57:28
Статья в формате PDF
119 KB...
08 03 2026 8:45:22
Статья в формате PDF
109 KB...
07 03 2026 15:17:22
Статья в формате PDF
228 KB...
05 03 2026 23:56:19
Статья в формате PDF
120 KB...
04 03 2026 14:44:28
Статья в формате PDF
226 KB...
03 03 2026 8:13:54
Статья в формате PDF
135 KB...
02 03 2026 16:17:27
Статья в формате PDF
251 KB...
28 02 2026 19:41:11
Статья в формате PDF
129 KB...
27 02 2026 17:11:54
В статье Жаворонковой И.А. и Некрасова А.С. «Танцевально-двигательная терапия» танец рассматривается не только как социокультурное, но и как социально-психологическое и психофизиологическое явление, как форма невер¬бальной коммуникации и самовыражения. Это приводит к возникновению нового психиатрического направления - танцевальной психотерапии, где танец используется как способ лечения. В статье анализируются основные этапы этого направления.
...
26 02 2026 0:13:40
23 02 2026 13:15:31
Статья в формате PDF
114 KB...
20 02 2026 0:22:49
Статья в формате PDF
111 KB...
19 02 2026 2:50:29
Статья в формате PDF
132 KB...
18 02 2026 10:42:59
Статья в формате PDF
124 KB...
17 02 2026 18:34:59
Статья в формате PDF
146 KB...
16 02 2026 13:19:14
15 02 2026 12:55:40
14 02 2026 15:47:57
Статья в формате PDF
106 KB...
13 02 2026 23:44:23
Статья в формате PDF
130 KB...
12 02 2026 6:24:34
Еще:
Поддержать себя -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 ::