PB138/Cvičení/1
Z FI WIKI
(Přesměrováno z PB138cv/Cv1)
Obsah
Organizace
- Slajd na IS
- Hlavní informace na PB138cv
- Kontrola docházky na PB138/Docházka do cvičení
XML
- jak zaznačit formu v textu?
- řídící kóda či makra (pro aplikaci) - specifické kódování
- obecné značky (tag), které aplikace sdílí - obecné kódování -> více možností
- různé postupy, na jejich základě vzniklo SGML (standardizovaný zobecněný značkovací jazyk)
- dokumenty strukturované, složené z mnoha zdrojů, pevně definovaná struktura pomocí gramatiky DTD (document type definition)
- XML - SGML je silná a obecná technologie, ale příliš obecná a složitá. XML je specializací SGML.
- různé postupy, na jejich základě vzniklo SGML (standardizovaný zobecněný značkovací jazyk)
XML = metajazyk = jazyk, pro vytvoření značkovacího jazyka.
- Struktuře dané DTD (u XML existují i jiné definice struktury) přidělí význam. Takovou aplikací SGML je například HTML (<p> znamená začátek odstavce...), podobně jako XHTML, XSLT nebo DocBook je aplikací XML.
<?xml version="1.0" encoding="ISO-8859-2"?> <zprava adresat="paja" autor="jaja"> <nadpis>Ahoj Pájo</nadpis> <obsah>Tak jsem ti přinesl od souseda pana obchodníka Krkovičky tu klobásu.</obsah> </zprava>
Nástroje pro vývoj softwaru
Nástroje
JEdit
- - programátorský editor, nainstalovaný na Win i pod unixem (po použití module add jedit). Možno použít jakýkoli editor, kde se vám dobře pracuje...
XMLmind
- WYSIWYG editor pro práci s XML (a jeho specializace Docbook...). Nepíšete samotnou strukturu, ale jen vybíráte entity, elementy dokumentu, které chcete přidat (kapitoly, nadpisy,...). Editor umožňuje otevřít jakýkoli soubor a prohlédnout si hierarchickou strukturu vnořených značek tvořících dokument. Nainstalován na *nix (module add xmlmind), tak na win.
- na stránkách i překlad do češtiny jako addon
Xerces
- jeden z existujících parserů (nástroj, zpřístupňující XML programovacímu jazyku). Nainstalován na linuxu. V MZJ budeme používat spouštěč validujícího parseru přítomný v JDK (viz IS). Způsob zpřístupnění:
- SAX - sekvenční procházení souboru způsobuje události (nalezení úvodní, koncové značky...) - bezkontextové, méně náročné
- DOM - soubor je načten, je vytvořen hierarchický stromový model ( - document object model) - náročnější, lepší skládání dokumentů...
Ant
- buildovací utilita pro Javu - Makefile pro Javu
- Inicializační soubor v XML.
- Multiplatformní, zdarma, obsáhlá dokumentace... (podrobněji v dalších cvičeních).
- ukázkový soubor build.xml
- ukázkový java soubor Main.java
Maven
- Nástroj pro práci s projektem. Jeho buildování, generování dokumentace, vytváření reportů, webových stránek (portál projektu)... (maven jar, maven site:generate, maven site:deploy...)
- instalováno na linuxu (module add maven)
- pracovat s ním budeme při řešení projektu
- na stránkách volně k dispozici popis instalace
- příklad project descriptoru (.pom) zde
- vyhledávání závislostí http://mvnrepository.com/
Subversion
- Nástroj pro správu verzí (podobné jako CVS, lepší při verzování adresářů, přejmenovávání, vracení se do minulosti) Kniha o SVN
- pro více lidí pracujících na tomtéž projektu (kontrola nekonzistencí)
- centrální datový sklad, repository
- přístup - jednoduché příkazy:
testovací repozitory: https://kore.fi.muni.cz:5443/repos/test/
svn import [adresář projektu] [cesta k repository] -m "[textová poznámka/popisek k tomuto importu]"
- uloží do repository zadaný adresář.
svn checkout [cesta k repository] [adresář projektu]
- "vytáhne" z adresáře aktuální verze souborů.
svn diff [cesta k repository] [adresář projektu]
- porovná vaši kopii a kopii v repository.
svn commit
- řekneme repository, že náš aktuální stav je v pořádku a je možno s ním počítat (tj. upravujeme repository o naše změny).
svn update
- chceme upravit svou lokální verzi o změny v repository.