Popis
ImaginePopisTutorialNa stiahnutieLinkyPluginInternational

charakteristika

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

      setShape [setPenColour red filledCircle 50]

    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)


© 2002 AB, KVI
blaho@fmph.uniba.sk