ПРИМЕНЕНИЕ КОМПОНЕНТОВ .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
104 KB...
03 11 2026 23:11:32
Статья в формате PDF
129 KB...
02 11 2026 2:50:12
Статья в формате PDF
118 KB...
01 11 2026 12:43:11
Статья в формате PDF
294 KB...
31 10 2026 3:32:24
Развитие интеллекта учащихся происходит эффективно, если усвоение знаний, приобретение умений и навыков из цели образования превращается в средство развития способностей. Для этого надо переосмыслить содержание образования, сконструировать и внедрить эффективные педагогические технологии, позволяющие эффективно решить поставленные задачи. "Химия для математиков" – технология интеграции естественно-математических знаний на разных уровнях. Методика проведения интегрированных уроков "химия – информатика" разработана и успешно применяется в физико-техническом лицее № 1 г. Саратова.
...
30 10 2026 19:56:22
Статья в формате PDF
111 KB...
28 10 2026 3:12:59
Статья в формате PDF
100 KB...
27 10 2026 5:26:30
Статья в формате PDF 279 KB...
25 10 2026 16:14:48
Статья в формате PDF
142 KB...
24 10 2026 7:43:24
Статья в формате PDF
144 KB...
23 10 2026 5:13:27
Статья в формате PDF
217 KB...
22 10 2026 16:34:51
Статья в формате PDF
249 KB...
21 10 2026 14:57:53
Статья в формате PDF
127 KB...
18 10 2026 13:37:44
Статья в формате PDF
109 KB...
17 10 2026 10:29:31
16 10 2026 12:54:26
Проведен анализ опубликованных данных по вопросу генетических факторов развития гемолитических анемий (мембранопатий, энзимопатий). Список возможных мутаций при определенной форме анемии обобщен в виде таблиц. Дано понятие о сущности, строении и функции основной клетки красной крови – эритроците. Приведена классификация различных групп анемий, причины их возникновения, возможные симптомы проявления заболевания, прогноз для жизни. Затронуты аспекты донорства при ферментодефицитных состояниях доноров и реципиентов.
...
15 10 2026 20:10:27
Статья в формате PDF
102 KB...
14 10 2026 6:10:22
Статья в формате PDF
112 KB...
13 10 2026 23:15:55
Изучено влияние молекул средней массы, выделенных из обожженной in vitro печени на каталитические и кинетические свойства альдегиддегидрогеназы. Показано, что молекулы средней массы выступают в роли ингибиторов активности исследуемого фермента в эритроцитах и цитозоле печени. Отмечена корреляция уменьшения активности эритроцитарной и цитоплазматической альдегиддегидрогеназы под влиянием молекул средней массы.
...
12 10 2026 21:33:21
В работе приведены результаты анализа степеней сингемеробии парциальных флор Якутии в разрезе флористических районов. Отмечается роль географических факторов в формировании групп районов, объединенных по степени сингемеробии флор крупных геоботанических типов.
...
10 10 2026 11:43:16
Статья в формате PDF
289 KB...
09 10 2026 22:44:59
В статье рассмотрен интенсивный подход к структурированию экономики и обоснованию стратегий региональной экономической политики повышения качества кластера процессов жизнеобеспечения.
...
07 10 2026 5:43:42
Статья в формате PDF
987 KB...
06 10 2026 11:40:37
Приводятся результаты исследования восстановления пашен, заброшенных при развитии негативных криогенных процессов и явлений и деформации поверхности. Этот опыт восстановления может использоваться и на долинных сельскохозяйственных угодьях, где распространены близкозалегающие подземные льды, вызывающие деформацию поверхности при мелиоративных воздействиях.
...
05 10 2026 18:52:27
Статья в формате PDF
146 KB...
04 10 2026 9:46:42
Статья в формате PDF
137 KB...
03 10 2026 2:32:41
02 10 2026 12:32:26
Статья в формате PDF
252 KB...
01 10 2026 11:38:55
Статья в формате PDF
137 KB...
30 09 2026 9:30:48
Изучены видовой состав и экобиоморфы лишайников, проведена комплексная оценка роли экологических факторов в развитии лишайникового покрова карстовых воронок на территории Северо-Западного Кавказа.
...
28 09 2026 21:30:13
27 09 2026 7:14:12
Статья в формате PDF
113 KB...
26 09 2026 0:12:15
Статья в формате PDF
321 KB...
25 09 2026 3:53:20
Еще:
Поддержать себя -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 ::