Ў гэтым аглядзе хаця бы проста для кругагляду разгледзім дзве вольныя спецыялізаваныя праграмы для прафесійнай дзейнасці ў вобласці медыцыны і хіміі. А большую частку агляду прысвецім легендзе UNIX - рэдактару Vim, які працягвае ўдасканальвацца і абнаўляцца.
Relax 3.0 для аналізу ЯМР-спектраскапіі
Ў большасці выпадкаў мы ў нашых аглядах разглядаем прыклады вольнага ПЗ агульнага прызначэння для шырокага круга карыстачоў. І, трэба сказаць, увесь праграмны шырспажыў - браўзары, плэеры, глядзелкі, чыталкі, архіватары і таму падобнае - на ўсіх тыпах аперацыйных сістэм галоўным чынам прадстаўлены ці вольным ПЗ ці ж праграмамі, якія актыўна выкарыстоўваюць opensource бібліятэкі. Але ёсць прыклады і спецыялізаванага вольнага ПЗ для вузкага прафесійнага ўжывання. Прадставім пару прыкладаў такога спецыфічнага праграмнага забеспячэння, новыя версіі якга выйшлі ў апошні час. Натуральна, даць адзнаку гэтым праграмам могуць толькі спецыялісты, таму мы ў аглядзе абмяжуемся афіцыйнай інфармацыяй з сайтаў гэтых праектаў.
У першыя дні жніўня апублікавана версія Relax 3.0 - праграмы прызначанай для вывучэння і аналізу эксперыментальных дадзеных, якія атрымліваюцца ў выніку спектраскапіі ядзернага магнітнага рэзанансу (ЯМР) рэчываў. ЯМР - гэта эфект рэзананснага паглынання ці выпраменьвання электрамагнітнай энергіі атамамі ў вонкавым магнітным полі, які залежыць ад хімічнай архітэктуры рэчыва. Адны і тыя ж ядры атамаў у розных малекулах маюць розныя ўзроўні сігналаў ЯМР, што дазваляе рабіць розныя тыпы даследаванняў. ЯМР-спектраскапія ў апошні час актыўна выкарыстоўваецца ў медыцыне і фармакалогіі для вывучэння бялкоў.
Малекулярная структура бялкоў з'яўляецца складанай, і адпаведна патрабуюцца эфектыўныя методыкі апрацоўкі вынікаў спектраскапіі. Адгэтуль і паходзіць неабходнасць у ПЗ, якое валодае сучаснымі алгарытмамі апрацоўкі дадзеных эксперыментальных назіранняў. Праграма Relax, якая распрацоўваецца з 2005-га году сіламі супольнасці спецыялістаў ЯМР-спектраскапіі, прапануе разнастайныя методыкі аналізу арганікі, бялкоў, РНК, ДНК, цукра і іншых біямалекул. Эфектыўнасць алгарытмаў Relax вызначаць прафесіяналы гэтай вобласці, а мы адзначым асноўныя тэхнічныя бакі Relax.
Праграма напісана на Python з выкарыстаннем модуляў NumPy, SciPy, wxPython. Мае два інтэрфейсу: рэжым інтэрактыўнага каманднага радка ў стылі Python і графічны інтэрфейс. Relax з'яўляецца крос-платформным прыкладаннем і працуе на Windows, Linux, MacOSX. Памер гатовага да працы архіва складае каля 60 мегабайт.
Медыцынская дакументацыя ў GNUmed
Наступны прыклад вузкаспецыялізаванага ПЗ - прыкладанне GNUmed, якое прызначана для працы медыцынскай установы. Гэта EMR-сістэма электронных медыцынскіх запісаў, прызначаная для замены папяровай медыцынскай дакументацыі - гісторый хвароб і іншых дадзеных па пацыентах. Праграма можа выкарыстоўвацца пры любой рэгістрацыі стану здароўя пацыента ў межах адной практыкі.
GNUmed з'яўляецца ПЗ з адкрытым кодам і распаўсюджваецца зусім бязвыплатна. Але, трэба сказаць, што існуюць альтэрнатыўныя і таксама вольныя аналогі GNUmed - гэта, напрыклад, комплекс медыцынскіх прыкладанняў FreeMedForms, а таксама прыкладанне для вядзення медыцынскай дакументацыі OpenEMR. Перавагі той ці іншай сістэмы медыцынскай дакументацыі - гэта асобная тэма, а мы адзначым тэхнічныя асаблівасці GNUmed.
GNUmed мае кліент-серверную архітэктуру. Прыкладанне створана з карыстаннем Python, серверная частка выкарыстоўвае СКБД PostgreSQL. Апошняя версія сервера - 18.8, а кліент у жніўні абнавіўся да версіі 1.3.8. Прыкладанне крос-платформное, падтрымліваюцца Windows, MacOS і ўсе асноўныя дыстрыбутывы Linux. На сайце праграмы можна запампаваць адмысловую выяву LiveCD. Праграма перакладзена на мноства моў.
Сціплае абаянне Vim
Vim - як шмат у гэтым гуку для сэрца юніксоіда злілося! Пасля трох гадоў распрацоўкі апублікавана новая версія гэтага тэкставага рэдактара - Vim 7.4. Самая ж першая версія Vim з'явілася яшчэ напачатку 90-х гадоў мінулага стагоддзя. А рэдактар Vi, лагічным працягам якога з'яўляецца Vim (VI Improved - палепшаны VI), быў створаны аж у 70-х гадах Білам Джоем.
За гэтыя дзесяцігоддзі Vim аброс вялікай колькасцю легенд, міфаў і анекдотаў. Ён даўно ператварыўся ў культурны і гістарычны знак UNIX. І ў той жа самы час будзе зусім не правільна лічыць, што выхад Vim 4.7 - гэта ўсяго толькі нагода для настальгіі пра былыя часы. Гэты кансольны тэкставы рэдактар не збіраецца ператварацца ў старажытны экспанат з музея кампутарных тэхналогій. Vim па-ранейшаму знаходзіць як сваіх прыхільнікаў, так і сваіх ненавіснікаў. Таму з выйсцем Vim 4.7 варта спыніцца не гэтулькі на навінах гэтай версіі рэдактара, колькі адзначыць тыя яго асаблівасці ў цэлым, якія ўжо не адзін дзясятак гадоў прыцягваюць да яго новых і новых карыстачоў.
Vim - гэта значна больш, чым тэкставы рэдактар. Правільней было б яго зваць асяроддзем распрацоўкі. Таму зразумела незадаволенасць тых, хто спрабуе выкарыстоўваць Vim як альтэрнатыву прыкладанням тыпу Notepad, каб, напрыклад, скапіяваць тэкст з браўзара і выдаліць тым самым фарматаванне. Нават для рэдагавання файлаў канфігурацыі ў кансолі ў Linux-дыстрыбутывах цяпер прапануецца выкарыстоўваць болей простыя праграмы nano ці pico. Vim - гэта ў першую чаргу стварэнне і рэдагаванне праграмнага кода, файлаў LaTeX, XML, тэхнічнай дакументацыі. Яго нават палюбілі некаторыя вэб-дызайнеры.
Іншымі словамі, першапачатковая лёгкасць засваення праграмы і інтуітыўная зразумеласць - гэта не пра Vim. У гэтым рэдактары, калі запусціць яго першы раз у жыцці, нельга адразу пачаць працаваць. Калі распачыналы карыстач яшчэ сяк-так зможа гэты рэдактар адкрыць, тое выйсці з яго ў некаторых атрымліваецца хіба што толькі пры дапамозе міліцыі.
Vim валодае сваім унікальным спосабам працы з тэкстам, які адных прыцягвае, а іншых раздражняе і расчароўвае. Адна з галоўных асаблівасцяў рэдактара - розныя рэжымы працы з тэкстам, якія трэба перамыкаць уручную. У першым звычайным рэжыме, які ўключаецца адразу пасля запуску рэдактара, Vim успрымае кожны націск на клавішу як каманду, што дазваляе хутка перамяшчацца па файле і ажыццяўляць рэдагаванне. Ёсць рэжым уводу каманд, які чымсьці падобны, напрыклад, на інтэрактыўны ўвод каманд у "Бейсіку" ў старажытных кампутарах ZX-Spectrum. Для непасрэднага ўводу тэксту існуе асобны рэжым, аналагічны большасці "звычайных" рэдактараў.
На першы погляд такая старарэжымная арганізацыя працы з тэкстам - гэта атавізм, пакінуты нам у спадчыну ад старых тэрміналаў і мэйнфремов. На самой жа справе рэжымы працы з Vim могуць быць значна эфектыўней, чым звыклыя прыёмы працы з тэкстам.
Для прыкладу возьмем аперацыю змены месцамі двух знакаў у слове. Каб памяняць месцамі дзве літары ў звычайным рэдактары, трэба зрабіць наступныя рухі цела:
Shift-Стрэлка направа
Ctrl-x
Стрэлка налева
Ctrl-v
У Vi гэта робіцца ў стандартным рэжыме дзвюма клавішамі:
x p
Да ўсяго гэтага варта дадаць уменне Vim разбіваць экран кансолі на вокны для кожнага файла, падтрымку табаў, праверку арфаграфіі, магутную функцыя undo, пазнакі ў тэксце файла, магчымасць уводу доўгіх радкоў з дапамогай абрэвіятур.
Паступовае вывучэнне такіх вось фішак Vim, часта вельмі мудрагелістых, і прывязвае шматлікіх карыстачоў менавіта да гэтага рэдактара. Прычым працэс вывучэння і адкрыцця тонкасцяў працы прыкладання - сам па сабе цікавы, тым больш што і дакументацыі і мануалаў для працы з рэдактарам Vim у Сетцы існуе звышдастаткова.
Важнай асаблівасцю Vim, якая робіць яго дагэтуль папулярным рэдактарам, трэба назваць убудовы, якія пашыраюць функцыянал браўзара. У цэлым удалая рэалізацыя плагіннай сістэмы ў любым прыкладанні робіць праграму папулярнай. Vim з ліку такіх прыкладанняў.
Для Vim існуе велізарная колькасць убудоў, як карысных, так і не асоба патрэбных. У гэтым стаўленні рэдактар падобны на браўзар Firefox. На бягучы момант убудоў для гэтага рэдактара напісана ўжо некалькі тысяч. Менавіта з дапамогай гэтых убудоў Vim, што займае некалькі мегабайт у сістэме, ператвараецца ў магутную IDE. Пашырэнні дазваляюць распрацоўніку ў Vim эфектыўней ажыццяўляць навігацыю па кодзе і файлам праектаў, працаваць з каментарамі, сніппетамі і таму падобным.
З убудовамі злучана адно з асноўных новаўвядзенняў у Vim 7.4. У рэдактары для напісання пашырэнняў актыўна выкарыстоўваецца Python, і ў новай версіі дададзены новыя функцыі для пашыранай падтрымкі гэтай мовы праграмавання.
Таксама ў версіі з'явіўся новы рухавічок рэгулярных выразаў. Яго асаблівасцю з'яўляецца больш высокая прадукцыйнасць пры выкарыстанні складаных "рэгэкспаў" ці пошуку па аб'ёмным тэксце. Пры гэтым стары рухавічок рэгулярных выразаў таксама застанецца ў рэдактары, і распрацоўнікі збіраюцца ўкараніць нейкі эўрыстычны аналізатар, які будзе выбіраць той рухавічок, які хутчэй адпрацуе пэўны рэгулярны выраз.
Напрыканцы нагадаем, што Vim хоць і выхадзец са свету UNIX, але ёсць версіі і для Windows, і MacOS. Прычым існуюць не толькі кансольныя варыянты, але і мадыфікацыі для выкарыстання ў графічным аконным інтэрфейсе.
Міхаіл АСТАПЧЫК
![Версия для печати Версия для печати](https://www.kv.by/sites/all/modules/print/icons/print_icon.png)
Горячие темы