“Дэманстрацыйны сэрвіс” з’яўляецца гатовым задзелам з адкрытым зыходным кодам для стварэння будучых сэрвісаў інтэрнэт-платформы для апрацоўкі тэксту і маўлення www.corpus.by. Таксама сэрвіс дэманструе магчымы прынцып працы будучых сэрвісаў, створаных на яго аснове. На ўваход дэманстрацыйнаму сэрвісу падаецца электронны тэкст, карыстальнік абірае любыя чэкбоксы, кнопку і опцыю, і пасля націскання кнопкі “Паказаць уведзены тэкст і абраныя наладкі” сэрвіс выводзіць фактычную інфармацыю аб тым, які тэкст быў уведзены і якія наладкі абраныя.
Асноўныя тэрміны і паняцці
Адкрытае праграмнае забеспячэнне (англ. open-source software) – праграмнае забеспячэнне з адкрытым зыходным кодам. Зыходны код такіх праграм даступны для прагляду, вывучэння і ўнясення змен, што дазваляе карыстальніку прымаць удзел у дапрацоўцы самой адкрытай праграмы, выкарыстоўваць код для стварэння новых праграм і выпраўлення ў іх памылак праз запазычанне зыходнага коду, калі гэта дазваляе сумяшчальнасць ліцэнзій, альбо праз вывучэнне выкарыстаных алгарытмаў, структур дадзеных, тэхналогій, методык і інтэрфейсаў (паколькі зыходны код можа сутнасна дапаўняць дакументацыю, а пры яе адсутнасці сам з’яўляецца дакументацыяй).
Адкрыты зыходны код (англ. open-source) – зыходны код, даступны для прагляду і ўнясення змен. Яго наяўнасць дазваляе выкарыстоўваць ужо створаны код для стварэння новых версій праграмы, для выпраўлення памылак і дапамогі ў дапрацоўцы адкрытай праграмы.
Закрыты зыходны код праграмы азначае, што распаўсюджваюцца толькі скампіляваныя версіі праграмы і ліцэнзія прадугледжвае адсутнасць доступу да зыходнага кода праграмы, што абцяжарвае стварэнне мадыфікацый праграмы. Доступ да зыходнага кода трэцім асобам звычайна падаецца пры падпісанні пагаднення аб невыдаванні.
Зыходны код – тэкст камп’ютарнай праграмы на якой-небудзь мове праграмавання або мове разметкі, які можа быць прачытаны чалавекам.
Практычная каштоўнасць
Дадзены сэрвіс пакліканы палегчыць распрацоўку будучых сэрвісаў платформы www.corpus.by, а менавіта – адкрыты зыходны код сэрвісу з’яўляецца гатовым задзелам-асновай для распрацоўкі новых сэрвісаў. Наяўнасць адкрытага зыходнага коду таксама спрашчае камунікацыі з распрацоўшчыкамі, паколькі з’яўляецца простай і канкрэтнай прапановай для далейшага супрацоўніцтва.
Таксама дэманстрацыя самога прынцыпу працы сэрвісаў дае магчымасць кожнаму карыстальніку даведацца больш аб працы платформы www.corpus.by і лепш зразумець агульныя прынцыпы пабудовы асобных сэрвісаў.
Апісанне інтэрфейсу карыстальніка
Графічны інтэрфейс сэрвісу прадстаўлены на малюнку 1.
Малюнак 1. Графічны інтэрфейс сэрвісу “Дэманстрацыйны сэрвіс”
Інтэрфейс змяшчае наступныя вобласці:
- вобласць уводу тэксту;
- выбар чэкбокса;
- выбар кнопкі-пераключальніка;
- выбар опцыі;
- спасылку на адкрыты зыходны код.
Карыстальніцкія сцэнары працы з сэрвісам
Сцэнар 1. Прагляд магчымага прынцыпу працы будучага сэрвісу
- Увесці ў поле ўводу электронны тэкст.
- Абраць любую колькасць чэкбоксаў альбо не абіраць ніякі.
- Абраць адну (любую) з кнопак-пераключальнікаў.
- Абраць адну (любую) з опцый.
- Націснуць “Паказаць уведзены тэкст і абраныя наладкі” і праглядзець вынік (малюнак 2).
Малюнак 2. Вынікі дэманстрацыі магчымага прынцыпу працы будучага сэрвісу
Сцэнар 2. Азнаямленне і праца з адкрытым зыходным кодам
- Націснуць спасылку на адкрыты зыходны код, якая размяшчаецца ўнізе старонкі сэрвісу. Пачнецца спампоўка zip-архіва пад назвай “corpusby_2019-08-05.zip”.
- Адкрыць спампаваны архіў, азнаёміцца са змешчанымі ў ім файламі (малюнкі 3, 4).
- Пачаць распрацоўку новага сэрвісу на аснове зыходнага коду.
Малюнак 3. Змест zip-архіву “corpus1by_2017-02-07.zip”
Малюнак 4. Змест тэчкі “ServiceDemonstrator” zip-архіву “corpus1by_2017-02-07.zip”
Доступ да сэрвіса праз API
Для доступу да “Дэманстрацыйнага сэрвіса” праз API, неабходна адправіць AJAX-запыт тыпу POST на адрас https://corpus.by/ServiceDemonstrator/api.php. Праз масіў data перадаюцца наступныя параметры:
- text — адвольны ўваходны тэкст.
- checkbox1, checkbox2, checkbox3 — маркеры актыўнасці чэкбоксаў; прымаюць значэнні “0” і “1”.
- mode — маркер актыўнай радыёкнопкі; прымае значэнні “radiobutton1”, “radiobutton2”, “radiobutton3”.
- selector — маркер абранага пункта ў выпадаючым меню; прымае значэнні “option1”, “option2”, “option3”.
Прыклад AJAX-запыту:
$.ajax({
type: “POST”,
url: “https://corpus.by/ServiceDemonstrator/api.php”,
data:{
“text”: “Груша цвіла апошні год.”,
“checkbox1”: 0,
“checkbox2”: 1,
“checkbox3”: 1,
“mode”: “radiobutton2“,
“selector”: “option1“
},
success: function(msg){ },
error: function() { }
});
Сервер верне JSON-масіў з уваходным тэкстам (параметр text) і вынікам (параметр result). Напрыклад, па вышэй прыведзеным AJAX-запыце будзе сфарміраваны наступны адказ:
[
{
“text”: “Груша цвіла апошні год.”,
“result”: “<b>Карыстальнік увёў наступны тэкст:</b><br>
Груша цвіла апошні год.<br><br>
<b>Карыстальнік абраў наступныя наладкі:</b><br>чэкбокс #2 — Карыстальнік абраў чэкбокс #2<br>
чэкбокс #3 — Карыстальнік абраў чэкбокс #3<br>
кнопка-пераключальнік #2 — Карыстальнік абраў кнопка-пераключальнік #2<br>
опцыя #1 — Карыстальнік абраў опцыя #1<br>“
}
]
Спасылкі на крыніцы
Старонка сэрвісу: https://corpus.by/ServiceDemonstrator/?lang=be