Proudy, Zpracovсnэ XML. Radek Koэ

Rozměr: px
Začít zobrazení ze stránky:

Download "Proudy, Zpracovсnэ XML. Radek Koэ"

Transkript

1 Seminс Java Proudy, Zpracovсnэ XML Radek Koэ Fakulta informanэch technologiэ VUT Bezen 2008 Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 1/ 38

2 Obsah Vstup/Vstup koncepce proud soubory, adresсe binсrnэ proudy (tэdy InputStream, OutputStream) znakovщ proudy (tэdy Reader, Writer) filtrovanщ proudy standardnэ vstup a vstup Komprimace Serializace Zpracovсnэ XML dokument Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 2/ 38

3 Koncepce i/o operacэ Balэky java.io zсkladnэ knihovna pro prсci s proudy java.nio alternativnэ knihovna od verze 1.4+ (new IO) I/O operace zaloeny na i/o proudech transparentnэ platformov nezсvislщ Datov proud libovoln datov zdroj i cэl schopn zpэstupnit/pijmout libovolnщ datovщ bloky reprezentovсn objektem ukrvсnэ detail (skutenщ akce se skutenm i/o zaэzenэm) Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 3/ 38

4 Koncepce i/o operacэ Proudy jako stavebnice kadс tэda reprezentuje jeden typ proudu (definuje jeho vlastnosti operace) novщ vlastnosti se dajэ zэskat vklсdсnэm objekt (proud) do sebe... is = new InputStream(...); bis = new BufferedInputStream(is);... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 4/ 38

5 Prсce se soubory Tэda java.io.file obaluje fyzickщ soubory (adresсe, linky) na disku speciality systщm soubor (transparentnэ odli enэ) char File.separatorChar ( / nebo \ ) String File.separator char File.pathSeparatorChar ( : nebo ; ) String File.pathSeparator System.getProperty("user.dir") adresс uivatele s jeho UID byl spu tn proces JVM soubor (adresс) je reprezentovсn v objektu abstraktnэm pathname pi pэstupu k zaэzenэ se konvertuje na systщmov zavislщ jmщno vytvoenэm instance tэdy File se k zaэzenэ nepistupuje! Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 5/ 38

6 Tэda File Kostruktory File(String pathname) vytvoэ instanci File konvertovсnэm etzce pathname na abstraktnэ pathname File(String parent, String child) vytvoэ instanci File z etzce parent a etzce child File(File parent, String child) vytvoэ instanci File z abstraktnэho pathname objektu parent pathname a etzce child File(URI uri) vytvoэ instanci File konvertovсnэm danщho file:uri na abstraktnэ pathname Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 6/ 38

7 Tэda File Testovacэ operace boolean exists() boolean isfile() boolean isdirectory() boolean canread() boolean canwrite()... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 7/ 38

8 Tэda File Vytvoenэ souboru (adresсe) boolean createnewfile() vytvoэ nov prсzdn soubor podle abstraktnэho pathname; vracэ true, pokud se oprace zdaэ boolean mkdir() vytvoэ adresс... boolean mkdirs() jako boolean mkdir(), vytvсэ i adresсovou strukturu, pokud je poteba... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 8/ 38

9 Tэda File Vytvoenэ doasnщho (temporary) souboru static File createtempfile(string prefix, String suffix) vytvoэ doasn soubor ve standardnэm adresсi static File createtempfile(string prefix, String suffix, File directory) vytvoэ doasn soubor v uvedenщm adresсi Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 9/ 38

10 Tэda File Dal э vlastnosti boolean delete() boolean renameto(file dest) long length() long lastmodified() String getname() String getpath() String getabsolutepath() String getparent()... V echny vlastnosti a operace viz API documentation Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 10/ 38

11 Ukсzka prсce s adresсi File String[] list() vracэ pole etzc reprezentujэcэch jmщna soubor a adresс v adresсi danщm abstraktnэm pathname String[] list(filenamefilter filter) vracэ pole etzc reprezentujэcэch jmщna soubor a adresс v adresсi danщm abstraktnэm pathname, kterщ odpovэdajэ filtru Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 11/ 38

12 Ukсzka prсce s adresсi File File[] listfiles() vracэ pole abstraktnэch pathname reprezentujэcэch soubory a adresсe v adresсi danщm abstraktnэm pathname File[] listfiles(filefilter filter) vracэ pole abstraktnэch pathname reprezentujэcэch soubory a adresсe v adresсi danщm abstraktnэm pathname, kterщ odpovэdajэ filtru File[] listfiles(filenamefilter filter) vracэ pole abstraktnэch pathname reprezentujэcэch soubory a adresсe v adresсi danщm abstraktnэm pathname, kterщ odpovэdajэ filtru Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 12/ 38

13 Ukсzka prсce s adresсi Rozhranэ FilenameFilter definuje jednu metodu boolean accept(file dir, String name) test, zda uveden soubor by ml bt obsaen v seznamu Rozhranэ FileFilter definuje jednu metodu boolean accept(file pathname) test, zda uveden abstraktnэ pathname by ml bt obsaen v seznamu Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 13/ 38

14 Ukсzka prсce s adresсi File cesta = new File("."); String[] seznam; seznam = cesta.list(new FilenameFilter() { public boolean accept(file adr, String cesta) { String soubor = new File(cesta).getName(); return soubor.indexof("x")!= -1; } }); } for(string name : seznam) { System.out.println(name); } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 14/ 38

15 Binсrnэ proudy Vstupnэ (odvozeny od abstraktnэ tэdy InputStream) pole byt soubor String roura... Vstupnэ (odvozeny od abstraktnэ tэdy OutputStream) pole byt soubor... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 15/ 38

