Главная » Разработчики » Решетюк В. А.

Решетюк Виталий Арнольдович

Дата рождения: 29/04/1958 г.

Образование: инженер-системотехник (Донецкий политехнический институт, 1978-84г, специальность АСУ)

E-mail: revitalyr@yandex.ru

Языки:

  • C++ (IBM's Visual Age C++, gcc, Metrowerks CodeWarrior, Cbuilder, Visual C++)
  • Java (Metrowerks CodeWarrior, Java Builder)
  • Delphi, PASCAL (Роботрон, ДВК)
  • IDL
  • Visual Basic, FORTRAN IV - PL/1 (ЕС), мнемокоды Д3-28, ассемблер DEC (БК, ДВК)

Библиотеки: The Standard Template Library (STL), The ADAPTIVE Communication Environment (ACE(TM)), The Loki Library by Andrei Alexandrescu, C++ Boost

Инструментарий: gmake, cvs, doxygen, Source-Navigator

OS: WinNT/2000/XP, AIX, HP-UX, Solaris, Linux, Win9x, Mac OS v8, Win3.11, MS DOS

Техника: IBM-PC, Apple Macintosh, ИСКРА-1030, ДВК-2, ЕС-1020/1022, микро-ЭВМ Д3-28, С1-20, БК-0010, Роботрон-1715

2002 - 2005

Техника: IBM-PC

Языки: C++ (CBuilder, IBM's Visual Age C++, gcc), Java (Java Builder), Delphi, Perl

OS: Win2000/XP, AIX, HP-UX, Solaris, Linux

Место работы: MaxBill LTD

Задачи:

  • участие в разработке подсистемы MaxRate (биллинговые расчеты, © MaxBill):
    • разработка и реализация протокола взаимодействия MaxRate и Java консоли [Java, C++ & ACE]
    • разработка и реализация C++ template для унифицированного создания динамически загружаемых модулей и wrappers для них [C++ & ACE]
    • обеспечение выполнения динамических модулей MaxRate в multithread (очередь данных на обработку с повторно используемыми элементами выборка, из которой производится несколькими задачами) [C++ & ACE]
    • разработка и реализация подсистемы multithreaded refreshable dictionaries (блокировки осуществляются автоматически итераторами в режиме «много читателей - один писатель») [C++ & STL & ACE]
    • разработка и частичная реализация унифицированного метода сериализации properties объекта (template DataRecordDescriptor, template Serializator, ...) [C++ & STL]
    • перепроектирование и реализация подсистемы Loading для использования динамически загружаемых модулей LoadingExtention [C++]
    • создание wrappers для библиотеки MBKernel DB Direct Access (DBConnection, DBSession, DBField, DBRecordset, ...), создание «отладочных» реализаций DBSession (DBSessionODBC, DBSessionOTL, DBSessionStub) [C++, Oracle, MSSQL]
  • участие в реализации подсистем MBKernel (© MaxBill):
    • разработка и реализация платформо-независимого метода использования интерфейсов (не имеют отношения к Microsoft - IRootInterface, IMetaInterface, ImplementationRepository, ...) [C++ & Loki]
    • разработка и реализация платформо-независимой подсистемы ProcessAutomation (демон/сервис обеспечивает регистрацию процессов, разрешает по внешним командам запускать/останавливать зарегистрированные процессы, получать/изменять информацию о состоянии процесса и его конфигурационных параметрах в формате XML для обеспечения администрирования с помощью WEB) [C++ & STL & ACE & Loki, Java]
    • разработка и реализация кроссплатформенной подсистемы DeviceAgent, интеграция DeviceAgent и ProcessAutomation [C++ & STL & ACE & Loki]
    • создание пакета unit tests (test_suite) для помощи QA [C++ & Boost]
  • подсистема нечеткого логического вывода (в настоящее время используется для оценки возможных диагнозов по результатам измерений электропроводности участков кожи, независимо от MaxBill) - спроектированы и реализованы:
    • язык описания правил [BISON]
    • база знаний и механизм нечеткого вывода [C++]
    • система интерфейсов для доступа к подсистеме вывода [IDL]
    • небольшой инструментарий для тестирования и навигации по базе знаний [Delphi]
  • конвертор документ MS Word в Compiled HTML (независимо от MaxBill) [Perl]:
    • доступ к сервисам MS Word осуществляется с помощью COM
    • на основании стилей заголовков документ разбивается на секции, и каждая секция сохраняется в отдельном .html файле
    • анализируются и перестраиваются внутридокументные гиперссылки
    • формируются файлы проекта, содержания и списка ключевых слов
    • для сформированного проекта вызывается компилятор HHC
  • разработка и реализации подсистемы управления съемом информации с датчиков в системе обеспечения взрывобезопасности в угольных шахтах (система КАГИ © МакНИИ, независимо от MaxBill) [Delphi]:
    • thread safe класс TGate_COM с методами Read/Write, которые оперируют блоками 'array of byte' (Delphi автоматически освобождает память)
    • система интерфейсов (IPipe, IEventSource, IEventSink, IPeriodcalJob, IControlCenter) как абстрактная модель конфигурирования системы и выполнения операций
    • реализация интерфейса IControlCenter и обеспечивающих его интерфейсов (ControlCenterImpl, InfoNotifyThread, InfoWatchThread, JobsThread, …)
    • несложное GUI приложение и демонстрационные реализации IEventSource, IEventSink, IPeriodcalJob для тестирования и как use case
  • система интерфейсов для предметно-ориентированного (а не СУБД-ориентированного) доступа к данным (© ДонНИИ МЭП, независимо от MaxBill) [IDL, Delphi]:
    • интерфейс IMetaInfo - фабрика экземпляров, а также наименование, GUID и т.п. обслуживаемого интерфейса
    • интерфейс IDataStore - обеспечивает навигацию по ID экземпляров, получение/модификацию значений
    • интерфейс IStoredObj - абстракция persistent object со свойствами MetaInfo, DataStore и методами LoadByID, MakeID. Метод GetDetails возвращает subset, представленный IDataStore
    • прикладные понятия описываются как интерфейсы, порожденные из IStoredObj
    • реализация IStoredObj обеспечивает тривиальную реализацию порожденных интерфейсов

1998 - 2002

Техника: IBM-PC, Apple Macintosh

Языки: C++ (Metrowerks CodeWarrior, CBuilder, Visual C++), Java (Metrowerks CodeWarrior, Java Builder), Delphi

OS: Win9x, WinNT/2000, Mac OS v8

Место работы: НИИ Медицинских проблем семьи, разработки по заказу

Задачи:

  • разработка архитектуры Intranet системы - upload/download файлов и иерархическая каталогизация (виртуальные каталоги) [Delphi, C++, Java]:
    • спроектирована дисциплина взаимодействия клиентского ПО с базой данных (пакеты Java interface'ов), выполнено проектирование структуры базы данных и реализован локальный stub доступа к данным с помощью JDBC (JDK 1.2.1)
    • спроектирован специализированный протокол на базе TCP/IP и реализован Java-адаптер, которым был заменен локальный stub
    • участие в проектировании и реализации серверного приложения
    • сопровождение серверного приложения (Delphi, C++) и подсистемы сетевого взаимодействия клиента (Java)
  • разработана система регистрации ЭКГ во время проведения сеанса гипербарической оксигинации [Delphi, C++]:
    • спроектирован и изготовлен драйвер (vxd) для взаимодействия с аппаратурой измерения
    • on-line оценка мощности спектра и визуализация LF, VLF, HF, LF/HF составляющих
    • контроль нахождения ЧСС в заданных пределах
    • ведение базы данных пациентов с сохранением первичного измеренного сигнала
  • программное обеспечение для управления камерой зональной декомпрессии портировано в Win32 (Win9x, NT) и дополнено [Delphi, C++]:
    • блок автоматического измерения артериального давления
    • корректировка режима воздействия по результатам измерения АД и ЧСС
    • аварийное прерывание процедуры по физиологическим показателям, допустимому давлению в камере, датчику перегрева двигателя
    • развитая подсистема визуализации
  • адаптация plug-in'ов, разработанных для системы 3D моделирования и анимации Electric Image, к среде Lightwave v5.6 [C++]:
    • Colorize - создание цветовых эффектов с привязкой к геометрии и номеру фрейма
    • CellMap - наложение текстуры по индивидуальным фасетам
    • Troopper - механизм клонирования объектов (не завершен)
  • библиотека для вывода текста по заданной трассе (Win32) [C++]:
    • вывод (посимвольный или строки) по
    • прямой
    • окружности
    • сплайновой кривой
    • управление ориентацией символов (вертикально/ортогонально к трассе)
    • управление точкой начала текста и направлением вывода
    • возможность использования на уровне
    • классов C++
    • функционального API (статическая/динамическая линковка)
    • интерфейсов OCX
    • quick start примеры для MS VC, CBuilder, Delphi, Basic
    • help с иллюстрациями и детальным описанием использования
  • участие в разработке обучающего курса (Macromedia Authorware 4) в качестве консультанта по «потрохам» (синхронизация аудио/видео, исправление ошибок в template code, написание фрагментов кода)

~1996 - 1998

Техника: IBM-PC
Языки: Delphi, Interbase, Visual Basic, C++ (CBuilder)
OS: MS DOS, Win3.11, WinNT
Место работі: программист ООО ДЦ «Ваш капитал»
Задачи:

  • участие в задачах автоматизации офисной деятельности [Delphi, VB, Interbase]:
    • базы в формате Interbase (доступом к данным посредством stored procedure)
    • клиентские приложения Delphi 2/3,
    • экспорт данных в продукты Microsoft Office с помощью OLE интерфейсов
    • реализация концепции «persistent object» - сохранение и восстановление состояний экземпляров прикладных объектов на уровне абстрактного объекта, взаимодействующего с хранилищем данных
    • реализация "динамического полиморфизма" - на уровне API введена функция Cast, расширяющая семантику оператора AS. Данный способ был разработан для нейтрализации ограничений на множественное наследование в Delphi
  • разработано программное обеспечение для управления камерой зональной декомпрессии [C++]:
    • ПД регулятор разрежения в камере по заданному закону
    • формирование рекомендаций по индивидуализации воздействия и корректировки следующего воздействия по результатам проведения сеанса
    • ведение базы данных пациентов)
    • одновременно система обслуживает два лечебных места (MS DOS, DPMI32)
  • разработан блок подбора точек акупунктурного воздействия по энергетическому профилю, оцениваемому по наблюдаемой симптоматике [Delphi]

~1991 - ~1996

Техника: IBM-PC

Языки: C++

OS: MS Dos

Место работы: ведущий программист Республиканского центра диагностики и реабилитации репродуктивной функции человека

Задачи:

  • анализ текстовых документов с диагнозами и полуавтоматическое построение синтаксического дерева диагноза. Обеспечение анализа (выборка, построение стат. моделей) историй болезней из компьютерной базы (система CAIS, разработка Intercomputer). Построение компьютерного варианта назначения лечебных воздействий по формализованному диагнозу
  • компьютерная версия методики индивидуального назначения и корректировки режимов воздействия при реабилитационной терапии воспалительных заболеваний органов малого таза и брюшной полости локальным отрицательным давлением.
  • система автоматизации сбора информации во время медицинского эксперимента. Разработан язык описания конфигурации аппаратуры, логики проведения этапов эксперимента, описание измеряемой информации в соответствии с этапами эксперимента. С помощью LEX/YACC реализован синтаксический анализатор, а вся система построена как интерпретатор сценария эксперимента
  • система документирования операционного процесса при эндоскопии. Представляющие интерес для хирурга фрагменты видеоинформации (кадры) сохраняются в базе данных. Данные о пациентах (включая сохраненные видео-кадры) могут быть перенесены в архив, который ведется с помощью системы ARVID на видеокассетах.
  • развитие системы QST для демонстрации графических изображений и усложнения описания логики проведения опроса и оценки его результатов.
  • участие в разработке системы «Оценка инвестиционной привлекательности приватизируемых предприятий»: стат. анализ балансов (форма 2), построение модели и реализация на Clipper 5

~1987 - ~1993

Техника: ДВК-2, ИСКРА-1030, IBM-PC

Языки: активное освоение и использование «C»

Место работы: ведущий программист Республиканского центра диагностики и реабилитации репродуктивной функции человека

Задачи: (большинство разработок выполнялось в соавторстве с коллегой)

  • перевод и адаптация оконной библиотеки JPI MODULA на Turbo C
  • система регистрации R-R интервалов и проведения темпинг-теста: используя 4-е входных линии LPT (paper out и т.д.) и, разогнав таймер до разрешения 1 мс, была обеспечена возможность измерения временных интервалов на PC XT без дополнительной аппаратуры
  • система (QST) для автоматизации психологического тестирования основанного на бланковой методике (вопросы с фиксированными ответами)
  • система AISS как электронный помощник работника юридической консультации.
  • система управления камерой зональной декомпрессии (воздействие локальным отрицательным давлением на область малого таза в лечебных целях). Закон изменения давления задается в виде трапеции, текущее давление в камере измеряется датчиком и с помощью АЦП вводится в систему, определяется невязка и при выходе за границы коридора чувствительности выдается соответствующее управляющее воздействие на атмосферный и/или вакуумный клапаны. Работа с аппаратурой (ввод с АЦП и управление клапанами) выполняется в фоновом режиме, управляемым прерываниями таймера и АЦП. Оперативный режим занимается визуализацией (график заданного/текущего) и контролем ввода с клавиатуры.

~1980 - ~1989

Техника: ЕС-1020/1022, микро-ЭВМ Д3-28, С1-20, БК-0010, Роботрон-1715, ДВК-2

Языки: FORTRAN IV - PL/1 (ЕС), BASIC (несколько диалектов: Д3, С1, БК, ДВК), PASCAL (Роботрон, ДВК), мнемокоды Д3-28, ассемблер DEC (БК, ДВК)

Места работы: студент ДПИ, программист в Донецком НИИ Черных металлов, ст. инженер-программист НИИ Гигиены труда и профзаболеваний

Задачи:

  • многомерный статистический анализ экспериментальных данных (корреляционный, факторный, регрессионный, дискриминантный, анализ временных рядов)
    • для ЕС - готовые пакеты /FORTRAN/PL/
    • для Д3, С1, ДВК - собственные разработки /BASIC/FORTRAN/мнемокод Д3/
  • обработка данных результатов анкетирования: Роботрон /PASCAL/
  • фрагменты обучающих/контролирующих программ: БК /BASIC/
  • элементы сетевой поддержки: ДВК (сервер) - БК (раб. станции) /ассемблер/
  • сопряжение с аппаратурой:
    • Д3-28 <-> «устройство подготовки данных на перфоленте» для вывода печатной информации на CONSUL
    • Д3-28 <-> «ритмокардиосигнализатор РКС-01» для автоматизации ввода ритмограмм