ПРИМЕНЕНИЕ КОМПОНЕНТОВ .NET В СОЗДАНИИ ОТКАЗОУСТОЙЧИВОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Концепцию мультиверсионного программирования (МВП, multi-version programming - MVP), или N-версионного программирования (НВП, N-version programming - NVP) впервые представил Альгирдас Авижиенис в 1977. Основная идея МВП заключается в том, что для решения отдельных подзадач системы, используется несколько версий одного алгоритма, выполняющихся одновременно. Результаты работы этих алгоритмов анализируются, и из них выбирается один наиболее удовлетворяющий потребностям системы на данный момент времени. Выбор производится согласно внутренней логике системы. Таким образом, достигается повышение надёжности системы в целом. Различных подзадача в сложных системах, реализация, которых использует концепцию мультиверсионного программирования, может быть огромное множество. Очевидно, что для разработки таких систем необходима общая концепция и общий подход в написании алгоритмов, решающих её отдельные подзадачи. На эту роль как нельзя лучше подходит методика компонентного программирования.
Такой метод создания программного обеспечения, как компонентное программирование, появился относительно недавно. Его можно охаpaктеризовать как технологию создания программного обеспечения из готовых блоков. То есть программисты пытаются использовать идеи строителей, занимающихся крупнопанельным домостроением. Создание программного обеспечения из компонентов подразумевает, что компоненты будут добавляться к проекту во время разработки. При этом будет производиться их начальная настройка. Компоненты как таковые не подразумевают пользовательского интерфейса (ни для программиста, ни для конечного пользователя). В этом качестве выступают части интегрированной среды разработки и дополнительные программные дизайнеры. Первой компонентной средой был продукт, разработанный корпорацией Microsoft на заре своего существования. Впоследствии на его базе были разработаны множество других сред. Таким образом, к концу двадцатого века, компоненты стали поддерживаться почти всеми производителями интегрированных сред.
Самой развитой и совершенной компонентной моделью на сегодняшний день, является модель предложенной корпорацией Microsoft и реализованной ею в новой технологии .NET.
Определение компонента в понимании Microsoft - это объединенные в отчуждаемую форму исполняемый бинарный код и данные, которые могут использоваться для построения программных систем. Отчуждаемость подразумевает возможность использования компонента без дополнительных знаний о нем. На пpaктике это означает, что компонент сам должен содержать сведения о себе. Компонент должен также иметь внешний (публичный) интерфейс. Интерфейс является как бы механизмом, через который можно запустить находящийся внутри компонента код. Отчуждаемость также означает, что экземпляр компонента может быть создан динамически, и что для этого не обязательно использовать всякого рода компиляторы и интерпретаторы.
По сути компонент - это класс, предоставляющий информацию о себе (метаинформацию), экземпляры которого можно создавать динамически (не имея никакой статической информации о нем).
Пpaктически любой класс в .NET отвечает этим требованиям - метаинформация создаются для любого элемента класса (будь он трижды скрытым), экземпляр любого класса можно динамически создать, и любой класс помещается в сборки (один или более исполнимых модулей), которые можно распространять независимо. Таким образом, получается, что любой класс в .NET может выступать как компонент. Но на самом деле это не так. И причиной тому наличие в библиотеке .NET отдельного класса Component. Любой класс, что бы иметь возможность взаимодействовать с интегрированной средой разработки должен быть унаследован от класса Component.
На основе выше приведённого описания основных концепций компонентной модели .NET, можно сделать вывод о том что .NET компоненты обладают следующими преимуществами по сравнению с компонентами, в основе которых лежат иные концепция и технология:
- Возможность интегрировать компонент в любую среду разработки, поддерживающую соответствующие стандарты Microsoft
- Возможность написания и распространения компонент сторонними разработчиками
- Возможность написания компонент в различных средах разработки и на различных языках программирования, поддерживающих соответствующие стандарты Microsoft
Таким образом, становится очевидным выбор в пользу использования компонентной технологии .NET, для разработки мультиверсионных компонент.
СПИСОК ЛИТЕРАТУРЫ
- Владислав Чистяков. «.Net - классы, компоненты и контролы» RSDN Magazine №3 2003г.
- Котенок А.В. Построение среды мультиверсионного исполнения программных модулей. Вестник НИИ СУВПТ: Сб. научн. трудов; Красноярск: НИИ СУВПТ.- 2003. Вып. 14.- С. 13-21.
Статья в формате PDF
111 KB...
05 05 2026 8:13:36
Статья в формате PDF
325 KB...
04 05 2026 7:48:50
Статья в формате PDF
292 KB...
03 05 2026 11:31:32
В статье дается хаpaктеристика современного состояния жилищно-коммунального хозяйства Саратовской области. Отмечаются изменения в структуре собственности на жилищный фонд, оцениваются тенденции развития основных фондов жилищно-коммунального хозяйства, состояние кадров и платежно-расчетной дисциплины в отрасли, освещается политика администрации области в части организационных преобразований системы управления жилищно-коммунальным хозяйством и обеспечения социальных гарантий для населения.
...
02 05 2026 1:35:44
На основе представлений о системности мироустройства и о прострaнcтве, как онтологической, непрерывной безмассовой вихревой среде даны определения основных физических понятий (материя, масса, заряд, энергия и т.д.). Физические параметры среды определяют закономерность существования единственной материальной частицы - носителе массы и заряда, названной массон (единство физических представлений об электроне, позитроне и заряде). В соответствии с природными правилами структурирования первочастиц из 273 и 207 массонов формируются гексагональные структуры, соответственно, пи-, и мю-мезонов, а из 7 этих частиц построены нуклоны. Объяснены ядерные силы и свойства всех частиц.
...
01 05 2026 10:50:40
В статье рассматриваются социальный успех, успешность, успешная деятельность, как основные категории самореализации и профессионального роста. Анализируется проблема влияния современного общества на мотивационную сферу личности в деятельности. Представлена модель влияния мотивов «достижения успеха» на трудовую адаптацию личности.
...
30 04 2026 7:12:11
Статья в формате PDF 288 KB...
29 04 2026 1:10:34
Статья в формате PDF
263 KB...
28 04 2026 7:31:18
Статья в формате PDF
123 KB...
27 04 2026 2:34:15
Статья в формате PDF
113 KB...
26 04 2026 13:33:24
Статья в формате PDF
255 KB...
25 04 2026 6:27:20
Статья в формате PDF
262 KB...
24 04 2026 19:42:49
Статья в формате PDF
250 KB...
23 04 2026 18:55:10
Статья в формате PDF
1043 KB...
21 04 2026 22:12:54
Статья в формате PDF
119 KB...
20 04 2026 23:47:33
Статья в формате PDF
104 KB...
19 04 2026 3:42:13
Статья в формате PDF
275 KB...
18 04 2026 10:45:48
Статья в формате PDF
111 KB...
17 04 2026 15:41:12
Статья в формате PDF
105 KB...
16 04 2026 12:36:36
Статья в формате PDF
109 KB...
15 04 2026 20:28:51
Статья в формате PDF
123 KB...
14 04 2026 13:59:20
13 04 2026 2:20:34
Статья в формате PDF
364 KB...
11 04 2026 17:46:58
риведены геологические, геохимические и петрологические данные по шошонитовым гранитоидам Тигирекского массива Алтая. В составе массива выделены 5 фаз: 1 – габбро; 2 – диориты, монцодиориты; 3 − сиениты, гранодиориты, граносиениты; 4 – граниты, умеренно-щелочные граниты; 5 – лейкограниты, умеренно-щелочные лейкограниты с флюоритом. Породные типы массива отнесены к нормальной известково-щелочной и высококалиевой шошонитовой сериям. Сиениты и монцодиориты тяготеют по составу к банакитам. В процессе становления массива проихсодила диффреренциация глубинного очага с фpaкционированием редкоземельных элементов, что отразилось на соотношении в породах элементов групп LILE и HFSE со значительной деплетированностью последних. В породах происходила смена типа тетрадного фpaкционрования редкоземельных элементов, что связано с различной насыщенностью расплавов флюидами и летучимим компонентами. С массивом связаны месторождения и проявления железа, вольфрамаа, молибдена, бериллия, аквамарина, горного хрусталя и раухтопаза.
...
10 04 2026 9:14:27
Статья в формате PDF
132 KB...
08 04 2026 1:23:52
06 04 2026 21:29:56
Представлены результаты использования дернообразующих сортов растений в биоремедиации нефтезагрязненных земель в почвенно-климатических условиях Якутии. Установлено влияние растений на ускорение процессов биологической очистки мерзлотных почв от загрязнений. Использование растений с развитой корневой системой в качестве заключительного этапа рекультивации позволяет сократить сроки перевода нарушенных земель в состояние, соответствующее безопасному уровню, который хаpaктеризует способность почв к естественному самоочищению.
...
05 04 2026 21:40:41
Статья в формате PDF
254 KB...
03 04 2026 21:42:44
Статья в формате PDF 114 KB...
02 04 2026 21:34:33
Статья в формате PDF
303 KB...
01 04 2026 4:51:12
В условиях эксперимента доказано, что острый панкреатит и травма поджелудочной железы приводят к повышению гемоциркуляции в поджелудочной железы. Хроническая алкогольная интоксикация, длительное применение ингибиторов протонной помпы и сочетание этих условий статистически значимо снижают перфузию в поджелудочной железе, желудке и двенадцатиперстной кишке. Для коррекции развившихся изменений рекомендовано применять электромагнитные волны. При этом электромагнитные волны низкой интенсивности частотой 61 Ггц снижают показатели перфузии в органах брюшной полости. Излучение частотой 65 Ггц – увеличивает эти показатели.
...
31 03 2026 6:18:55
Статья в формате PDF
233 KB...
28 03 2026 17:34:53
Статья в формате PDF
116 KB...
27 03 2026 8:44:46
Еще:
Поддержать себя -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 ::