16 Vstupnэ binсrnэ proudy Operace void close() uzave proud, uvolnэ zdroje abstract int read() te byte, pokud nelze, vracэ -1 int read(byte[] b) te b.length byt int read(byte[] b, int off, int len) te len byt z proudu od pozice off long skip(long n) peskoэ n byt void mark(int readlimit) poznaэ aktuсlnэ pozici (readlimit je poet byt, kterщ lze peэst, ne se znaka stane nevalidnэ) void reset() obnovenэ pozice uchovanщ pi volсnэ mark() boolean marksupported() Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 16/ 38

17 Vstupnэ binсrnэ proudy Odvozenщ od FilterInputStream InputStream java.io.bufferedinputstream proud s vyrovnсvacэ pamtэ java.util.zip.checkedinputstream proud s kontrolnэm soutem javax.crypto.cipherinputstream proud de ifrujэcэ data java.io.datainputstream proud s metodami pro tenэ hodnot primitivnэch datovch typ... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 17/ 38

18 Vstupnэ binсrnэ proudy analogicky k vstupnэm InputStream OutputStream... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 18/ 38

19 Ukсzka public static void main(string[] args) { try { FileOutputStream fos = new FileOutputStream("t.tmp"); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeint(12345); oos.writeobject("today"); oos.writeobject(new Date()); oos.close();... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 19/ 38

20 Ukсzka FileInputStream fis = new FileInputStream("t.tmp"); ObjectInputStream ois = new ObjectInputStream(fis); int i = ois.readint(); String today = (String) ois.readobject(); Date date = (Date) ois.readobject(); ois.close(); System.out.println(i + today + date); } } catch (Exception ex) { ex.printstacktrace(); } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 20/ 38

21 Znakovщ proudy Vstupnэ (odvozeny od abstraktnэ tэdy Reader) BufferedReader PipedReader InputStreamReader FileReader InputStreamReader... Vstupnэ (odvozeny od abstraktnэ tэdy Writer) BufferedReader PipedWriter InputStreamWriter FileWriter InputStreamWriter... Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 21/ 38

22 Konverze mezi proudy Z binсrnэho proudu (vstupnэ/vstupnэ) lze vytvoit proud znakov (vstupnэ/vstupnэ) // vytvoэme binсrnэ vstupnэ proud InputStream is =... // z is vytvoэme znakov proud (pro // dekѓdovсnэ se pouzije std. znakovс sada) Reader isr = new InputStreamReader(is); // znakovщ sady jsou v balэku java.nio Charset chrs = java.nio.charset.forname("iso "); // z is vytvoэme znakov proud (pro // dekѓdovсnэ se pouzije jinс znakovс sada) Reader isr2 = new InputStreamReader(is, chrs); Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 22/ 38

23 Standardnэ vstup a vstup Ve tэd java.lang.system static InputStream in static PrintStream out static PrintStream err Zmna standardnэch proud setin(inputstream in) setout(printstream out) seterr(printstream err) Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 23/ 38

24 Pэklad tenэ ze std. vstupu public class ReadIn { public static void main(string[] args) { try { BufferedReader in = new BufferedReader( new InputStreamReader(System.in)); } } String line; while((line = in.readline()).length()!= 0) { System.out.println(line); } } catch(ioexception ioe) { ioe.printstacktrace(system.err); } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 24/ 38

25 Komprimace Package java.util.zip BufferedReader in = new BufferedReader( new FileReader(args[0])); BufferedOutputStream out = new BufferedOutputStream(new GZIPOutputStream( new FileOutputStream(args[1]))); int b; while((b = in.read())!= -1) out.write(b); in.close(); out.close(); Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 25/ 38

26 Serializace objekt Serializace perzistence objekt zэskсnэ reprezentace objektu jako sekvence byt uloenэ reprezentace do souboru Deserializace rekonstrukce serializovanщho objektu Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 26/ 38

27 Serializace objekt Serializovan objekt musэ implementovat rozhranэ java.io.serializable nemс сdnщ metody, slouэ pouze pro identifikaci serializovatelnщho objektu v echny podэdy tэdy, kterс implementuje toto rozhranэ, jsou takщ serializovatelnщ promnnщ objektu, kterщ nemajэ bt serializovсny, musэ bt oznaeny modifikсtorem transient pokud je pi (de)serializace nutnщ speciсlnэ chovсnэ, musэ objekt definovat tyto metody private void readobject(objectinputstream is) private void writeobject(objectoutputstream os) viz API pro java.io.serializable Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 27/ 38

28 Serializace objekt pэklad class Clovek implements Serializable { String jmeno; protected Clovek() { } public Clovek(String jmeno) { this.jmeno = jmeno; } public String info() { return jmeno; } } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 28/ 38

29 Serializace objekt pэklad private static final String soubor = "clovek.dat"; public static void serializuj(clovek p) throws Exception { FileOutputStream fos = new FileOutputStream(soubor); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeobject(p); fos.close(); } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 29/ 38

30 Serializace objekt pэklad public static Clovek deserializuj() throws Exception { FileInputStream fis = new FileInputStream(soubor); ObjectInputStream ois = new ObjectInputStream(fis); Clovek p = (Clovek)ois.readObject(); fis.close(); return p; } Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 30/ 38

