11.07.2015 Views

Prenos vízií do reality bolí. - Vitajte na stránkach www.einsty ...

Prenos vízií do reality bolí. - Vitajte na stránkach www.einsty ...

Prenos vízií do reality bolí. - Vitajte na stránkach www.einsty ...

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

S E R V I SPoslednou metó<strong>do</strong>u deklarovanou rozhraním TreeModel je valueForPathChanged(),ktorá je volaná pri kadej zmene hodnoty uzla.Urèite vás poteší, e opä existuje konkrét<strong>na</strong> implementácia tohto rozhrania snázvom DefaultTreeModel, ktorej inštancie sú pri vytváraní stromov pouívané <strong>na</strong>j−èastejšie. Dá sa teda predpoklada, e si pri tvorbe aplikácií vystaèíte s touto trie<strong>do</strong>uaj vy.UZLY STROMU. Kadý uzol stromu je reprezentovaný ako objekt triedy imple−mentujúcej rozhranie TreeNode. Toto rozhranie deklaruje metódy, <strong>na</strong> ktoré sú ma−pované volania metód dátového modelu TreeModel. Jednotlivé metódy tu nebude−me rozobera, pokia¾ by vás zaujímali, pozrite si <strong>do</strong>kumentáciu k API. RozhranieMutableTreeNode rozširuje rozhranie TreeNode o metódy umoòujúce zmenu hod−noty uzla. Jeho metódami sa tu tie nebudeme zaobera, pretoe trie<strong>do</strong>u, ktorá nászaujíma, je DefaultMutableTreeNode. Táto trieda implementuje spomí<strong>na</strong>né rozhraniaa pridáva ïalšie uitoèné metódy <strong>na</strong> prácu s uzlom (<strong>na</strong>pr. <strong>na</strong> získavanie informáciío súrodeneckých uzloch a pod.). Táto trieda umoòuje zapuzdrenie pouívate¾ské−ho objektu, ktorý má by pridruený k danému uzlu, èo je práve to, èo potrebuje−me. Jednoduchým spôsobom môete preto tvori akéko¾vek zloité hierarchie, pri−pája a o<strong>do</strong>bera uzly. Jeden z týchto uzlov vopred vyberieme ako koreòový a po−tom môeme tento uzol <strong>na</strong>stavi ako koreòový v dátovom modeli stromu. Pred−pokladám, e teórie u máte viac ne <strong>do</strong>s, preto uvádzam <strong>na</strong>sledujúci príklad, kto−rý je obmenou toho predchádzajúceho s pouitím dátového modelu (uvádzam ibametódu init()):public void init() {DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");DefaultMutableTreeNode ff = new DefaultMutableTreeNode("Fab Four");DefaultMutableTreeNode child = new DefaultMutableTreeNode("Paul");ff.add(child);child = new DefaultMutableTreeNode("John");ff.add(child);child = new DefaultMutableTreeNode("George");ff.add(child);child = new DefaultMutableTreeNode("Ringo");ff.add(child);root.add(ff);child = new DefaultMutableTreeNode("Help!");root.add(child);child = new DefaultMutableTreeNode("Revolver");root.add(child);child = new DefaultMutableTreeNode("Abbey road");root.add(child);child = new DefaultMutableTreeNode("Let it be");root.add(child);DefaultTreeModel model = new DefaultTreeModel(root);JTree tree = new JTree(model);tree.setRootVisible(true);getContentPane().add(tree);}Výsle<strong>do</strong>k bude rov<strong>na</strong>ký ako v predchádzajúcom príklade.V tomto príklade je <strong>na</strong>jprv vytvorený koreòový uzol identifikovaný ako root.Potom je vytvorený uzol "Fab Four", ku ktorému sú následne pridané ïalšie štyriuzly. Následne je uzol "Fab Four" pridaný ako dcérsky uzol koreòového uzla. K tomusú potom pridané ešte ïalšie štyri dcérske uzly, ktoré sú listami.Reazce uvedené v konštruktoroch predstavujú zapuzdrené pouívate¾ské hod−noty, pridruené k daným uzlom. Na získanie týchto pouívate¾ských objektov (vtomto prípade reazcov) slúi metóda getUserObject(), ktorú definuje trieda Default−MutableTreeNode. Tá <strong>do</strong>káe, samozrejme, zapuzdri akýko¾vek objekt, nielen rea−zec. Text vypísaný pri konkrétnom uzle je získaný metó<strong>do</strong>u toString() zapuzdrenéhopouívate¾ského objektu, take môete jednoducho <strong>do</strong> stromu vklada akéko¾vekobjekty a ich textovú reprezentáciu riadi prekrytím tejto metódy. Pridrui objektuzlu je moné buï o<strong>do</strong>vzdaním odkazu <strong>na</strong>ò konštruktoru triedy DefaultMutable−TreeNode, alebo pomocou metódy setUserObject(), definovanej v tejto triede.Po vytvorení hierarchie uzlov je vytvorený dátový model DefaultTreeModel, ktoré−mu je pomocou konštruktora o<strong>do</strong>vzdaný odkaz <strong>na</strong> koreòový uzol tejto hierarchie.Potom sa u len vytvorí poh¾ad <strong>na</strong> tento dátový model, ktorý je reprezentovanývizuálnym komponentom JTree, prièom dátový model je o<strong>do</strong>vzdaný jeho konštruk−toru. Pridaním tohto komponentu <strong>do</strong> kontajnera appletu sa celý proces konèí.ZÁVER. Tentoraz sme sa venovali komponentom JTable a JTree a ich dátovýmmodelom, prièom šlo o poh¾ad <strong>na</strong>ozaj len z rýchlika, hlavne èo sa týka komponen−tu JTree. Komplexnos týchto komponentov mi neumoòuje venova sa im tu <strong>do</strong>håbky, preto vám len odporúèam preštu<strong>do</strong>va API špecifikácie, prípadne knihuProfessio<strong>na</strong>l Java Programming od Bretta Spella, vydanú vo Wrox Press, ktorá vyšlaaj v èeskom preklade pod názvom Java – programujeme profesionálnì. V nej sa mô−ete <strong>do</strong>zvedie <strong>na</strong>ozaj ve¾a o týchto dvoch komponentoch.V <strong>na</strong>sledujúcej èasti sa ešte trošku vrátime, pretoe sa budeme venova udalost−nému modelu komponentu JTree. Dovtedy <strong>do</strong>videnia.Andrej ChuHardvér pod lupou6. èas: Ve¾kokapacitné mechanikyVýraz ve¾kokapacitné médium je relatívny. Môeme tvrdi, e v súèasnosti nie je <strong>na</strong> trhu nija−ké cenovo <strong>do</strong>stupné a kapacitne vyhovujúce prenosné médium. Vodu trošku zamútil cenovýpokles mechaník DVD, ktoré sú ove¾a efektívnejšou monosou archivácie. Opä však stojímepri závanej otázke <strong>na</strong>hrávania vlastných dát <strong>na</strong> DVD! Zapisovacie mechaniky sa <strong>na</strong> trh <strong>do</strong>sta−li prednedávnom, a preto aj ich ce<strong>na</strong> je pomerne vysoká. A tak sa nájde len malé percentotých, ktorí vyuívajú túto „revoluènú“ technológiu <strong>na</strong>plno. Nezúfajte! Svetlou stránkou archi−vácie dát je neuverite¾ný pokles cien kapacitne trošku menších mechaník CD−RW, ktoré sa udávno stali benou súèasou novej PC zostavy. Aj keï nie som kompetentná osoba, ktorá bymohla hovori o ïalšom vývoji, aj tak vám prezentujem môj subjektívny názor: Je takmer isté,e onedlho sa CD−ROM mechaniky úplne prestanú vyrába. Tým sa zvýši <strong>do</strong>pyt po „<strong>na</strong>pa−¾ovaèkách“, ktorých ceny <strong>do</strong>siahnu historické minimum. Technológia a miniaturizácia pokroèiatak,e onedlho budeme uvádza nové štandardy s novými úctyhodnými kapacitami. Po istejfuturistickej vízii vidím poèítaè ako biologickú, ivú štruktúru, kde kvapka geneticky uprave−ného roztoku bude nosite¾om nepredstavite¾nej kapacity dát... Skonèím radšej so „snívaním“a vrátim sa <strong>do</strong> skutoèného ivota s reálnymi mechanicko−elektrickými èasami.CD−ROM. Po nástupe magnetického záz<strong>na</strong>mu a zistení, e je ne<strong>do</strong>staèujúci z h¾adiska kapa−city, prístupovej <strong>do</strong>by a spo¾ahlivosti, sa <strong>na</strong> trhu urèenom pre „bených smrte¾níkov“ èoskoroobjavili produkty prv vyvíjané <strong>na</strong> vojenské úèely. Komerène boli pomenované ako CD−ROM(Compact Disk – ROM = Pamä iba <strong>na</strong> èítanie). Táto revoluèná technológia <strong>do</strong>kázala uloi450−krát viac dát <strong>na</strong> CD ako <strong>na</strong> disketu. Pritom médium CD malo len o èosi väèší priemer (dis−keta 8,5 cm a CD 12 cm). Takisto bola ohromujúca prenosová rýchlos, ale aj spo¾ahlivos.Rýchlos <strong>do</strong>sahovala „neuveri−te¾ných“ 150 KB/s. Jednotky sin−gle speed mali základ postave−ný <strong>na</strong> 170 KB/s. Novšie jednotkyu vyuívali násobok základnejhodnoty a rýchlos sa zaèalaoz<strong>na</strong>èova ako násobok základ−nej prenosovej rýchlosti vynáso−benej oz<strong>na</strong>èením CD−ROM. Akopríklad uvedieme CD−ROM 52×−> 150 × 52 = 7800 KB/s. Sa−mozrejme, túto hodnotu nemô−Obr. 1eme bra úplne váne, pretoemeranie rýchlosti sa vykonávalov ideálnych laboratórnych podmienkach, ktoré sa od skutoèných líšia nielen v kvalite médií rôz−nych z<strong>na</strong>èiek... Samozrejme, aj pri CD−ROM sa stretávame s pojmom prístupová <strong>do</strong>ba, od ktorejzávisí celková rýchlos zariadenia. Pri CD−ROM je prístupová <strong>do</strong>ba minimálne desakrát väèšia akopri pevných diskoch. Dôvo<strong>do</strong>m je vplyv zotrvaènosti, zmeny rýchlosti CD a aj èas potrebný <strong>na</strong> pre−súvanie èítacej hlavy. Aby sme správne pochopili, ako CD−ROM funguje, musíme si opä uvieszopár nových pojmov.Nosiè CD môe by vytvorený dvoma základnými metódami. Lisovanie sa vyuíva hlavnepri sériovej produkcii CD. V skratke ide o výlisok <strong>na</strong> polykarbonátový povrch, ktorý je násled−ne potiahnutý tenkou vrstvou reflexného hliníka. Z h¾adiska fyzickej realizácie dátovej stopyide o jamky so šírkou 0,5 mikró−nu (pit). Tie sú špirálovo uspo−riadané od stredu CD nosièa. Sní−manie sa vykonáva dió<strong>do</strong>vým la−serom s krátkou vlnovou dåkou(790 nm). Laser je upevnený <strong>na</strong>èítacej hlave, ktorá sa pohybujeod stredu CD k jeho okrajoma <strong>na</strong>opak. Obrázok znázoròujecelý èinný mechanizmus CD−ROM bez elektroniky. Hlavaspolu s optikou dió<strong>do</strong>vého lase−ra (1) sa pohybuje po ko¾ajniè−kách (3). Bod (2) si opíšeme pri Obr. 2jedinej monej oprave CD−ROM.Celý princíp èítania je jednoduchý. Hlava sa presunie po ko¾ajnièkách <strong>na</strong> poa<strong>do</strong>vanú stoputak, aby potrebné dáta boli priamo <strong>na</strong>d optikou lasera. V prípade, ak lúè lasera <strong>na</strong>razí <strong>na</strong>jamku, lúè sa rozptýli a nevráti sa <strong>do</strong> fotoelektrického snímaèa. Ak lúè <strong>na</strong>razí <strong>na</strong> hliníkovúfóliu, odrazí sa priamo <strong>do</strong> fotoelektrického prvku, èím sa zaz<strong>na</strong>mená opaèný stav. Urèite sivšetci teraz myslíte, e nosite¾om informácie je stav fotoelektrického snímaèa. Para<strong>do</strong>xom je,e nosièom informácie nie je ani jeden z dvoch stavov, ale zme<strong>na</strong> stavu. Môeme si tedazadefinova normálny stav CD, kde <strong>do</strong>chádza k permanentnej pravidelnej zmene. Take ibaodchýlku od tohto stavu elektronika vyhodnotí ako stav log 1. Organizácia uloených dát sazakladá <strong>na</strong> tom, e rovnomerné striedanie jamiek a rovných plôch je interpretované ako séria7/2003 PC REVUE 125

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!