Беларускі софт #10. ''Гедымін''

Здаецца, толькі ўчора быў красавік, калі ў "Кампутарных вестках" быў надрукаваны першы артыкул з цыкла "Беларускі софт". Але ж час пакрысе ідзе, і вось ужо дзесяты артыкул у нашай серыі. Вось гэтак, як не шкада, усё жыццё: час ідзе, а ты яго нават не заўважаеш. Для "юбілейнага" выпуску мне хацелася знайсці нейкую сапраўды цікавую і вялікую праграму, і, здаецца, такая знайшлася.

У сённяшнім выпуску "Беларускага софту" мы пагаворым пра распрацоўку менскай фірмы "Залатыя праграмы" (якая таксама мае назву "Golden Software of Belarus" - www.gsbelarus.com) пад назвай "Гедымін". Хачу прызнацца адразу: звярнуў на яе ўвагу спачатку менавіта таму, што спадабалася назва. Колькі б не ганарыліся суседзі літоўцы, што Гедзімінас - гэта іх князь, але ж мы, беларусы, ведаем, што гэты князь быў нашым, як і ўсё княства. Таму, як мне здаецца, "Гедымін" - вельмі добрая назва для беларускай праграмы. Тым больш, праграма вялікая і моцная.

Што ж такое гэты самы "Гедымін"? Уласна кажучы, тым, хто не з'яўляецца спецыялістам у галіне эканамічнага праграмнага забеспячэння, зразумець гэта часам даволі цяжка. Самі распрацоўшчыкі называюць "Гедымін" эканамічнай платформай, але ж за гэтымі словамі хаваецца даволі зручны сродак для распрацоўкі эканамічных прыкладанняў. Сапраўды, на айчынным рынку "Гедымін" - адзін з самых папулярных прадуктаў эканамічнага прызначэння. Мабыць, тут адыгрывае сваю ролю брэнд распрацоўшчыка: прынамсі адзін з прадуктаў Golden Software, праграма "Анжэліка", добра вядомы айчынным эканамістам.

Як гаворыцца на сайце Golden Software, ""Гедымін" - гэта праблемна-арыентаванае асяроддзе. Выкарыстоўваючы яго, распрацоўшчык канцэнтруе свае высілкі менавіта на рашэнні пастаўленай задачы, а не на стварэнні кода, які адсочвае рух мышы або кіруе размяшчэннем элементаў кіравання на экране, або што адказвае за нейкія складаныя пытанні запісу ў базу даных". Распрацоўка вядзецца ў тэрмінах бізнэс-класаў або, калі сказаць па іншым, класаў праблемна-арыентаваных бізнэс-сутнасцяў. Гэта дазваляе весці яе хутка і якасна, не паглыбляючыся ў тэхнічныя дэталі. Асноўныя элементы бізнэс-логікі "Гедыміну" - даведнік і дакумент. Што гэта такое, можна зразумець з кіраўніцтва для карыстальнікаў "Гедыміну".

Функцыянальнасць "Гедыміну" мае пад сабою трывалы фундамент у выглядзе сістэмы кіравання базай даных Interbase/Firebird/Yaffil (гэта ўсё, па вялікім рахунку, розныя мадыфікацыі СКБД Interbase). СКБД Interbase - сістэма, распрацаваная сусветна вядомаю амерыканскай карпарацыяй Borland Software Corporation, і таму яна карыстаецца вялікім попытам сярод айчынных і расейскіх распрацоўшчыкаў. Выкарыстанне Interbase дазваляе маштабаваць сістэму, створаную з ужываннем "Гедыміну": яе можна будзе размяшчаць як на лакальнай машыне, так і ў сетцы, пры гэтым не мае розніцы, лакальная гэтая сетка або глабальная. Пры гэтым, калі база даных будзе размеркаванаю (гэта значыць, яна будзе захоўвацца адначасова на некалькіх кампутарах), яе можна сінхранізаваць з дапамогаю прылады IBReplicator.

У "Гедымін" убудаваная гібкая сістэма правоў доступу, якая дазваляе настроіць правы на ўзроўні груповак карыстальнікаў. Потым, калі дадаць карыстальніка ў групу, ён аўтаматычна атрымае правы, прызначаныя ёй. Такая сістэма даволі натуральная для СКБД Interbase, таму не дзіўна, што Golden Software рэалізавалі менавіта яе. Правы можна размяркоўваць для табліц, асобных запісаў у базе даных ці палёў у табліцы.