31 Prсce s XML XML je standard konsorcia W3C jak vytvсet znakovacэ jazyky ideov vychсzэ ze zhruba o deset let mlad эho standardu SGML (Structure Generalized Markup Language). XML nenэ jeden konkrщtnэ znakovacэ jazyk je to specifikace urujэcэ, jak majэ vypadat znakovacэ jazyky je to metajazyk konceptuсln jde o zjednodu enэ SGML standardu, aby se usnadnila prсce tvrcm parser (analyzсtor) a aplikacэ se zсkladnэm standardem њzce souvisejэ dal э, nap. XML Namespaces, XInclude, XML Base. spolen s dal эmi standardy (XSLT, XSL-FO, XHTML, CSS...) tvoэ rodinu standard XML. Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 31/ 38

32 Struktura XML dokumentu Logickс Fyzickс dokument se lenэ na elementy (jedna z nich je koenovс), atributy element, textovщ uzly v elementech, intrukce pro zpracovсnэ, notace, komentсe dokument je reprezentovсn stromem element jeden logick dokument me bt uloen ve vэce fyzickch jednotkсch (entitсch); vdy alespo v jednщ document entity. <!ENTITY kap1 SYSTEM "kapitola1.xml"> <!ENTITY swn "Softwarovщ noviny"> Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 32/ 38

33 Zpracovсnэ XML dokumentu Hlavnэ typy rozhranэ pro zpracovсnэ XML dat: Stromov orientovanс rozhranэ (Tree-based API) Rozhranэ zaloenс na udсlostech (Event-based API) Rozhranэ zaloenс na vytahovсnэ udсlostэ/prvk z dokumentu (Pull API) Implementace pro Javu parsery souсst JAXP (Java API for XML Processing) nezсvislщ nap. Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 33/ 38

34 Tree-based API Mapujэ XML dokument na stromovou strukturu v pamti dovolujэ libovoln prochсzet vznikl strom; nejznсmj э je Document Object Model (DOM) konsorcia W3C, viz Modely specifickщ pro konkrщtnэ prostedэ pro Javu: JDOM pro Javu: dom4j pro Python: 4Suite Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 34/ 38

35 Event-based API Pi analze dokumentu generujэ udсlosti (podle toho, kde se nachсzejэ) zpracovсvajэcэ aplikace implementuje obsluhu tchto udсlostэ (pomocэ metod callback) udсlostmi эzenс rozhranэ jsou ni э њrovn ne stromovс (pro aplikaci zstсvс vэce prсce ) jsou њspornj э na pam (i as), samotnс analza nevytvсэ trvalщ objekty Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 35/ 38

36 Event-based API Udсlost je... zaсtek a konec dokumentu (start document, end document) komentс (comment) odkaz na entitu (entity reference)... Nejznсmj эm rozhranэm je SAX (http://www.saxproject.org) Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 36/ 38

37 Event-based API Ukazka <?xml version="1.0"?> <doc> <para>hello, world!</para> </doc> Sled udalosti: start document start element: doc {seznam atributu: prazdny} start element: para {seznam atributu: prazdny} characters: Hello, world! end element: para end element: doc end document Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 37/ 38

38 Zdroje informacэ World Wide Web Consortium (W3C) XML Startkabel (EN/NL): aktuality, odkazy Soubor tutoriсl a on-line referencэ v mnoha jazycэch O Reilly XML.COM: lсnky, tutoriсly atd. na vysokщ technickщ њrovni Free XML Software (L. M. Garshol): kolekce odkaz na nekomernэ XML software Kolekce odkaz na obecn XML software (i komernэ) J. Kosek: Radek Koэ Seminс Java Proudy, Zpracovсnэ XML 38/ 38

Seminář Java VI p.1/33

Seminář Java VI p.1/33 Seminář Java VI Seminář Java VI p.1/33 Rekapitulace Úvod do kontejnerů - kategorie Iterátory Rozhraní List Rozhraní Set Rozhraní Map Volba implementace Nástroje Souběžný přístup Seminář Java VI p.2/33

Více

6. PRÁCE S DATOVÝMI PROUDY

6. PRÁCE S DATOVÝMI PROUDY 6. PRÁCE S DATOVÝMI PROUDY Balík java.io obsahuje třídy, které slouží pro zpracování datových výstupů a vstupů. Pro obvyklou práci se soubory zde můžeme najít třídy File a RandomAccessFile. Většina tříd

Více

14. Vstupy a výstupy v Javě

14. Vstupy a výstupy v Javě 14. Vstupy a výstupy v Javě Koncepce I/O proudů v Javě, skládání (obalování vlastnostmi) Práce se soubory a adresáři, třída File Binární proudy, třídy InputStream, OutputStream Znakové proudy, třídy Reader,

Více

InputStream. FilterInputStream

InputStream. FilterInputStream 6. Vstupy a výstupy Pro práci se vstupy a výstupy nám Java poskytuje celou řadu tříd a jejich metod. Jsou uloženy v balíku java.io. Tato knihovna je založena na mechanizmu tzv. vstupních a výstupních proudů

Více

Práce se soubory v Javě

Práce se soubory v Javě Práce se soubory v Javě Cílem kapitoly je naučit pracovat se soubory a adresáři v Javě. Na jednoduchých příkladech ukázat procházení adresáře, čtení z textového souboru a zápis do textového souboru. Klíčové

Více

1. Téma 12 - Textové soubory a výjimky

1. Téma 12 - Textové soubory a výjimky 1. Téma 12 - Textové soubory a výjimky Cíl látky Procvičit práci se soubory s využitím výjimek. 1.1. Úvod Program, aby byl programem, my mít nějaké výstupy a vstupy. Velmi častým případem je to, že se

Více

Programování v Javě I. Leden 2008

Programování v Javě I. Leden 2008 Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory

Více

Programování v Javě I. Únor 2009

Programování v Javě I. Únor 2009 Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory

Více

Java a XML. 10/26/09 1/7 Java a XML

Java a XML. 10/26/09 1/7 Java a XML Java a XML Java i XML jsou přenositelné V javě existuje podpora pro práci s XML, nejčastější akce prováděné při zpracování XML: načítání XML elementů generování nových elementů nebo úprava starého zápis

Více

Teoretické minimum z PJV

Teoretické minimum z PJV Teoretické minimum z PJV Pozn.: následující text popisuje vlastnosti jazyka Java zjednodušeně pouze pro potřeby výuky. Třída Zavádí se v programu deklarací třídy což je část programu od klíčových slov

Více

Java a Caché IV: Manipulace s objekty

Java a Caché IV: Manipulace s objekty 1 z 6 11.1.2007 11:13 přihlašovací jméno heslo Registrace Přihlásit články odkazy aktuality CZJUG konference o portálu přidejte se o nás Vyhledávání Text: najdi Oborový filtr J2ME J2SE J2EE Enterprise

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

Principy objektově orientovaného programování

Principy objektově orientovaného programování Principy objektově orientovaného programování Třídy a objekty doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz C E T

Více

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Aplikace tříd souvisejících s přenosem dat mezi operační pamětí a diskem Marek Jelínek

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Aplikace tříd souvisejících s přenosem dat mezi operační pamětí a diskem Marek Jelínek UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Aplikace tříd souvisejících s přenosem dat mezi operační pamětí a diskem Marek Jelínek Bakalářská práce 2013 Prohlášení autora Prohlašuji, že

Více

Java a národní prostředí

Java a národní prostředí Java a národní prostředí RICHARD LIPKA 25.4.2016 Nastavení národního prostředí Vstup a výstup speciálních znaků, zpracování řetězců (velká písmena, řazení) Formátování výstupu (čísla, datum, měna) Oddělení

Více

NIO. Aplikační programování v Javě (BI-APJ) - 12 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha

NIO. Aplikační programování v Javě (BI-APJ) - 12 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha NIO Aplikační programování v Javě (BI-APJ) - 12 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Více

public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text());

