Берниязов Нуржан
Жигерович
Казахский
Национальный Университет им. Аль-Фараби, механико-математический факультет,
кафедра «Информатика»
Java-модель для ДНК
На
современном этапе развития технологий, информационные системы заняли ключевое
место в повседневной жизни. Они не только прочно вошли и стали неотъемлемой
частью всех производственных процессов, но и обеспечивают досуг человека.
Динамически обновляемые базы данных банков, которыми мы пользуемся, электронные
каталоги библиотек, online афиши кинотеатров, интернет-магазины,
электронные версии любимых печатных изданий – все это online ресурсы, доступные нам
через интернет и используемые нами каждый день.
Представьте себе мир, где бы вы смогли иметь один для всех ваших
рессурсов код доступа! Не номер карточки, не номер удостоверения личности вам
не потребуется, а нужен будет лишь код вашего ДНК. Это не только код вашего
тела, но в тоже время это может быть ваш личный пароль или ваш код доступа на
какой-либо из ресурсов. Мы предлагаем программные инструменты для анализа
сравнения ДНК кодов человека. На их основе можно написать защищенные
программные продукты для управления своими банковскими счетами или входом в
квартиру или офис.
ДНК представляет собой двойную нить, скрученную в спираль. Каждая нить
состоит из последовательно соединенных нуклеотидов. Каждый нуклеотид ДНК
содержит одно из четырёх азотистых оснований - гуанин (G), аденин (A) (пурины),
тимин (T) и цитозин (C), связанное с дезоксирибозой, к последней, в свою
очередь, присоединена фосфатная группа. Между собой соседние нуклеотиды
соединены в цепи фосфодиэфирной связью, образованной 3'-гидроксильной (3'-ОН) и
5'-фосфатной группами (5'-РО3). Это свойство обуславливает наличие полярности в
ДНК, т.е. противоположной направленности, а именно 5'- и 3'-концов: 5'-концу
одной нити соответствует 3'-конец второй нити.
В данной работе разрабатывается JAVA-модель для каждого из ключевых
узлов ДНК. Модель состоит из классов с методами простейшего обрабатывания
данных, самих классов для объектов и API для удобной работы с данными,
используя макровские алгоритмы обработки схожести данных. Отдельные классы
будут собираться кортежом в один большой объект класса ДНК. Этот класс будет иметь
удобные на сегодняшний день алгоритмы расшифровывания генетических текстов.
Java-модель
представляет собой набор java-пакетов. Есть главные пакеты и есть
вспомогательные пакеты содержащие классы-пасыльные. Так же все классы выполнены
в виде бинов, то есть у каждого класса есть конструктор по умолчанию, то есть
без параметров и так же есть аксессоры для полей класса. Главными пакетами
являються химические малекулы, которые являються елементарными частицами для
химических процессов протикающих в процессах так или иначе связанных с ДНК.
Вспомогательные пакеты несут в себе методы для обработки и работы с
элементарными частицами. К примеру для постойки самой ДНК надо будет
пользоваться вспомогательным классом DNK и использовать метод add(Element e); Интерфейс этого метода выглядит так public void add(Element e);. Так же есть классы для обработки этих ДНК уже построенных. Канешно
еще реализованны не все алгоритмы, но я думаю это всего лишь вопрос времени.
Все известные алгоритмы приблизительно будут раелизованны до конца лета. Сейчас
java-модель компилируеться на java версии 1.6.0 , но думаю можно сделать
поддержку версий 1.4 и выше.
Удобность этой модели очевидна. Этои пакеты, которые всместе образуют
Java-модель ДНК можно будет переписать и на другие языки. Сам язык
программирования Java с каждым годом прочно закрепляет позиции как одного из
самых передовых языко программирования.
Самые массивные пакеты модели.
Пакет |
Описание |
NB.Elements |
Содержит основные классы по элементарным частицам в процессах ДНК, к
примеру такие как: Аденин, Гуанин, Тимин, Цитозин и другие важные элементы |
NB.DNK |
Содержит методы и классы для сборки из Элементов той ДНК, которая нам
нужна, или наоборот из данной днк получить все ее элементы. |
NB.UTIL |
Методы обработки ДНК. Алгоритмы для элементарного распознования. |
Список литературы:
1. Библиотека профессионала. Java2. Том1. http://www.books.ru/shop/books/82336 (по состоянию на 24 февраля 2009 года)
2. Библиотека профессионала. Java2. Том2. http://www.books.ru/shop/books/31169 (по состоянию на 24 февраля 2009 года)
3. Щербак В. И., Биоинформатика. Учебное пособие по Computer Sciences. - Алматы, 2004.