Vývojové prostředí XOJO
XOJO je profesionální vývojové prostředí. Studium programu, vývoj
aplikace, to všechno můžeme provádět zdarma. Pokud potřebujeme aplikaci
zkompilovat, aby běžela mimo vývojové prostředí, musíme si koupit roční
licenci. Stránky výrobce jsou na
www.xojo.com, kde si lze stáhnout
toto prostředí pro různé operační systémy (stáhnul jsem pro Windows a
Linux) a pro psaní aplikací pro různé cílové platformy, vč. desktopů macOS,
Windows, Linux/Raspberry Pi a také pro mobilní zařízení ...
Domnívám se, že by na mých stránkách nemělo vývojové
prostředí Xojo chybět.
Kreslení
aplikace
Kreslení uživatelského rozhraní provádíme na desktopu,
který vypadá takto:

| Spuštěná
aplikace Naše první cvičná aplikace je
spuštěná v plovoucím wokně (Floating Window), jsou zakázaná tlačítka
Close Button, Maximize, Minimize, Full-screen Button - viz obrázek
nahoře.
Zdrojový kód, který se ukládá jako soubor v binárním
tvaru, lze stáhnout zde.
Tentýž soubor jsem vyzkoušel otevřít v prostředí pro Windows i v
prostředí Xojo pro Linux. Lze to, program šel v obou prostředích
spustit a choval se korektně. Program slouží
pro demonstraci tzv. metod. Když klikneme myší na jeden z oválů, volá
se odpovídající metoda. Ta provede příkazy, tj. obarví příslušný ovál
odpovídající barvou (červená, žlutá zelená) a zbývající dva ovály
barvou šedou. Metoda Zelena je volána také po otevření okna. Po
spuštění nám na semaforu svítí zelená. V
programu jsou také použity proceduary a funkce pro obsluhu některých
událostí (kliknutí myši, vstup myši na objekt (mění se kurzor na
ručičku), opuštění objektu (mění s kurzor na systémový ukazatel).
Program se zavírá kliknutím na Label1 s textem
"Zavři". |

|
| Příklad
psaní události
Příklad je na obrázku vpravo. Klikneme např. na
objekt Label1 a přidáme novou událost. Na obrázku je vložen kód, který
se vykoná při události MouseExit. Všimněte si, že se provedou dva
příkazy:
1. text Label1 se obarví na červeno
2. kurzor myši se změní na standardní
Syntaxe je odlišná od syntaxe Visual Basicu i
Gambasu. Lze se ji naučit. Existuje také manuál
(přes 80 MB, přes 2000 stran). Doporučuji stáhnout ze stránek výrobce
a také jsem
uložil staženou verzi zde.
|

|
| Všechny
objekty třídy Window, se všemi objekty (Label1, Oval1, Oval2, Oval3) i
všechny metody se vkládají ve stromečkovém menu (je vpravo na
obrazovce). Viz obrázek vpravo.
Vlastní deklarace odpovídajících procedur a funkcí
však nevidíme, jako v Gambasu nebo Visual Basicu. To mi dělalo
zpočátku problém, než jsem si zvykl. Pokud si listing vytiskneme,
vidíme také hlavičky procedur, např.:

|
 |
|
|
| Při kliknutí
myši je volána nikoliv procedura, ale tzv. funkce Function MouseDown
() s parametry v závorce - viz vpravo. Funkce přebírá hodnoty o poloze
kurzoru a volá metodu Zelena (v uvedenem příkladě).
Metoda Zelena je obyčejná procedura, při které se
vykonají tři příkazy - viz obrázek nad tímto textem.
Příklad psaní metody, pro změnu Cervena je tady:

|
 |
Listing programu
(vytištěný do pdf) je ke
stažení zde. Na třech stránkách vidíme všechny metody i
události.
Základní výhody prostředí Xojo:1. U
placené verze lze zkompilovat tentýž zdrojový kód do balíčku pro
macOS, do balíčku pro Linux, do spustitelného souboru pro Windows, viz
obrázek dole:

|
2. Vývojové
prostředí obsahuje nejen hezké komponenty (controls), ale hlavně též
užitečné. Např. pro komunikaci mezi aplikacemi, pro TCP/IP komunikaci
mezi počítači v síti, pro komunikaci s mikropočítačem přes sériový
port, pro ftp a http servery.
Podobné komponenty jsem našel v Gambasu, ale v tom si napíšu jen
aplikaci pro Linux. Můj Visual Basic Express 2008 má v Toolboxu
komponentu pro sériový port, nikoliv TCP Socket, ale je jednoduchý, přehledný a dobrý.
Bohužel, na konci své životnosti, s možnostmi kompilace exe souboru
pro dřívější verze frameworku NET.
Stáhnul jsem si Visual Studio 2017 Community (poslední edice) a byl
jsem zklamán, že v Toolboxu jsem neviděl komponenty Socketů pro TCP/IP
a UDP komunikaci. Asi Microsoft rozhodl, že to samostatní vývojáři -
vidláci (amatéři) nepotřebují. Zda jsou Sockety v placené verzi, to
opravdu netuším. Nepátral jsem, protože Visual Studio 2017 je
neskutečný "Ramlware" s haldou balastu, pro mě nepotřebných nástrojů.
Je pro mě dost nepřehledný. Ale asi vše půjde řešit pomocí:
Imports System.Net
Imports
System.Net.Sockets
a očekávám oser s tím, jak to programátoři mysleli ...
Překvapilo mě, jak veliké množství (to jsou
gigabajty) všeho možného se neskutečnou dobu z Internetu u Visual
Studia 2017 stahovalo. U Xojo stahujeme jediný exe soubor, má však
také kolem 700 MByte.
Proto se mi zdá, že volbu nového prostředku na
vidlácké programování vyhraje nakonec Xojo. Prostě nemám čas ležet na
diskuzních fórech. A Xojo, i když je pro mě jiné a nové, je i
přiměřeně pochopitelné a malé aplikace, které tvořím, mi jdou od ruky.
3. Učit se kódu, psát a ladit vlastní aplikace, to všechno lze i v
neplacených verzích a zdrojový kód projektu je pravděpodobně
přenositelný mezi prostředím pro různé platformy.
4. Prostředí umožňuje vytvářet aplikace pro Raspberry Pi 2 a 3. To se
při konstrukci přístrojů v amatérské praxi může hodit.
5. V další lekci
byl do tohoto prográmku přidán tzv. IPCSocket. Pomocí
něho lze řídit rozvěcování světel našeho semaforu z jiné aplikace
(nazval jsem ji Řídítka). |

Komponenty pro komunikaci mezi aplikacemi, pro
TCP/IP komunikaci mezi počítači v síti, pro komunikaci s
mikropočítačem přes sériový port, pro ftp a http servery (obrázek
nahoře).
Jiná sada (Pickers, Inputs, Decorations) je
vpravo.
|
 |
|
| |
|
|