public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text()); Anotace a Hibernate Aleš Nosek, Ondřej Vadinský, Daniel Krátký Anotace v Javě Anotace jsou novinkou v Javy verze 5. Anotace umožňují doplnit kód Javy o dodatečné informace. Zapisují se přímo do zdrojového

Více

Výjimky. v C# a Javě

Výjimky. v C# a Javě Výjimky v C# a Javě Výjimky v C# Výjimky poskytují v C# způsob, jak reagovat na nečekané události. Uživatel např. zadá místo čísla text nebo soubor, který chceme otevřít, je využíván jiným procesem. To

Více

typová konverze typová inference

typová konverze typová inference Seminář Java Programování v Javě II Radek Kočí Fakulta informačních technologií VUT Únor 2008 Radek Kočí Seminář Java Programování v Javě (2) 1/ 36 Téma přednášky Rozhraní: použití, dědičnost Hierarchie

Více

Abstraktní datové typy: zásobník

Abstraktní datové typy: zásobník Abstraktní datové typy: zásobník doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Abstraktní datové typy omezené rozhraní

Více

Programovací jazyk Java

Programovací jazyk Java 1 z 7 14.1.2015 23:01 Programovací jazyk Java 4. přednáška Obsah Tvorba programátorské dokumentace Výjimky I/O operace Serializace a deserializace dat Práce se soubory Programátorská dokumentace pomocí

Více

Rozhraní SAX, SAX vs. SAX2. Jaroslav Ciml

