КОНТЕЙНЕРЫ В МЕТОДОЛОГИИ ПРОГРАММИРОВАНИЯ
Объектно-ориентированные языки поддерживают три базовых принципа объектной технологии:
1) инкапсуляция
2) наследование
3) полиморфизм
Принцип инкапсуляции. В основе любого объектного языка лежит принцип инкапсуляции. Этим термином обозначается способность языка скрывать второстепенные детали реализации от пользователя объекта.
Принцип наследования. В объектно-ориентированных языках можно моделировать связь путём объявления базового класса и производного от него. Классы связываются посредством классического наследования («А есть В») или с помощью модели контейнеров («А содержит В»). В любом случаи наследование всегда предполагает, что один класс является специальной формой другого.
Отношение «А есть В»: классическое наследование. В классическом наследовании подкласс перенимает существующую функциональность базового класса.
Отношение «А содержит В»: контейнеры и делегирование. Другой способ наследования является реализация отношения «А содержит В» и известен также как модель контейнеризации/делегирования (containment/delegation).
Принцип полиморфизма. Полиморфизм позволяет связанным классам единым образом реагировать на одинаковые сообщения. Так же как и с наследованием, существуют две формы полиморфизма - классический и конкретный (adhoc) полиморфизм.
Классический полиморфизм поддерживается только теми языками, которые поддерживают классическое наследование. Оба принципа тесно связаны друг с другом.
Рассматривая возможность агрегации нескольких объектов в новый класс - контейнер, необходимо определить основы агрегации. Каждый объект обладает некоторым декларированным интерфейсом, с помощью которого с ним могут взаимодействовать другие объекты. Контейнер, имея в своём составе некоторое множество объектов, может предоставлять вовне весь интерфейс вложенных объектов или только его часть. Совокупность интерфейсов, которые использует контейнер у вложенного объекта, назовём ролью вложенного объекта. Несколько вложенных объектов могут играть одинаковые или различные роли в одном и том же контейнере.
Понятие роли объекта не менее важно для агрегации, чем формальные параметры подпрограмм в структурном программировании. Это положение исходит из того, что понятие роли вводит виртуальность объектов в контейнере. Действительно, можно с полным правом сказать, что контейнер агрегирует объекты, способные выступать в таких-то ролях, то есть, объектов, имеющих некоторую определённую совокупность интерфейсов.
Понятие роли динамично, поскольку оно позволяет непосредственно при работе системы объявить ролью некоторый набор интерфейсов и потребовать от системы список классов, объекты которых способны выступать в данной роли. Для примера можно рассмотреть класс, который имеет интерфейсы A, B, C, D и F. В роли «альфа» объединим интерфейсы A и B, в роли «бета» - интерфейсы B, C и F, в роли «гамма» - A, C и D и т.д. Понятно, что подклассы всегда могут выступать в тех ролях. Однако, благодаря тому, что полиморфизм является понятием независимым от наследования (обратное неверно), то справедливо будет и утверждение, что классы, не находящиеся в наследственной связи, тоже способны играть одну и ту же роль.
Простота и удобство механизма виртуальности объектов в контейнере позволяют существенно облегчить разработку сложных систем за счёт перехода от упрощенных опытных моделей к промышленным образцам. С другой стороны, на основе данного вида виртуализации можно моделировать и реальную эволюцию сложных систем, например, биологических, технических, социальных. Однако, как будет отмечено ниже, такие требования не являются непреодолимыми, поскольку, с одной стороны, контейнеры существенно упрощают вложенные классы, в том числе и спецификации интерфейсов, а, с другой стороны, наследование контейнеров, как обычных классов, приводит и к наследованию функционала, который представим в виде ролей вложенных объектов. И, наконец, у контейнеров, как и любых других классов можно будет «наращивать» функциональность по мере необходимости, повышая возможности системы. Поэтому можно установить порядок разработки контейнера, определяя тем самым приоритеты реализации ролей, то есть интерфейсов вложенных классов.
Отметим, что на основе механизма сборки программ из объектов в процессе выполнения программ можно даже предложить способ создания новых типовых элементов построения программ, названных «кубиками» из уже созданных «кубиков».
Статья в формате PDF
251 KB...
02 12 2023 0:47:34
Статья в формате PDF
153 KB...
01 12 2023 21:12:24
В статье рассмотрен кластерный подход к структурированию экономики и обоснованию стратегий региональной экономической политики повышения качества кластера процессов жизнеобеспечения.
...
28 11 2023 10:18:24
В тесте «открытое поле» изучено поведение гомозиготных (A2/A2) по локусу TAG 1A DRD2 крыс линии WAG/Rij до и после шести сеансов аудиогенной стимуляции, сопровождавшихся большими судорожными припадками. Найдено, что после стимуляции резко снижается двигательная и исследовательская активность крыс.
...
27 11 2023 10:39:25
Статья в формате PDF
182 KB...
26 11 2023 10:16:36
К концу ХХ века накопилось огромное количество фактов и доказательств научной несостоятельности постулатов теории относительности (ТО), положенных в основу физических представлений о структуре микро- и макромира. ТО оторвала науку от изучения природных взаимосвязей, подменив их уравнениями с некими значками без чёткого понимания их сущности: масса, заряд, магнетизм и т.д. Игнорирование законов Природы привело человечество к цивилизационному кризису – нарушено равновесие биосферы. Причина глобальных изменений состоит в том, что антропогенное производство энергии в десятки раз превышает допустимый по законам межсистемного обмена порог. Продолжение технократического развития – тупик, катастрофа. Необходимо новое естествопонимание на основе аксиомы: «Мир построен системно». Структура материального мира определяется взаимодействием непрерывной не материальной вихреобразной среды и дискретных образований материи – элементарных частиц, из которых закономерно и системно построено всё от атомов до звёзд и галактик.
...
25 11 2023 15:13:23
Статья в формате PDF
113 KB...
24 11 2023 3:35:50
Естественное восстановление растительности на нарушенных землях Севера протекает с различной скоростью и зависит от литологического состава грунтов, рельефа, условий увлажнения, специфики нарушений и других факторов. Проведенные исследования, анализ и обобщение опыта восстановления нарушенных территорий Севера свидетельствует о значительной сложности и специфичности рекультивационных работ. К объектам Севера в большинстве случаев не применимы основные положения и приемы в области рекультивации земель, разработанные в целом для России. Разнообразие природных комплексов – от таёжных ландшафтов до лесотундры и арктической тундры, специфика нарушений, обусловленных геологоразведочными, изыскательскими, строительными и добычными работами обусловливает необходимость дифференцированного подхода к каждому объекту рекультивации при решении вопросов восстановления нарушенных земель.
...
23 11 2023 20:47:15
Статья в формате PDF
252 KB...
22 11 2023 13:55:39
Статья в формате PDF
101 KB...
20 11 2023 13:30:14
Статья в формате PDF
301 KB...
19 11 2023 9:47:59
Статья в формате PDF
133 KB...
18 11 2023 14:27:33
Статья в формате PDF
100 KB...
16 11 2023 6:49:24
Приведены геологические, геохимические и петрологические данные по щелочным гранитоидам майорского комплекса среднего девона. В его составе описаны 4 фазы внедрения: 1) роговообманковые габбро, габбро-нориты и габбро-диориты; 2) кварцевые диориты, гранодиориты амфибол-биотитовые; 3) биотит-амфиболовые граниты, субщелочные и рибекитовые граниты; 4) субщелочные лейкограниты, лейкограниты. Петрогеохимическими особенностями гранитоидов майорского типа являются повышенная щёлочность и наличие щелочного амфибола – рибекита. Прострaнcтвенно и парагенетически с майорскими гранитами, относящимися к анорогенной геодинамической обстановке формирования, ассоциирует железорудное и редкоземельное оруденение и щелочные метасоматиты. В экзоконтакте с Майорским массивом сформировались везувиан-гранат-пироксеновые скарны.
...
15 11 2023 8:14:53
Статья в формате PDF
226 KB...
14 11 2023 14:13:35
Статья в формате PDF
272 KB...
12 11 2023 1:19:35
Статья в формате PDF
124 KB...
11 11 2023 8:32:55
Статья в формате PDF
300 KB...
10 11 2023 5:29:59
Статья в формате PDF
105 KB...
09 11 2023 20:29:22
Статья в формате PDF
132 KB...
07 11 2023 4:32:55
06 11 2023 20:29:12
Статья в формате PDF 120 KB...
04 11 2023 8:32:23
Статья в формате PDF
109 KB...
03 11 2023 17:13:44
31 10 2023 15:59:24
Статья в формате PDF
153 KB...
30 10 2023 0:53:45
Статья в формате PDF
127 KB...
29 10 2023 1:37:28
Статья в формате PDF
285 KB...
28 10 2023 6:23:14
Предложена нестационарная математическая модель рассеяния примеси в трехслойной атмосфере (приземный, пограничный слои, слой свободной атмосферы). Приведены результаты исследования этой модели аналитическими методами в случае рассеяния легкой, сохраняющейся примеси при постоянной скорости ветра.
...
27 10 2023 23:55:19
Статья в формате PDF
261 KB...
26 10 2023 15:55:42
Статья в формате PDF
163 KB...
24 10 2023 10:35:22
Еще:
Поддержать себя -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 ::