Але ж не трэба думаць, што "Гедымін", моц якога абапіраецца на Interbase, не можа працаваць з данымі, якія не знаходзяцца ў базе даных спецыяльнага фармату. Дадзеныя ў "Гедымін" можна экспартаваць з фарматаў XML, TXT ці CSV, але ж для тэкставых файлаў таксама неабходна стварыць шаблон на спецыяльнай мове разметкі. У тыя ж фарматы можна экспартаваць даныя. Да таго ж выніковыя даныя (гэтак званыя справаздачы) можна экспартаваць у Word ці Excel.

Канешне ж, у працэсе распрацоўкі прыкладанняў з дапамогаю "Гедыміна" не абысціся без праграмавання. Для гэтых мэтаў у "Гедыміне" выкарыстоўваецца мова VBScript, простая і зручная.

Увогуле, гледзячы на магчымасці "Гедыміну", можна сказаць, што гэта айчынны аналаг Microsoft Visual FoxPro ці Microsoft Access, толькі з эканамічным ухілам. Але ж, як вядома, гэтыя прадукты карпарацыі "Майкрасофт" з ног да галавы камерцыйныя. "Гедымін" жа зусім бясплатны, і, нават, мае адчынены зыходны код. Так, канешне, было не заўсёды - open-source (што па-англійску і значыць "адчынены зыходны код") прадуктам "Гедымін" стаў толькі ў 2005 годзе. Як тады гаварылі самі распрацоўшчыкі, іх уразіў поспех Linux, Apache і Firebird, якія таксама з'яўляюцца open-source прадуктамі. Мабыць, менавіта гэты фактар і прывёў "Гедыміна" да поспеху.

Але ж... калі я спампаваў зыходны код гэтага праграмнага прадукту, то адчуў нейкае расчараванне. Не, нічога крымінальнага: код сапраўды прысутнічае, і для яго кампіляцыі (ператварэння ў exe-файл) трэба мець Delphi 5 вытворчасці ўсё таго ж Borland. Але на маёй версіі Standard "Гедымін" кампілявацца адмовіўся з-за таго, што ў ёй адсутнічаюць некаторыя неабходныя кампаненты. А вось у Delphi 7 Professional, якая таксама ў мяне ёсць, скампіляваць "Гедымін" нельга. Справа нават не ў адрозненнях моў праграмавання ў розных версіях кампілятара, а ў тым, што частка "Гедыміну", створаная не Golden Software, а іншымі распрацоўшчыкамі, прадстаўлена не ў выглядзе зыходных тэкстаў, а скампіляванымі модулямі. Як вядома, яны не сумяшчальныя паміж рознымі версіямі Delphi. Яшчэ адзін невялічкі камень у агарод распрацоўшчыкаў такі: каб скампіляваць "Гедымін", трэба мець лакальны дыск... z:. Альбо перапісваць канфігурацыйныя файлы праектаў, якіх вельмі шмат. Канешне, зрабіць дыск z: ня цяжка, і на сайце Golden Software ёсць падрабязная інструкцыя па кампіляцыі, у якой расказваецца, як гэта зрабіць. Але ж гэтыя недарэчнасці псуюць уражанні ад прадукту. І не паправіць іх нават тое, што зыходны код (прынамсі тая частка з амаль што мільёну радкоў, якую я паспеў крыху прагледзіць) напісаны сапраўды прафесійна.

Тым не менш, не гледзячы на такія недарэчнасці, можна сказаць, што "Гедымін" - прадукт выдатны. Адзіная на рынку СНД open-source сістэма распрацоўкі эканамічных прыкладанняў такога ўзроўню, "Гедымін" сапраўды дастойны сваёй назвы. Спадзяюся, распрацоўшчыкі не пакінуць працу над ім.

Нагадваю, што працягваецца прыём спасылак для публікацыі матэрыялаў у цыкле артыкулаў "Беларускі софт". Дасылайце іх мне на адрас dreamdrusch[@]tut.by альбо ў рэдакцыю газеты (kb[@]kv.by).

Вадзім СТАНКЕВІЧ
Кампутарныя Весткі