ПРИМЕНЕНИЕ КОМПОНЕНТОВ .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 233 KB...
25 04 2024 5:30:55
Статья в формате PDF 430 KB...
23 04 2024 14:50:23
Процессы разрушения твердой среды рассматриваются в связи с формированием и действием сейсмического излучения. Основой анализа является представление о сейсмическом излучении как о передаче в твердой среде механического импульса. ...
22 04 2024 0:16:23
Статья в формате PDF 106 KB...
21 04 2024 2:37:45
Статья в формате PDF 174 KB...
18 04 2024 21:28:12
Анализ собственных и опубликованных материалов в отечественной и зарубежной литературе приводит к выводу о возможности организма рыб противостоять негативному влиянию экзотоксикантов. Реальной основой сопротивляемости организма является биокатализ. В этих процессах изменение активности ферментов следует рассматривать в качестве первичной реакции биологически активных веществ, направленной на детоксикацию чужеродных соединений. ...
17 04 2024 21:51:13
Статья в формате PDF 125 KB...
14 04 2024 20:56:50
Статья в формате PDF 327 KB...
13 04 2024 20:41:22
Статья в формате PDF 141 KB...
12 04 2024 2:58:18
В статье даются разъяснения к применению зависимости коэффициента интенсивности нагрева (kи.н) металла от тока электрода с целью обеспечения оптимальных электрических и технологических показателей работы электропечных агрегатов для случаев экранированного и неэкранированного горения дуг. Представлено соспоставление скорости нагрева металла и kи.н для двух указанных случаев. ...
11 04 2024 13:18:37
Статья в формате PDF 148 KB...
10 04 2024 3:16:31
09 04 2024 16:13:21
Статья в формате PDF 142 KB...
08 04 2024 10:18:58
Приведены результаты опыта искусственного разведения лиственницы, проведенного впервые в Центральной Якутии с целью ускорения лесообразовательного процесса в зеленой зоне с. Матта Мегино-Кангаласского района. Выявлен высокий процент приживаемости саженцев (98,3-83,5 %). Установлено, что в первые годы после посадки идет адаптация саженцев к новым условиям среды, начиная с 3-4 года после посадки дают хороший прирост в высоту. ...
07 04 2024 3:51:19
Статья в формате PDF 101 KB...
05 04 2024 3:50:49
Статья в формате PDF 121 KB...
04 04 2024 1:45:52
Стратегия социально-экономического развития РФ поставило на государственном уровне вопрос о достижении нового качества общего образования – готовности и способности учащихся к непрерывному образованию. В настоящее время в соответствии с основными тенденциями развития современного образования меняются целевые, процессуальные и результативные компоненты учебно-воспитательного процесса и прежде всего в начальной школе. ...
03 04 2024 23:40:26
01 04 2024 22:50:32
Статья в формате PDF 122 KB...
31 03 2024 15:53:35
В отличие от известной методики математика Лоскутова и кардиолога Ардашева по лечению тяжелых аритмий хирургической абляцией зон хаотизации сердца, в работе предложен в форме биоинформационной и математической моделей подход для терапевтической, противовоспалительной методики снижения хаотизации. Проведена метаболическая реконструкция патобиохимии кардиосклероза и его коррекции. Кардиосклероз рассматривается, как аутовоспалительный процесс на базе медленного (недели, месяцы) «неправильного» взаимодействия депо углеводов и жиров. Расчеты показывают, что при медленных (годы) сценариях тренировки сердца и защите его от свободных радикалов и воспалений при стрессе цитопротекторами и пептидотерапией, могут возникать мультициклы, обеспечивающие снижение хаоса. Это создает условия прекондиционирования, тесно связанные с условиями для обновления клеток в сердце. ...
30 03 2024 7:41:22
Статья в формате PDF 105 KB...
29 03 2024 5:23:15
Статья в формате PDF 298 KB...
27 03 2024 13:33:40
Статья в формате PDF 163 KB...
26 03 2024 4:13:28
Статья в формате PDF 112 KB...
24 03 2024 3:56:14
Статья в формате PDF 111 KB...
23 03 2024 23:54:58
22 03 2024 4:40:51
Статья в формате PDF 251 KB...
21 03 2024 23:16:52
Статья в формате PDF 107 KB...
20 03 2024 9:55:34
Рассмотрен процесс выделения бутадиен-стирольного каучука из латекса СКС-30 АРК с использованием в качестве наполнителя льняного и вискозного волокна. Установлено влияние содержания льняного и вискозного волокна различной длины, при различных расходах коагулирующего агента, на полноту выделения каучука из латекса. Определено оптимальное содержание волокна и его длина. ...
18 03 2024 6:16:53
Статья в формате PDF 267 KB...
17 03 2024 6: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 ::