PB138/Cvičení/1

Z FI WIKI
(Přesměrováno z PB138cv/Cv1)
Přejít na: navigace, hledání

Organizace

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.

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

Tools in Software Development

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

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.