Vznikol v roku 2001 a je nepriamy nasledovník
Comenius Loga.
Je to kompletne objektový jazyk, ktorý
je riadený udalosťami. Podporuje paralné
programovanie a tiež má prepracovanú ideu
obrázkových tvarov korytnačiek. Má
niektoré nové prvky, ktoré sú
typické pre programy pod Windows, napr. prekrývajúce
sa grafické plochy (ako listy papiera), tlačidlá
aj s obrázkami, posuvné lišty, texty,
lišty tlačidiel a pod. Nechýbajú ani multimédia
, internet a tiež vzájomná spolupráca
Imagine-programov v sieti.
Imagine a objekty
Objektovo orientované programovanie (OOP)
sa v posledných rokoch sa stáva veľmi
populárne. Mnoho začínajúcich
programátorov sníva o možnosti naučiť
sa pracovať "objektovo". My samozrejme
vieme, že tento štýl programovania je oveľa
náročnejší a pre začiatočníka
skoro nezvládnuteľný. Napriek tomu
Imagine ponúka objektový pohľad: skoro
všetko s čím študenti v Logu pracujú
- korytnačky, grafická plocha, tlačidlá,
... sú v skutočnosti objekty, t.j. inštancie
nejakých preddefinovaných tried so
stavovými premennými a metódami.
Našťastie je toto celé navrhnuté
tak, aby sa dali objekty pred študentmi úplne
zamlčať a títo sa učili podľa klasických
metód vyučovania programovania. Objektový
pohľad môžu študenti postupne objavovať až
v pokročilejších etapách učenia sa
a môžu si takto postupne zvykať na iný
štýl programátorského myslenia.
Nakoľko jazyk Logo je v svojej podstate interpretačný
jazyk, tak aj filozofia objektov má mierne
odchýlky, napr. od objektov v Delphi alebo
C++: triedy aj inštancie môžeme dynamicky
počas behu programu meniť, dopĺňať, môžeme
vytvárať inštancie nielen od tried ale aj
od iných inštancií, môžeme vytvárať
klony (klonovať objekty). Vďaka koncepcii správania
(behavior), môžeme objektom priraďovať aj
správanie z iných objektov - hovoríme,
že okrem statickej hierarchie objektov možno vytvárať
aj dynamickú hierarchiu - Imagine používa
viacnásobné dynamické dedenie.
Imagine a udalosti
Koncepcia objektov si vynútila jednu zásadnejšiu
zmenu oproti CL: podobne ako iné programovacie
prostredia pod Windows (VB, Delphi, C++Builder a
pod.) programovanie je riadené udalosťami.
Toto znamená, že nepíšeme nejaký
veľký súvislý program, ktorý
sa sústreďuje na riešenie všetkých
možných situácií, ale píšeme
veľa malých, niekedy len jedno-príkazových
podprogramov, ktoré sa automaticky vyvolávajú
pri vzniku rôznych udalostí. Napr.
kliknutie myšou, ťahanie, kolízia s iným
objektom a pod. Pre rôzne objekty a ich udalosti
definujeme rôzne podprogramy. Zrejme spôsob
práca s myšou a klávesnicou sa bude
oproti CL dosť líšiť.
Imagine a paralelizmus
V istom zmysle paralelizmus vyplýva z
toho, že programy sú riadené udalosťami
- tieto udalosti vyvolávajú rôzne
podprogramy, ktoré ale bežia paralelne. Okrem
toho môžeme spúšťať ďalšie príkazy
pomocou rôznych paralelných konštrukcií,
napr. forever, launch, every a podobne. Imagine
podporuje paralelné nezávislé
procesy.
Imagine a korytnačky
"Hlavným hrdinom" prostredia
Logo je pravdepodobne objekt korytnačka. Okrem toho,
že kreslí do grafickej plochy, alebo sa len
po nej pohybuje, môže sa jej meniť tvar. Korytnačka
sa môže "prezliekať" do rôznych
obrázkov a ak sú tieto obrázky
animované (napr. animovaný GIF), tak
sa automaticky v ploche animujú. Tieto obrázkové
tvary nemusia byť korytnačkám priradené
len zo súborov, ale môžu byť nakreslené
logovským programom, napr. príkazom
korytnačka zmení tvar na červený
kruh.
Na prípravu obrázkov, najmä
pre tvary korytnačiek, slúži pre Imagine
veľmi dôvtipný bitmapový editor
LogoMotion. Tento pomáha vytvárať
aj efektné animácie.
Korytnačka kreslí do grafickej plochy.
Grafická plocha, na rozdiel od CL, nemusí
byť jediná, ale programátor môže
svoj projekt rozdeliť na stránky (page) a
každá stránka (to je vlastne grafická
plocha) môže v sebe obsahovať niekoľko menších
grafických listov (pane). Aj v týchto
menších listoch, ktoré sa môžu
vzájomne prekrývať, sa pohybujú
a kreslia korytnačky.
Imagine ponúka viacero stratégii,
podľa ktorých sa chovajú objekty -
korytnačky, keď narazia na okraj svojej plochy.
Imagine a multimédiá
Imagine podporuje mnoho multimediálnych
formátov pre zvuky, melódie a videá.
Ak je v počítači inštalovaná hlasová
aplikácia (voice engine), tak v projektoch
môžeme využívať hlasový vstup
aj výstup. Vďaka tomu aj začiatočník
zvládne naučiť korytnačku poslúchať
slovné povely zadávané cez
mikrofón.
Imagine a Internet
Internet sa pomaly stáva samozrejmou súčasťou
každého osobného počítača a
preto aj Imagine podporuje prácu s Internetom:
umožňuje zobrazovanie stránok nielen z Internetu
ale aj z html - súborov. Aby niekoľko aplikácií
Imagine, ktoré súčasne bežia na rôznych
počítačoch, mohli navzájom komunikovať,
v hierarchii tried jazyka nájdeme objekt
Sieť. Tento umožňuje nadviazať spojenie a posielať
nielen správy ale aj inštrukcie prípadne
aj skupiny hotových objektov.
Zaujímavou novinkou je možnosť publikovať
svoje projekty na Webe: pomocou Imagine plug-in
môžeme v interenet-prehliadači spúšťať
hotové projekty zo siete.
Imagine...
Autori si dali cieľ vytvoriť moderné programovacie
prostredie, v ktorom sa bude vedieť pohybovať a
využívať ho nielen skúsený
používateľ ale aj začiatočník, napr.
žiak základnej školy. Používateľa
iste poteší, že prostredie má v sebe
integrovaný jednoduchý editor pozadia
grafickej plochy, ktorý je funkčný
aj vtedy, keď sa po ploche "preháňajú
korytnačky", resp. niečo sa na ploche mení
bežiacimi procesmi.
Skúsenejší používateľ môže
objaviť, že skoro celé prostredie Imagine
je popísané samotným Logom
(napr. lišty tlačidiel, kontextové menu a
pod.) a teda je možné ho preprogramovať.
Pre akých používateľov vlastne Imagine
vznikol?
Prvou skupinou sú žiaci a študenti, ktorí
dostávajú moderné programovacie
prostredie a majú možnosť sa veľmi elegantne
zoznámiť aj s netriviálnymi pojmami
programovania. Imagine sa ale dá použiť nielen
ako prostriedok na výučbu programovania,
ale aj na vytváranie multimediálnych
prezentácií: môžeme vytvoriť
projekt zložený z viacerých stránok,
na každej stránke sa okrem textov, obrázkov
a zvukov môžu pohybovať aj animované
objekty.
Ďalšou skupinou sú tvorcovia edukačného
softvéru pre všetky vekové skupiny.
Samozrejme, že sem môžu patriť nielen šikovnejší
študenti, ale aj učitelia.
Ďalšou skupinou používateľov sa stanú
pravdepodobne používatelia takéhoto
edukačného softvéru: od detí
predškolského veku, cez žiakov a študentov,
ktorí budú používať tieto programy
na rôznych vyučovacích hodinách,
až po učiteľov, ktorí možno využijú
predvádzacie alebo simulačné programy
pri vysvetľovaní učiva.
Minimálne hardvérové nároky
sú približne Pentium II 300, pamäť
aspoň 32 MB (lepšie 64 MB)
|