Программная разработка SAD-RNAInSpace


SAD-RNAInSpace (Semi-automatic designing RNA in space) - программное обеспечение для полуавтоматического конструирования РНК в пространстве. Обеспечивает 3D визуализацию структуры РНК, позволяет её изменять и с помощью связи с RNAWorld позволяет автоматизировать некоторые этапы сворачивания РНК.

Все авторские права самого программного обеспечения (SAD-RNAInSpace и RNAWorld) принадлежат основателю проекта Сергею Яковлеву, но участникам проекта программное обеспечение может быть предоставлено для реализации научных и образовательных целей.

РевизииПравить

Программное обеспечение находится в процессе разработки поэтому его описание будет появляться практически в интерактивном режиме.

Исходники данного ПО находятся в репозитории SVN, т.е. используется контроль версий. Для ознакомления список ревизий можно посмотреть здесь. Устаревшие версии помещены в АРХИВ.

Причины созданияПравить

Необходимо визуализировать этапы сворачивания молекулы РНК, чтобы исследовать критические точки сворачивания. В этих критических точках сворачивания нужно принимать решение проверять или нет ту или иную конфигурацию. Без визуализации этого нельзя сделать, а используя визуализацию как внешнию программу существенно замедляется работа исследователя. Поэтому необходима графическая библиотека визуализации молекул РНК, которую можно использовать на языке C# в программном обеспечении RNAFoldingAI.

При написании данного ПО, был исследован исходных код ПО VMD 1.8.7, который написан преимущественно на Си++ (и со скриптами на языке Python). При ближайшем рассмотрении оказалось:

  1. Архитектурное качество ПО VMD 1.8.7 находится на очень низком уровне
  2. Повсеместно используется двухстороний обмен ссылками, что приводит к сильнейшим взаимосвязям между классами, и по сути разделение на классы лишь условное
  3. Ориентация ПО VMD на большое число операционных систем, графических библиотек, текстовых интерпретаторов, вариаций пользовательского интерфейса, концепция plugin`ов и т.п. привело к существенному запутыванию кода, при том, что все эти возможности по сути остаются не востребованными для большинства задач
  4. Сложности с архитектурным качеством не позволяют ПО VMD легко преобразовать в динамическую библиотеку (.dll), которая обеспечивала бы визуализацию молекул РНК

Развитие модулей/компонентовПравить

Стабильные версииПравить

Текущая разработкаПравить

  • OpenGlPlus.dll - динамическая библиотека на Си++ реализующая 3D-визуализацию молекул РНК
  • RNAInSpace - управляющие приложение на С#, с графическим интерфейсом
  • RNAWorld - главный расчетный модуль на С#

ПримечанияПравить