LinuxovΘ noviny | 06/98 | ||
| |||
A toto je m∙j favorit - GRASP neboli Graphical Representations of Algorithms, Structures and Processes. Nejednß se o ╛ßdnΘho v²vojß°skΘho obra, ale naopak o docela ·hledn² editor, kter² svou funkci pro programovßnφ projekt∙ o n∞kolika souborech a pßr stech °ßdcφch plnφ na v²bornou. Osobn∞ ho pou╛φvßm asi 1 rok a jsem nad╣en. SouΦasnß verze je 6.2.7 pro Unix (29. dubna 1998) a 6.2.8 pro Win95/NT (25. b°ezna 1998). Program je napsßn pro X Window za pou╛itφ Motif 1.1.2. Pochopiteln∞ auto°i nezapomφnajφ ani na ty co nemajφ Motif a program lze stßhnout na adrese http://www.eng.auburn.edu/department/cse/research/grasp/ jako staticky slinkovanΘ binßrky. GRASP je p°ipraven pro jazyky Ada 95, C, C++, Java a VHDL. GRASP je integrovßn do GNU rodiny kompilßtor∙ pro Adu, C a SunovskΘho javac pro Javu (dle informacφ na Webu). Jako prvnφ se p°i spu╣t∞nφ objevφ okno obsahujφcφ soubory projektu, pokud ╛ßdn² projekt nemßte tak logo programu. Zde se lze rozhodnout jestli si zalo╛φte nov² projekt nebo si prost∞ jen tak zeditujete n∞jak² ten soubor. Tato mo╛nost mi tak trochu chybφ u Source Navigßtoru, kter² p°edpoklßdß, ╛e pokud n∞kdo n∞co chce, musφ si nejd°φve vytvo°it projekt. Pro svΘ internφ informace si GRASP vytvß°φ soubor v adresß°i, ve kterΘm se nachßzejφ editovanΘ soubory. Pak u╛ staΦφ jen vybrat jazyk, ve kterΘm bude vßmi editovan² soubor, nebo p°φmo vybrat soubor v souborech za°azen²ch do projektu, a objevφ se vlastnφ editor. Editor podporuje v╣echny obvyklΘ funkce (tedy obarvovßnφ klφΦov²ch slov, zarovnßvßnφ, spou╣t∞nφ make, run programu atd.), ale hlavn∞ CSD. A to je ten d∙vod proΦ o GRASPu pφ╣i. CSD - Control Structure Diagram je nßdhernß v∞c, kterou m∙╛ete vid∞t na p°ilo╛enΘm obrßzku. Ano, to jsou ty "Φßry", kterΘ nßm krßsn∞ zp°ehled≥ujφ zdrojov² k≤d. Na prvnφ pohled je ihned patrnΘ kdy a kam se vracφte, kde je jak² cyklus, if nebo n∞co jinΘho. SouΦßstφ znaΦenφ textu m∙╛e tΘ╛ b²t mo╛nost Φφslovßnφ °ßdk∙.
![]() Co se mi takΘ lφbφ je, ╛e pokud ud∞lßte chybu (nap°. zapomenete st°ednφk), tak vßs program taktn∞ upozornφ, ╛e s takov²m k≤dem CSD prost∞ neud∞lß (mßte-li tedy CSD v celΘm souboru v po°ßdku, je pravd∞podobnΘ, ╛e i zßkladnφ syntaxe k≤du je OK). O p°φpadn²ch chybßch GRASP informuje programßtora v okn∞ vzkaz∙. Dal╣φ zajφmavou vlastnostφ GRASPu je expanze maker. To znamenß, ╛e editor makra ukrytß v souborech includovan²ch do editovanΘho souboru pro vlastnφ kontrolu expanduje (ale na obrazovce a v souboru vßm pochopiteln∞ z∙stane to co jste napsali). Tak nap°. pokud bude soubor.h a v n∞m makro AHOJ a my toto makro budeme pou╛φvat v souborech .c, bude GRASP kontrolovat jak toto makro "zapadß" do soubor∙ .c. Pokud tedy bude v makru AHOJ chyba, budeme na tuto skuteΦnost upozorn∞ni. GRASP tedy pou╛itΘ AHOJ nebere jen jako text, ale jako opravdovΘ makro. Lze nastavit, z jak²ch #include soubor∙ bude expanze probφhat (lze zahrnout i /usr/include). V GRASPu si m∙╛ete takΘ definovat vlastnφ ╣ablony. Jß jsem to nap°φklad pou╛φval p°i psanφ program∙ pou╛φvajφcφch knihovnu mSQL, kdy se mi necht∞lo psßt po°ßd ty ╣φlenΘ nßzvy funkcφ. Jen staΦilo nadefinovat funkce nebo i cykly (a ostatn∞ cokoliv) do souboru se ╣ablonami, a v menu editoru se v╣e objevilo. Pak pokud chcete n∞co z toho co jste nadefinovali, jen zamy╣ujete do tohoto menu a text ukryt² pod touto polo╛kou je GRASPem napsßn. Na dal╣φm obrßzku je toto menu se ╣ablonami dodan²mi s programem to celΘ sv∞tle modrΘ (...takΘ Φtete Φernobφl² v²tisk?) okΘnko.
![]() Mezi dal╣φ p°φjemnosti pat°φ barevn² tisk do PostScriptu, kdy na v²tisku je pochopiteln∞ mo╛nΘ mφt i CSD (to by mohlo b²t u╛iteΦnΘ pro v╣echny tv∙rce literatury o programovanφ (u╛ vidφm ty krßsnΘ a p°ehlednΘ p°φruΦky a ne ten ╣ed² chaos, na kterΘm oΦi umdlΘvajφ - ale vra╗me se z oblßΦku na zem...)).
Nov∞ je v GRASPu interface pro grep, ale to si u╛ asi ka╛d²
p°edstavφ sßm. A dobrß zprßva na konec, v dal╣φ verzi mß b²t podpora
Tcl a Perlu, a tak si p°ijdou na svΘ i nekompilovanci...
|