Rozhraní SAX, SAX vs. SAX2. Jaroslav Ciml Rozhraní SAX, SAX vs. SAX2 Jaroslav Ciml Použití SAX - připomenutí Vytvoření instance parseru XMLReader xmlreader = XMLReaderFactory.createXMLReader(); Registrace handleru xmlreader.setcontenthandler(

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Struktura programu Vytvoření nové aplikace Struktura programu Základní syntaktické elementy První aplikace Verze pro akademický rok 2012/2013 1 Nová aplikace NetBeans Ve vývojovém

Více

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

Více

Vytváření a použití knihoven tříd

Vytváření a použití knihoven tříd Vytváření a použití knihoven tříd doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Prostory jmen motivace spolupráce

Více

14.4.1. Typický prvek kolekce pro české řazení

14.4.1. Typický prvek kolekce pro české řazení 14.4. Co všechno by měl mít typický prvek kolekce 177 Poznámka: Třídy BigInteger, BigDecimal a Date budou vysvětleny v částech [15./183, [16./185 a [18.1./204. 14.4.1. Typický prvek kolekce pro české řazení

Více

ANT. Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha

ANT. Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha ANT Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Více

PREPROCESOR POKRAČOVÁNÍ

PREPROCESOR POKRAČOVÁNÍ PREPROCESOR POKRAČOVÁNÍ Chybová hlášení V C# podobně jako v C++ existuje direktiva #error, která způsobí vypsání chybového hlášení překladačem a zastavení překladu. jazyk C# navíc nabízí direktivu #warning,

Více

SOUBORY, VSTUPY A VÝSTUPY POKRAČOVÁNÍ

SOUBORY, VSTUPY A VÝSTUPY POKRAČOVÁNÍ SOUBORY, VSTUPY A VÝSTUPY POKRAČOVÁNÍ Vstupy a výstupy pokračování Kódování textů Texty (řetězce nebo znaky) v jazyce C# jsou v paměti uloženy v kódování označovaném běžně Unicode (kódová stránka 1200).

Více

Design time - vytváří se program - metadata - vytváří se např. třída. Run time - běh programu - ukládá se do paměti počítače - vytváří se např.

Design time - vytváří se program - metadata - vytváří se např. třída. Run time - běh programu - ukládá se do paměti počítače - vytváří se např. Design time - vytváří se program - metadata - vytváří se např. třída Run time - běh programu - ukládá se do paměti počítače - vytváří se např. objekt rysy javy - zavedení jasného pořádku a etikety - přísné

Více

Z. Kotala, P. Toman: Java ( Obsah )

Z. Kotala, P. Toman: Java ( Obsah ) Z. Kotala, P. Toman: Java ( Obsah ) 13. Výjimky Výjimka (exception) je definována jako událost, která nastane během provádění programu a která naruší normální běh instrukcí. Výjimka je vyvolána například

Více

Seminář Java II p.1/43

Seminář Java II p.1/43 Seminář Java II Seminář Java II p.1/43 Rekapitulace Java je case sensitive Zdrojový kód (soubor.java) obsahuje jednu veřejnou třídu Třídy jsou organizovány do balíků Hierarchie balíků odpovídá hierarchii

Více

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/ UJO Framework revoluční architektura beans verze 0.80 http://ujoframework.org/ Pavel Pone(c), září 2008 Historie rok 2004 upravené objekty z frameworku Cayenne nevýhodou byla špatná typová kontrola rok

Více

20. Projekt Domácí mediotéka

20. Projekt Domácí mediotéka Projekt Domácí mediotéka strana 211 20. Projekt Domácí mediotéka 20.1. Základní popis, zadání úkolu V projektu Domácí mediotéka (Dome) se jednoduchým způsobem evidují CD a videa. Projekt je velmi jednoduchý

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

7. Datové typy v Javě

7. Datové typy v Javě 7. Datové typy v Javě Primitivní vs. objektové typy Kategorie primitivních typů: integrální, boolean, čísla s pohyblivou řádovou čárkou Pole: deklarace, vytvoření, naplnění, přístup k prvkům, rozsah indexů

Více

Java - výjimky. private void vstup() throws IOException {... }

Java - výjimky. private void vstup() throws IOException {... } Java - výjimky Tato kapitola ukazuje na několika příkladech práci s výjimkami v Javě. Klíčové pojmy: Výjimka, hierarchie výjimek, zachytávání výjimek, blok try-catch, tvorba vlastních výjimek, propagace

Více

Jazyk C# (seminář 5)

Jazyk C# (seminář 5) Jazyk C# (seminář 5) Pavel Procházka KMI 23. října 2014 Přetěžování metod motivace Představme si, že máme metodu, která uvnitř dělá prakticky to samé, ale liší se pouze parametry V C# můžeme více metod

Více

Technologie JavaBeans

Technologie JavaBeans Technologie JavaBeans doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Historie Komponentový model Typy komponent

Více

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java 3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java Studijní cíl V tomto bloku navážeme na konec předchozího bloku a seznámíme se s vývojovými prostředími, které se nejčastěji používají

Více

Datové struktury. alg12 1

Datové struktury. alg12 1 Datové struktury Jedna z klasických knih o programování (autor prof. Wirth) má název Algorithms + Data structures = Programs Datová struktura je množina dat (prvků, složek, datových objektů), pro kterou

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu

Více

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní Základy jazyka C# doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Architektura.NET Historie Vlastnosti

Více

Vláknové programování část V

Vláknové programování část V Vláknové programování část V Lukáš Hejmánek, Petr Holub {xhejtman,hopet@ics.muni.cz Laboratoř pokročilých síťových technologií PV192 2014 03 25 1/25 Přehled přednášky Paměťový model Javy GUI v Javě Vlákna

Více

Replikace v PostgreSQL

Replikace v PostgreSQL Replikace v PostgreSQL CSPUG, Praha Tomс Vondra (tv@fuzzy.cz) Czech and Slovak PostgreSQL Users Group 19.4.2011 Agenda кely replikace Varianty replikace Historie replikace v PostgreSQL Zabudovanс replikace

Více

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář Vazba (binding) Tabulka symbolů Miroslav Beneš Dušan Kolář vazba = spojení mezi entitou a vlastností okamžik vazby (binding time) při návrhu jazyka při implementaci jazyka během překladu/spojování/zavádění

Více

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech 7 Formátovaný výstup, třídy, objekty, pole, chyby v programech Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost formátovanému výstupu,

Více

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing)

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing) Třída Character Práce s textem doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz reprezentuje objekty zapouzdřující hodnotu

Více

Infrastruktura UML. Modelování struktury v UML. Superstruktura UML. Notace objektů. Diagramy objektů

Infrastruktura UML. Modelování struktury v UML. Superstruktura UML. Notace objektů. Diagramy objektů Infrastruktura UML v UML Karel Richta listopad 2011 Richta: B101TMM - v UML 2 Superstruktura UML Směr pohledu na systém dle UML Diagramy popisující strukturu diagramy tříd, objektů, kompozitní struktury,

Více

Vstupy a výstupy strana 125

Vstupy a výstupy strana 125 Vstupy a výstupy strana 125 13. Vstupy a výstupy 13.1. Základní principy práce se soubory Pro používání souborů v programu je potřeba zvládnout minimálně následující tři skupiny operací: čtení z textového

Více

Anotace a Hibernate. Aleš Nosek Ondřej Vadinský Daniel Krátký

Anotace a Hibernate. Aleš Nosek Ondřej Vadinský Daniel Krátký Anotace a Hibernate Aleš Nosek Ondřej Vadinský Daniel Krátký Anotace v Javě novinka Javy 5 umožňují k Java kódu přidávat dodatečné informace (podobně jako JavaDoc) za předchůdce anotací je možné považovat

Více

Rozhraní pro práci s XML dokumenty. Roman Malo

Rozhraní pro práci s XML dokumenty. Roman Malo Rozhraní pro práci s XML dokumenty Roman Malo Práce s XML dokumenty Datově a dokumentově orientované XML dokumenty Problém preference elementů a atributů Strom elementů Strom uzlů Základní zpracování dokumentů

Více

Pokud zadání nerozumíte nebo se vám zdá nejednoznačné, zeptejte se. Pište čitelně, nečitelná řešení nebudeme uznávat.

Pokud zadání nerozumíte nebo se vám zdá nejednoznačné, zeptejte se. Pište čitelně, nečitelná řešení nebudeme uznávat. Pokud zadání nerozumíte nebo se vám zdá nejednoznačné, zeptejte se. Pište čitelně, nečitelná řešení nebudeme uznávat. 1. Odkrokujte následující program a s použitím notace z přednášky popište stav paměti

Více

George J. Klir. State University of New York (SUNY) Binghamton, New York 13902, USA gklir@binghamton.edu

George J. Klir. State University of New York (SUNY) Binghamton, New York 13902, USA gklir@binghamton.edu A Tutorial Advances in query languages for similarity-based databases George J. Klir Petr Krajča State University of New York (SUNY) Binghamton, New York 13902, USA gklir@binghamton.edu Palacky University,

Více

Úvod do programovacích jazyků (Java)

Úvod do programovacích jazyků (Java) Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích

Více

PRG036 Technologie XML

PRG036 Technologie XML PRG036 Technologie XML Přednáší: Irena Mlýnková (mlynkova@ksi.mff.cuni.cz) Martin Nečaský (necasky@ksi.mff.cuni.cz) LS 2010 Stránka přednášky: http://www.ksi.mff.cuni.cz/~mlynkova/prg036/ 1 Osnova předmětu

Více

Projekty pro výuku programování v jazyce Java

Projekty pro výuku programování v jazyce Java JIHOČESKÁ UNIVERZITA V ČESKÝCH BUDĚJOVICÍCH Pedagogická fakulta Katedra informatiky Akademický rok: 2006/2007 TEZE BAKALÁŘSKÉ PRÁCE Projekty pro výuku programování v jazyce Java Jméno: František Přinosil

Více

Výčtový typ strana 67

Výčtový typ strana 67 Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce

Více

Na tomto místě bude oficiální zadání vaší práce

Na tomto místě bude oficiální zadání vaší práce Na tomto místě bude oficiální zadání vaší práce Toto zadání je podepsané děkanem a vedoucím katedry, musíte si ho vyzvednout na studijním oddělení Katedry počítačů na Karlově náměstí, v jedné odevzdané

Více

IB111 Programování a algoritmizace. Objektově orientované programování (OOP)

IB111 Programování a algoritmizace. Objektově orientované programování (OOP) IB111 Programování a algoritmizace Objektově orientované programování (OOP) OP a OOP Objekt Kombinuje data a funkce a poskytuje určité rozhraní. OP = objektové programování Vše musí být objekty Např. Smalltalk,

Více

Práce se soubory opakování

Práce se soubory opakování Práce se soubory Práce se soubory opakování Nízko-úrovňové (C-čkové) API. fopen(), fread(), fwrite(), fclose() S daty se manipuluje přes řetězce. Manipulace s celým souborem najednou. fpassthru(), readfile()

Více

Struktura třídy, operátory, jednoduché algoritmy, junit. Programování II 2. cvičení Alena Buchalcevová

Struktura třídy, operátory, jednoduché algoritmy, junit. Programování II 2. cvičení Alena Buchalcevová Struktura třídy, operátory, jednoduché algoritmy, junit 2. cvičení Alena Buchalcevová Cíle cvičení seznámit se s rozhraním (interface) v Javě seznámit se s testováním při vývoji (makety, JUnit) naučit

Více

boolean hasnext() Object next() void remove() Kolekce

boolean hasnext() Object next() void remove() Kolekce 11. Kontejnery Kontejnery Kontejnery jako základní dynamické struktury v Javě Kolekce, iterátory (Collection, Iterator) Seznamy (rozhraní List, třídy ArrayList, LinkedList) Množiny (rozhraní Set, třída

Více

1. Programování proti rozhraní

1. Programování proti rozhraní 1. Programování proti rozhraní Cíl látky Cílem tohoto bloku je seznámení se s jednou z nejdůležitější programátorskou technikou v objektově orientovaném programování. Tou technikou je využívaní rozhraní

Více

Seznamy a iterátory. Kolekce obecně. Rozhraní kolekce. Procházení kolekcí

Seznamy a iterátory. Kolekce obecně. Rozhraní kolekce. Procházení kolekcí Kolekce obecně Seznamy a iterátory doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Kolekce ::= homogenní sada prvků

Více

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006 Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006 Lekce 1 Jazyk Java Tento projekt je spolufinancován Evropským sociálním fondem

Více

5 Rekurze a zásobník. Rekurzivní volání metody

5 Rekurze a zásobník. Rekurzivní volání metody 5 Rekurze a zásobník Při volání metody z metody main() se do zásobníku uloží aktivační záznam obsahující - parametry - návratovou adresu, tedy adresu, kde bude program pokračovat v metodě main () po skončení

Více

MASARYKOVA UNIVERZITA V BRNĚ FAKULTA INFORMATIKY

MASARYKOVA UNIVERZITA V BRNĚ FAKULTA INFORMATIKY MASARYKOVA UNIVERZITA V BRNĚ FAKULTA INFORMATIKY Evidence filmových nahrávek Bakalářská práce Richard Karmazín 2005 Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval

Více

DPKOM_06 Dědičnost entit a zpětná volání posluchači

DPKOM_06 Dědičnost entit a zpětná volání posluchači DPKOM_06 Dědičnost entit a zpětná volání posluchači 1 Obsah přednášky Jedna tabulka pro hierarchii tříd Tabulka pro konkrétní třídu Tabulka pro podtřídu Neentitní základní třídy Události zpětného volání

Více

Paměť počítače. alg2 1

Paměť počítače. alg2 1 Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových

Více

Stream API. Petr Krajča. Základy programovaní 4 (Java) Katedra informatiky Univerzita Palackého v Olomouci

Stream API. Petr Krajča. Základy programovaní 4 (Java) Katedra informatiky Univerzita Palackého v Olomouci Základy programovaní 4 (Java) Stream API Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/ZP4JV 5. listopad, 2014 1 / 10 Stream API Java 8 nový přístup k práci s kolekcemi

Více

4. ZÁKLADNÍ POJMY Z OBJEKTOVĚ ORIENTOVANÉHO PROGRAMOVÁNÍ

4. ZÁKLADNÍ POJMY Z OBJEKTOVĚ ORIENTOVANÉHO PROGRAMOVÁNÍ 4. ZÁKLADNÍ POJMY Z OBJEKTOVĚ ORIENTOVANÉHO PROGRAMOVÁNÍ OBJEKT Program v Javě je staticky strukturován na třídy, jejichž instance (objekty) za běhu dynamicky programu vznikají a zanikají. Objekt je nejprve

Více

APLIKACE XML PRO INTERNET

APLIKACE XML PRO INTERNET APLIKACE XML PRO INTERNET Jaroslav Ráček Fakulta Informatiky, Masarykova Universita Brno Abstrakt Text je věnován možnostem využití XML technologie pro prezentaci dokumentů pomocí Internetu. V úvodu je

Více

XML Š ABLONY A JEJICH INTEGRACE V LCMS XML TEMPLATES AND THEIN INTEGRATION IN LCMS

XML Š ABLONY A JEJICH INTEGRACE V LCMS XML TEMPLATES AND THEIN INTEGRATION IN LCMS XML Š ABLONY A JEJICH INTEGRACE V LCMS XML TEMPLATES AND THEIN INTEGRATION IN LCMS Roman MALO - Arnošt MOTYČKA This paper is oriented to discussion about using markup language XML and its features in LCMS

Více

XML terminologie a charakteristiky. Roman Malo

XML terminologie a charakteristiky. Roman Malo XML terminologie a charakteristiky Roman Malo XML extensible Markup Language (rozšiřitelný značkovací jazyk) Verze 1.0, 1.1 http://www.w3.org/xml Rozdíly v podpoře různých znakových sad a práci s řídícími

Více

Webové služby a XML. Miroslav Beneš

Webové služby a XML. Miroslav Beneš Webové služby a XML Miroslav Beneš Obsah přednášky Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

Čipové karty Lekařská informatika

Čipové karty Lekařská informatika Čipové karty Lekařská informatika Následující kód je jednoduchou aplikací pro čipové karty, která po překladu vytváří prostor na kartě, nad kterým jsou prováděny jednotlivé operace a do kterého jsou ukládány

Více

Správa paměti. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta, 2016

Správa paměti. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta, 2016 Správa paměti Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta, 2016 Objektové modelování, B36OMO 10/2016, Lekce 2 https://cw.fel.cvut.cz/wiki/courses/xxb36omo/start

Více

IRAE 07/08 Přednáška č. 1

IRAE 07/08 Přednáška č. 1 Úvod do předmětu OOP Objekt Proč OOP? Literatura, osnova předmětu viz. cvičení Základní prvek OOP sw inženýrství = model reálných objektů (věcí) člověk, auto, okno (ve windows), slovník, = model abstraktní

Více

Validátor jbpm 3 Workflow jako plugin pro Eclipse IDE

Validátor jbpm 3 Workflow jako plugin pro Eclipse IDE České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačové grafiky a interakce Bakalářská práce Validátor jbpm 3 Workflow jako plugin pro Eclipse IDE Luboš Černý Vedoucí práce: Ing.

Více

Objektově orientované programování 1 XOBO1. Autor: Doc. Ing. František Huňka, CSc.

Objektově orientované programování 1 XOBO1. Autor: Doc. Ing. František Huňka, CSc. Objektově orientované programování 1 XOBO1 Autor: Doc. Ing. František Huňka, CSc. 1 Seznam kapitol 1 Základní pojmy...3 1.1 Úvod do tříd a objektů...3 1.2 Vývojové prostředí...7 1.3 Jednotný modelovací

Více

SW_10. Dekorátor - Decorator Stav - State

SW_10. Dekorátor - Decorator Stav - State SW_10 Dekorátor - Decorator Stav - State 1 Úvod Dekorátor Naučíte se jak zkrášlovat (decorate) vaše třídy za běhu programu s využitím skládání objektů. Tímto způsobem budete schopni dát vašim objektům

Více

Základy objektové orientace I. Únor 2010

Základy objektové orientace I. Únor 2010 Seminář Java Základy objektové orientace I Radek Kočí Fakulta informačních technologií VUT Únor 2010 Radek Kočí Seminář Java Základy OO (1) 1/ 20 Téma přednášky Charakteristika objektově orientovaných

Více

Integrace OpenOffice.org a Javy. CZJUG, , Robert Vojta

Integrace OpenOffice.org a Javy. CZJUG, , Robert Vojta Integrace OpenOffice.org a Javy CZJUG, 15.12.2008, Robert Vojta Obsah Část 1 - Teorie Úvodní informace, definice pojmů Dokumentace, Java Language Binding Pomocné nástroje Část 2 - Praktické ukázky Lokální

Více

Úvod Informace o prostředí Práce se soubory Regulární výrazy Konec. Programování v C# Soubory a regulární výrazy. Petr Vaněček 1 / 27

Úvod Informace o prostředí Práce se soubory Regulární výrazy Konec. Programování v C# Soubory a regulární výrazy. Petr Vaněček 1 / 27 Programování v C# Soubory a regulární výrazy Petr Vaněček 1 / 27 Obsah přednášky Informace o prostředí Práce se soubory Regulární výrazy 2 / 27 Zprostředkování informací Třída System.Environment Poskytuje

Více

Návrhové vzory Design Patterns

Návrhové vzory Design Patterns Návrhové vzory Design Patterns doc. Ing. František Huňka, CSc. Ostravská univerzita PřF 1 Definice vzoru Každý vzor popisuje problém, který nastává opakovaně v našem prostředí, a potom popisuje podstatu

Více

API pro práci s XML. Jirka Kosek. Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Copyright 2001-2014 Jiří Kosek

API pro práci s XML. Jirka Kosek. Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Copyright 2001-2014 Jiří Kosek Jirka Kosek Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Obsah Úvod... 3 Parsery XML... 4 Rozhraní pro přístup k dokumentu XML... 5 Další charakteristiky parseru... 6 Sekvenční čtení... 7 Push parsery...

Více

Generické programování

Generické programování Generické programování Od C# verze 2.0 = vytváření kódu s obecným datovým typem Příklad generická metoda, zamění dva parametry: static void Swap(ref T p1, ref T p2) T temp; temp = p1; p1 = p2; p2 =

Více

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni!

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni! Java práce s řetězci Trochu povídání.. Řetězce jsou v Javě reprezentovány instancemi tříd StringBuffer a String. Tyto třídy jsou součástí balíčku java.lang, tudíž je možno s nimi pracovat ihned bez nutného

Více

Úvod do programování v jazyce Java

Úvod do programování v jazyce Java Úvod do programování v jazyce Java Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci 5. říjen, 2011 Petr Krajča (UP) KMI/UP3J: Seminář I. 5.10.2011 1 / 17 Organizační informace email: petr.krajca@upol.cz

Více

JAVA. Vstup a výstup

JAVA. Vstup a výstup JAVA Vstup a výstup 1 Přehled balík java.io základní vstup a výstup "streams" bytes od JDK1.1 Reader a Writer chars (Unicode) balík java.nio od JDK1.4 channels, buffers zvýšení výkonu třídy z java.io uvnitř

Více

11.5.2012. Obsah přednášky 9. Skrývání informací. Skrývání informací. Zapouzdření. Skrývání informací. Základy programování (IZAPR, IZKPR) Přednáška 9

11.5.2012. Obsah přednášky 9. Skrývání informací. Skrývání informací. Zapouzdření. Skrývání informací. Základy programování (IZAPR, IZKPR) Přednáška 9 Obsah přednášky 9 Základy programování (IZAPR, IZKPR) Přednáška 9 Základy dědičnosti, přístupová práva Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 03 022, Náměstí Čs. legií

Více

Objektově orientované programování

Objektově orientované programování 10. října 2011 Pragmatické informace Volitelný předmět, zápočet: zápočtový program(s dokumentací), aktivní účast na cvičení(body v CodExu), praktický test, zkouška: zkoušková písemka na objektový návrh

Více

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2 Přednáška 2 Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. 1 Systém souborů (FS) I 2 Systém souborů II Logický systém souborů pro běžného uživatele se jeví jako jediná homogenní struktura

Více

1 2 3 4 5 6 součet cvičení celkem. známka. Úloha č.: max. bodů: skut. bodů:

1 2 3 4 5 6 součet cvičení celkem. známka. Úloha č.: max. bodů: skut. bodů: Úloha č.: max. bodů: skut. bodů: 1 2 3 4 5 6 součet cvičení celkem 20 12 20 20 14 14 100 známka UPOZORNĚNÍ : a) Písemná zkouška obsahuje 6 úloh, jejichž řešení musí být vepsáno do připraveného formuláře.

Více

Tvorba informačních systémů

Tvorba informačních systémů 9. Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba

Více

Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek. http://www.kosek

Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek. http://www.kosek Podpora XML v.net Podpora XML v.net Jirka Kosek nezávislý publicista http://www.kosek kosek.cz Co nás čeká? Co nás čeká?! podpora XML ve VisualStudio.NET! architektura System.Xml! čtení XML dokumentů!

Více

Zápis programu v jazyce C#

Zápis programu v jazyce C# Zápis programu v jazyce C# Základní syntaktická pravidla C# = case sensitive jazyk rozlišuje velikost písmen Tzv. bílé znaky (Enter, mezera, tab ) ve ZK překladač ignoruje každý příkaz končí ; oddělovač

Více

Programové konvence, dokumentace a ladění. Programování II 2. přednáška Alena Buchalcevová

Programové konvence, dokumentace a ladění. Programování II 2. přednáška Alena Buchalcevová Programové konvence, dokumentace a ladění 2. přednáška Alena Buchalcevová Proč dodržovat programové konvence? velkou část životního cyklu softwaru tvoří údržba údržbu provádí většinou někdo jiný než autor

Více