Student s Life. Návrhová dokumentace (Design) Lukáš Barák, Jakub Ječmínek, Jaroslav Brchel, Jiří Zmeškal
|
|
- Natálie Dostálová
- před 8 lety
- Počet zobrazení:
Transkript
1 Student s Life Návrhová dokumentace (Design) Lukáš Barák, Jakub Ječmínek, Jaroslav Brchel, Jiří Zmeškal
2 Model Specification Page: 2 Obsah Model architektury... 3 Návrhový model... 3 Bussines vrstva (Doménová vrstva)... 3 Datová vrstva... 3 Prezentační vrstva... 4 Balíček "Návrhový model"... 4 Balíček "datoveoperace"... 5 Balíček "grafika"... 6 Balíček "logika"... 6 Model nasazení PC... 18
3 Model Specification Page: 3 Model architektury Balíček obsahuje popis logického členění navrhované aplikace na vrstvy, které umožňují snadnou rozšiřitelnost a udržovatelnost aplikace. Jednotlivé vrstvy obsahují další balíčky, do kterých jsou seskupeny třídy, podle jejich logických souvislostí. cmp Model architekt... Prezentační v rstv a Bussines v rstv a (Doménov á v rstv a) Datov á v rstv a Obrázek: 1 Návrhový model Business vrstva (Doménová vrstva) Komponenta obsahuje třídy a komponenty, které realizují požadované chování aplikace z pohledu obchodní logiky. Datová vrstva Komponenta obsahuje třídy a komponenty poskytující technickou podporu pro doménovou vrstvu v podobě persistentního ukládání dat apod.
4 Model Specification Page: 4 Prezentační vrstva Prezentační vrstva obsahuje třídy a komponenty, které se starájí o prezentování informací uživateli, a které od něho zpátky přebírají požadavky. Tyto požadavky transformují tak, aby odstranily závislost na použité technologii (desktopová aplikace) a předávájí je dále do doménového modelu. Balíček "Návrhový model" Balíček obsahuje popis návrhových tříd, jejich vzájemných vztahů, přiřazení zodpovědností a popis spolupráce pro realizaci požadovaných funkčností. Pro grafickou reprezentaci statického modelu využívá UML diagram tříd, kde jsou jednotlivé třídy doplněny o metody, atributy o datové y (dle zvoleného implementačního jazyka nebo s využitím obecných datových u), konce asociací jsou doplněny o popisy. Pro grafickou reprezentaci dynamického chování využívá UML sekvenční diagramy, UML diagramy spolupráce, UML diagramy aktivit a UML stavové diagramy. class StudentsLife grafika + HlavniOkno Prezentační vrstva aplikace StudentsLife logika + menza + penezenka + rozvrh + Utils + diar Business vrstva aplikace datov eoperace + diar + menza + penezenka + rozvrh Datová vrstva Obrázek: 1
5 Model Specification Page: 5 Balíček "datoveoperace" Balíček obsahuje třídy datové vrstvy, které nabízejí technickou podporu pro třídy obchodní vrstvy. Jedná se především o datové operace(načítání, ukádání). Balíček "diar" Balíček "menza" Třída "Parser" Třída Parser bude sloužít k načítání dat ze stránek SUZ (jídelníček pro danný den). Datový Poznámky isnacteny boolean Udržuje informaci zda je jídelníček již načtený, nebo ne. jidelak Jidelnicek Jidelnicek který se vyparsuje ze stránek SUZ. getjidelnicek False Tato metoda bude vracet vyparsovaný jídelníček. Parser False Konstruktor třídy Parser. ziskatjidelnicek False Tato mezoda bude sloužit na vyprasování jídelníčku ze stránek SUZ a jeho uložení do instanční proměné jidelak. Třída "Ukladac" Třída ukladač slouží k ukládání dat modulu do xml souboru. Obsahuje metody, které toto ukládání realizují. Datový Poznámky FILE String Soubor do kterého se bude modul ukládat. save False Tato metoda slouží k ukládání informací modulu do xml. list: List<Jidelnicek> Třída "Upravator" Tato třída bude sloužit k načtení dat modulu menza z xml a jejich úpravám.
6 Model Specification Page: 6 Balíček "penezenka" Balíček "rozvrh" Třída "Nacitac" Třída pro načítání z xml souboru. Třída "Parser" Třída pro parsování html souboru s rozvrhem z KOSu. Třída "Ukladac" Slouží pro ukládání aktuálních dat v modulu. Datový Poznámky FILE Soubor, do ktereho bude ulozen obsah modulu v xml forme. Balíček "grafika" Balíček grafika tvoří prezentační vrstvu aplikace StudentsLife. Je to rozhraní mezi uživatelem a aplikací. Třída "HlavniOkno" Tato třída tvoří základ grafického uživatelského rozhraní mezi uživatelem a aplikací. Balíček "logika" Balíček "Utils" class Utils Obrázek: 2 Třída "Hlidac" Hlidac je rozhraní, které je součástí návrhového vzoru observer. Toto rozhraní sice java obsahuje, ale zde je vytvořeno pro větší přehlednost kódu v rámci teamu.
7 Model Specification Page: 7 Balíček "diar" class Diar díáře v BL 2 hlavní třídy Kategorie - BarvaKat: int - JmenoKat: char + odstrankategorii(char) : void + vytvorkategorii(int, char) : void + zmenkategorii(boolean, char) : void - Delka: int - Den: int - Hodina: int - Kategorie: char - Mesic: int - Minuta: int - Nazev: char - Rok: int Udalost + odstranudalost(int, int, int, int, int) : void + upravudalost(int, int, int, int, int, int, char, char) : void + vytvorudalost(char, int, int, int, int, int, int, char) : void Obrázek: 3
8 Model Specification Page: 8 Balíček "menza" class menza ModulMenza - seznam: List<Jidelnicek> + ModulMenza() + pridatjidelnicek(jidelnicek) : void Jidlo - cena: int - hmotnost: int - jeoblibene: boolean - jmenojidla: String + getcena() : int + gethmotnost() : int + getjmenojidla() : String + isoblibene() : boolean + Jidlo(int, String, boolean, int) + setcena(int) : void + sethmotnost(int) : void + setjeoblibene(boolean) : void + setjmenojidla(string) : void Jidelnicek - hlavnijidlo: Jidlo - menza: Menza - moucnik: Jidlo - polevka: Jidlo + gethlavnijidlo() : Jidlo + getmenza() : Mezna + getmoucnik() : Jidlo + getpolevka() : Jidlo + Jidelnicek(Jidlo, Jidlo, Jidlo, Menza) + sethlavnijidlo(jidlo) : void + setmenza(menza) : void + setmoucnik(jidlo) : void + setpolevka(jidlo) : void Menza - adresa: String [1..55] - nazev: String [1..55] - provoznidoba: String [1..55] + getadresa() : String + getnazev() : String + getprovoznidoba() : String + Menza(String, String, String) + setadresa(string) : void + setnazev(string) : void + setprovoznidoba(string) : void OblibenaJidla menza::uprav ator menza::parser - isnacteny: boolean - jidelak: Jidelnicek menza::ukladac - FILE: String = modulmenza.xml {readonly} + getjidelnicek() : Jidelnicek + Parser() - ziskatjidelnicek() : void + save(list<jidelnicek>) : void Obrázek: 4 Třída "Jidelnicek" Každá instance této třídy obsahuje informace o jednom daném jídelníčku. Datový Poznámky hlavnijidlo Jidlo Hlavní jídlo dne menza Menza Informace o mezne pro kterou daný jídelníček platí. moucnik Jidlo Moučník na jídelníčku.
9 Model Specification Page: 9 Datový Poznámky polevka Jidlo Polévka v denní nabídce gethlavnijidlo False Vrátí hlavní jídlo na jídelníčku. getmenza False Vrátí instanci třídy Menza, která obsahuje informace o menze, pro kterou platí danný jídelníček. getmoucnik False Vrátí moučník z jídelníčku. getpolevka False Vrátí instanci třídy Jidlo obsahující informace o polévce z jídelníčku Jidelnicek False Kontruktor třídy Jidelnicek hlavnijidlo: Jidlo polevka: Jidlo moucnik: Jidlo menza: Menza sethlavnijidlo False Nastaví hlavní jídlo jídelníčku. hlavnijidlo: Jidlo setmenza False Nastaví menzu menza: Menza setmoucnik False Nastaví moučník na jídelníčku moucnik: Jidlo setpolevka False Nastaví polévku na jídelníčku. polevka: Jidlo
10 Model Specification Page: 10 Třída "Jidlo" Instance této třídy obsahuje informace o jednotlivých jídlech Datový Poznámky cena int Cena jídla. hmotnost int Hmotnost jídla. jeoblibene boolean Informace zda je jídlo oblíbené. jmenojidla String Jméno jídla. getcena False Tato metoda vrací cenu jídla gethmotnost False Tato metoda vrací hmotnost jídla getjmenojidla False Tato metoda vrací jméno jídla isoblibene False Tato metoda vrací informaci zda je jídlo oblíbené Jidlo False Konstruktor třídy Jidlo. hmotnost: int jmenojidla: String jeoblibene: boolean cena: int setcena False Tato metoda nastavuje cenu jídla cena: int sethmotnost False Tato metoda nastavuje hmotnost jídla. hmotnost: int setjeoblibene False Tato metoda nastavuje zda je jídlo oblíbené jeoblibene: boolean
11 Model Specification Page: 11 setjmenojidla False Tato metoda nastavuje jméno jídla jmenojidla: String Třída "Menza" Tato třída slouží pro popis jednotlivých menz. Datový Poznámky adresa String Adresa menzy nazev String Název menzy provoznidoba String Doba kdy je menza otevřená getadresa False Tato metoda vrací adresu menzy getnazev False Tato metoda vrací název menzy getprovoznidoba False Tato metoda vrací provozni dobu menzy Menza False Konstruktor třídy Menza adresa: String nazev: String provoznidoba: String setadresa False Tato metoda nastavuje adresu menzy. adresa: String setnazev False Tato metoda nastavuje název menzy. nazev: String setprovoznidoba False Tato metoda nastavuje provozni dobu menzy. provoznidoba: String
12 Model Specification Page: 12 Návratový Poznámky Třída "OblibenaJidla" Tato třída slouží k přidávání/odebírání jídel do kategorie oblíbených. Balíček "penezenka" class penezenka - alert: int = 0 - sum: int Penezenka «column» - polozky: List<Polozka> + getsum() : int + odeberobserver(hlidac) : void + odeberpolozku(polozka) : void + pridejobserver(hlidac) : void + pridejpolozku(polozka) : void + setalert(int) : void + upozorniobserver() : void + vratpolozky() : List Polozka - cena: int - opakovani: char - popis: String - uctovacidatum: Date + Polozka(int, String, Date, char) + setcena(int) : void + setopakovani(char) : void + setpopis(string) : void + setuctovanidatum(date) : void + tostring() : String Obrázek: 5
13 Model Specification Page: 13 Třída "Penezenka" Hlavní třída modulu s peněženkou Datový Poznámky alert int Obsahuje stav konta, při kterém dojde k upozornění, že je něco v nepořádku. polozky List<Polozka> V tomto atributu jsou drženy veškeré operace peněženky sum int Obsahuje stav konta getsum False Vrátí stav účtu studenta odeberobserver False vymaže hlídače změn h: Hlidac odeberpolozku False Odebere položku ze seznamu p: Polozka pridejobserver False Přidá hlídače změn h: Hlidac pridejpolozku False Přidá položku do seznamu p: Polozka setalert False Nastaví hodnotu, při které bude peněženka upozorňovat, že je stuent u dna. a: int upozorniobserver False Upozorní hlídače změn, že se v jeho vnitřních stavech udála změna vratpolozky False Vrací List položek peněženky.
14 Model Specification Page: 14 Třída "Polozka" Třída reprezentuje jednotlivou položku v peněžence Datový Poznámky cena int Jednotlivá položka vyjádřena hodnotou opakovani char Znak, podle kterého se bude rozhodovat, jestli se položka účtuje opakovaně - týdně, měsíčně, denně - nebo se jedná o jednorázovou věc popis String Slovní popis položky uctovacidatum Date Datum, kdy byla položka zaúčtována Polozka False Konstruktor vytvářející novou položku c: int p: String d: Date o: char setcena False úprava atributu c: int setopakovani False úprava atributu o: char setpopis False úprava atributu p: String setuctovanidatum False úprava atributu d: Date tostring False Pro získání textové podoby položky
15 Model Specification Page: 15 Balíček "rozvrh" class rozv... - rozvrh: int Rozv rh + poppolozku(int, int) : void + Rozvrh() : void + setpolozku(polozka) : void Polozka - den: int - hodina: int - predmet: Predmet - tyden: char - ucebna: Ucebna - vyucujici: Vyucujici + Polozka() : void Predmet - jmeno: int - kodpredmetu: int + Predmet() : void Ucebna - kod: int - umisteni: int + setumisteni(string) : void + Ucebna(String) : void Vyucuj ici - int - jmeno: int + set () : void + Vyucujici() : void Obrázek: 6
16 Model Specification Page: 16 Třída "Polozka" Obsahuje všechny atributy a objekty, ze kterých se skládá jedna položka rozvrhu (jedna buňka). Datový Poznámky den int Den kdy je predmet v rozvrhu. hodina int Hodina, kdy ma byt položka v rozvrhu. predmet Predmet Predmet, ke kterému se položka váže. tyden char Sudý, nebo lichí. ucebna Ucebna Ucebna, ve které daný predmet probíhá. vyucujici Vyucujici Vyucující, který má danou hodinu na starosti. Polozka False Konstruktor. Třída "Predmet" Trída která sdružuje informace, prípadné schopnosti premetu. Datový Poznámky jmeno int Jméno predmetu. kodpredmetu int Originalni kód predmetu. Predmet False Konstruktor. Třída "Rozvrh" Uchovává strukturu všech předmětů zapsaných v rozvrhu. Datový Poznámky rozvrh int Pole ukazatelu na jednotlivé položky rozvrhu. poppolozku Návratový False Poznámky Rozvrh False Inicializace pole.
17 Model Specification Page: 17 setpolozku False Zaradí položku do rozvrhu na správné místo. polozka: Polozka Třída "Ucebna" Třída, která uchovává data o učebne. Datový Poznámky kod int Kód ucebny tak, jak je v rozvrhu. umisteni int Presné umístení ucebny. setumisteni False Dodatečné nastavení umístení učebny, srozumitelné studentovi. umisteni: String Ucebna False konstruktor kod: String Třída "Vyucujici" Trída prechovávající informace o vyucujícím. Datový Poznámky int jmeno int set False Přidá k položce , který se neinicializuje v konstruktoru, protože není obsažen v html rozvrhu z kosu. Vyucujici False Konstruktor obektu položka.
18 Model Specification Page: 18 Model nasazení Balíček obsahuje popis umístění jednotlivých částí aplikace na jednotlivé fyzické uzly a způsob jejich komunikace. deployment Model nasaz... PC «jar soubor» AplikaceStudentsLife JRE Obrázek: 1 PC Aplikace poběží na standardním PC. JRE Java Runtime Environment pro daný operační systém. Bez této technologie není možné používat aplikaci.
Architektura softwarových systémů
Architektura softwarových systémů Ing. Jiří Mlejnek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jiří Mlejnek, 2011 jiri.mlejnek@fit.cvut.cz Softwarové
VíceAnalytická dokumentace
Student's Life Analytická dokumentace Projekt pro předmět A7B36SIN Vypracovali: Lukáš Barák, Jaroslav Brchel, Jakub Ječmínek, Jiří Zmeškal Obsah Business process model...4 Procesy práce s organizátorem
Více11.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íceJava 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íce7.3 Diagramy tříd - základy
7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'
Více7.3 Diagramy tříd - základy
7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'
Více7 Jazyk UML (Unified Modeling Language)
7 Jazyk UML (Unified Modeling Language) 7.1 Základní charakteristika jazyka Motivace - vznik řady OO metod a metodologií (konec 80. let a první polovina 90.let) podobné notace vyjadřující totéž, komplikující
VíceTÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího
VíceDiagramy tříd - základy
Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka Zákazník -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'
Více7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd Algoritmizace (Y36ALG), Šumperk - 7. přednáška 1 Třída jako zdroj funkcionality Třída v jazyku Java je programová jednotka tvořená
Více20. 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íce8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod 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 třídám a objektům, instančním
VíceTeoretické 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íce10 Balíčky, grafické znázornění tříd, základy zapozdření
10 Balíčky, grafické znázornění tříd, základy zapozdření 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 příkazům balíčkům, grafickému
Více7 Jazyk UML (Unified Modeling Language)
7 Jazyk UML (Unified Modeling Language) 7.1 Základní charakteristika jazyka Motivace - vznik řady OO metod a metodologií (konec 80. let a první polovina 90.let) podobné notace vyjadřující totéž, komplikující
VíceProfilová část maturitní zkoušky 2017/2018
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2017/2018 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA
VíceIB111 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íce11 Návrh programového vybavení
11 Návrh programového vybavení - technické jádro procesu vývoje programového systému, existuje u všech modelů životního cyklu - Jackson: Začínající moudrost programátora (softwarového inženýra) spočívá
VíceAbstraktní 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íceAlgoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01
Anotace sady: Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01 Autor: Blanka Sadovská Klíčová slova: Algoritmus, proměnná, diagram Stupeň a typ vzdělávání: gymnaziální vzdělávání, 3. ročník
VíceUML. Unified Modeling Language. Součásti UML
UML Unified Modeling Language 1995 počátek 1997 verze 1.0 leden dnes verze 2.0 (vývoj stále nedokončen) Standardní notace OMG podpora velkých firem (Microsoft, IBM, Oracle, HP ) popisuje struktury popisuje
Více14.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íceAnalýza a Návrh. Analýza
Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,
VíceProfilová část maturitní zkoušky 2013/2014
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA
Více1/1 ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE PROVOZNĚ EKONOMICKÁ FAKULTA PŘIJÍMACÍ ŘÍZENÍ 2017/2018
ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE PROVOZNĚ EKONOMICKÁ FAKULTA PŘIJÍMACÍ ŘÍZENÍ 2017/2018 Informační technologie 1 - Doporučená doba zpracování: 40 minut 1) Termín DCL v relačně databázové technologii
VíceIS pro podporu BOZP na FIT ČVUT
IS pro podporu BOZP na FIT ČVUT Závěrečná zpráva pro 2. iteraci 21. dubna 2011 Zadavatel: Ing. Jiří Chludil Řešitelský tým: Jiří Kopecký Jan Kratochvíl Milan Matějček Štefan Pinďák Kristýna Streitová Úvod
VíceVýč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íceInformační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika
2 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk UML, základní modely, diagramy aktivit, diagramy entit.
Více15. Projekt Kalkulačka
Projekt Kalkulačka strana 143 15. Projekt Kalkulačka 15.1. Základní popis, zadání úkolu Pracujeme na projektu Kalkulačka, který je ke stažení na java.vse.cz. Po otevření v BlueJ vytvoříme instanci třídy
VíceNetBeans platforma. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
NetBeans platforma Aplikační programování v Javě (BI-APJ) - 7 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme
Více7.6 Další diagramy UML
7.6 Další diagramy UML 7.6.1 Moduly (balíčky - package) a kolaborace (collaboration) Jak rozložit rozsáhlý systém na menší? - seskupování tříd (prvků modelu) do jednotek vyšší úrovně (package v UML). UI
Vícezapište obslužnou metodu události Click tlačítka a vyzkoušejte chování polevýsledek.text = polečíslo1.text + polečíslo2.text;
Typy a proměnné zapište obslužnou metodu události Click tlačítka a vyzkoušejte chování polevýsledek.text = polečíslo1.text + polečíslo2.text; Typy Hodnoty, kterých mohou nabývat vlastnosti prvků nejsou
VíceProgramové 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íce7.6 Další diagramy UML
7.6 Další diagramy UML 7.6.1 Moduly (balíčky - package) a kolaborace (collaboration) Jak rozložit rozsáhlý systém na menší? - seskupování tříd (prvků modelu) do jednotek vyšší úrovně (package v UML). UI
VíceAplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:
Aplikace Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části: prezentační vrstva vstup dat, zobrazení výsledků, uživatelské rozhraní, logika uživatelského rozhraní aplikační vrstva
VíceCentrální autentizační webový informační systém
Centrální autentizační webový informační systém Vypracoval : Jaromír Koníček Datum vypracování: 24..2006 Case nástroj: Enterprise Architekt v. 4.50 Obsah. Úvod... 3.. Použité terminologie... 3 2. Popis
VíceElektronická podpora výuky předmětu Komprese dat
Elektronická podpora výuky předmětu Komprese dat Vojtěch Ouška ouskav1@fel.cvut.cz 19. června 2006 Vojtěch Ouška Elektronická podpora výuky předmětu Komprese dat - 1 /15 Co je to SyVyKod? SyVyKod = Systém
VíceModelování informačních systémů s využitím jazyka UML. Jaroslav Šmarda
Modelování informačních systémů s využitím jazyka UML Jaroslav Šmarda Využití jazyka UML při vývoji IS na příkladu jednoduché aplikace pro evidenci knih Model IS Modelování případů užití Diagram případů
VíceNávrh - návrhové třídy a vzory
Návrh - návrhové třídy a vzory Ing. Jiří Mlejnek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jiří Mlejnek, 2011 jiri.mlejnek@fit.cvut.cz Softwarové
VíceUML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz
UML a jeho použití v procesu vývoje Jaroslav Žáček jaroslav.zacek@osu.cz Různé pohledy na modelování Různé pohledy na modelování Unified Modeling Language UML není metodikou ani programovacím jazykem,
VícePrincipy UML. Clear View Training 2005 v2.2 1
Principy UML Clear View Training 2005 v2.2 1 1.2 Co je touml? Unified Modelling Language (UML) je univerzálníjazyk pro vizuální modelování systémů Podporuje všechny životní cykly Mohou jej implementovat
VíceGenerické 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Úvod Arachne je projekt, který si bere za cíl poskýtovat informace prostřednictvým mobilních telefonů studentům týkající se jejich studia na Západočeské Univerzitě v Plzni. Má snahu takto částečně paralelizovat
VíceTvorba informačních systémů
Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních
VícePří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íceNávrh aplikace. Project Westpon. Inteligentní simulátor budov. Martin Mudra, Jan Smejkal, Onřej Macoszek, Marek Žehra, Jiří Slivárich
Návrh aplikace Project Westpon Inteligentní simulátor budov Martin Mudra, Jan Smejkal, Onřej Macoszek, Marek Žehra, Jiří Slivárich . Úvod.. Účel dokumentu Tento dokument má za účel detailně popsat návrh
VíceZá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Ú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íceADT/ADS = abstraktní datové typy / struktury
DT = datové typy obor hodnot, které může proměnná nabývat, s operacemi na tomto oboru určen: obor hodnot + výpočetní operace např. INT = { 2 147 483 648 až +2 147 483 647} + {+,,*,/,} ADT/ADS = abstraktní
VíceDatové typy v Javě. Tomáš Pitner, upravil Marek Šabo
Datové typy v Javě Tomáš Pitner, upravil Marek Šabo Úvod k datovým typům v Javě Existují dvě základní kategorie datových typů: primitivní a objektové Primitivní v proměnné je uložena přímo hodnota např.
VíceStruktura 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íceKlíčová slova: OOP, konstruktor, destruktor, třída, objekt, atribut, metoda
Anotace sady: Úvod do objektově orientovaného programování, VY_32_INOVACE_PRG_OOP_01 Autor: Blanka Sadovská Klíčová slova: OOP, konstruktor, destruktor, třída, objekt, atribut, metoda Druh učebního materiálu:
VícePrincipy 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íceOOPR_05. Případové studie
OOPR_05 Případové studie 1 Přehled probírané látky příklad skládání objektů - čára příklad skládání objektů kompozice a agregace přetížené konstruktory pole jako datový atribut 2 Grafický objekt - čára
VíceNávrhové vzory. Jakub Klemsa, Jan Legerský. 30. října Objektově orientované programování.
Jakub Klemsa Jan Legerský Objektově orientované programování klemsjak@fjfi.cvut.cz jan.legersky@gmail.com 30. října 2012 návrhový vzor (design pattern) obecné řešení problému, které se využívá při návrhu
Více1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití:
Architektura webové aplikace, funkce jednotlivých vrstev, životní cyklus standardizovaných komponent Java EE, Servlety, JSP, frameworky, návrhové vzory 1. Distribuce Javy Distribuce Javy se liší podle
VíceDatové 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íceSeminář 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íceDědění, polymorfismus
Programování v jazyce C/C++ Ladislav Vagner úprava Pavel Strnad Dědění. Polymorfismus. Dnešní přednáška Statická a dynamická vazba. Vnitřní reprezentace. VMT tabulka virtuálních metod. Časté chyby. Minulá
VíceTvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU
Tvorba podnikových aplikací v jazyce JAVA Josef Pavlíček KII PEF CZU J2EE Jedná se o přístup: sadu pravidel, technologií, metod, doporučení jak provádět design, vývoj, nasazení a provozování vícevrstvých
VíceÚ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íceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 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íceStřední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní
VícePREPROCESOR 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íceUJO 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íceObsah přednášky. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace UML. Co je diagram tříd. Ing. Ondřej Guth
Evropský sociální fond. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace Ing. Ondřej Guth Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze
VícePrincipy OOP při tvorbě aplikací v JEE. Michal Čejchan
Principy OOP při tvorbě aplikací v JEE Michal Čejchan Témata přednášky Principy OOP - připomenutí Úvod - co nás vede k používání OOP Reálný svět - jak (ne)používáme OOP Nedostatky na úrovni programovacích
VícePrvní kapitola úvod do problematiky
První kapitola úvod do problematiky Co je to Flex Adobe Flex je ActionSript (AS) framework pro tvorbu Rich Internet Aplications (RIA), tedy knihovna AS tříd pro Flash. Flex používáme k vytvoření SWF souboru
VícePočí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íce7 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íceMichal 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íceProgramování v C++ 3, 3. cvičení
Programování v C++ 3, 3. cvičení úvod do objektově orientovaného programování 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled Dokončení spojového
VíceSOUBORY, 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íceZá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íceKMI / TMA Tvorba mobilních aplikací. 6. seminář ZS 2016/2017 Středa 13:15-15:45
KMI / TMA Tvorba mobilních aplikací 6. seminář 2.11.2016 ZS 2016/2017 Středa 13:15-15:45 OBSAH SEMINáře Ukládání dat Ukládání dat Jaké jsou možnosti? SharedPreferences jednoduchá data databáze SQLite relační
VíceNávrh IS - UML. Jaroslav Žáček
Návrh IS - UML Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ UML UML není metodikou ani programovacím jazykem, je to pouze vizuální modelovací nastroj pro objektově orientované systémy.
VíceWebové 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íceVytvář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íceStatické proměnné a metody. Tomáš Pitner, upravil Marek Šabo
Statické proměnné a metody Tomáš Pitner, upravil Marek Šabo Úvod Se statickou metodou jsme se setkali už u úplně prvního programu - Hello, world! public class Demo { public static void main(string[] args)
VíceVývoj multiplatformní aplikace v Qt
Vývoj multiplatformní aplikace v Qt z pohledu vývoje Datovky Karel Slaný karel.slany@nic.cz 13. 11. 2015 Obsah Co je Qt Nástroje Qt Koncepty Qt Problémy při vývoji Datovky Balíčkování aplikace Datovka
VíceMaturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
VíceNávrh IS - UML. Jaroslav Žáček
Návrh IS - UML Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Trochu historie neuškodí Do roku 1994 chaos ve světě objektově orientovaných metod (několik jazyků pro vizuální modelování,
VíceÚvod Třídy Rozhraní Pole Konec. Programování v C# Hodnotové datové typy, řídící struktury. Petr Vaněček 1 / 39
Programování v C# Hodnotové datové typy, řídící struktury Petr Vaněček 1 / 39 Obsah přednášky Referenční datové typy datové položky metody přístupové metody accessory, indexery Rozhraní Pole 2 / 39 Třídy
VícePříloha 6. Palety nástrojů
Příloha 6. Palety nástrojů Palety nástrojů v IDE poskytují zkrácení pro příkazy nabídky. Příkazy jsou rozděleny do několika palet nástrojů, které mohou být nezávisle přeskupeny nebo vloženy do plovoucích
VíceIRAE 07/08 Přednáška č. 2. atr1 atr2. atr1 atr2 -33
Objekt jako proměnná Objekty a metody Objekt = proměnná referenčního typu vznik pomocí new, chování viz pole jako referenční proměnná minulý semestr Stack Heap objekt ref this 10 20 atr1 atr2 jinyobjekt
VíceAlgoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
VíceVývoj informačních systémů. Přehled témat a úkolů
Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Teorie Praxe Cvičení Diskuze
VíceInfrastruktura 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íce1. Dědičnost a polymorfismus
1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář
VíceArchitektury Informačních systémů. Jaroslav Žáček
Architektury Informačních systémů Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Nutné pojmy Co je to informační systém? Jaké oblasti zahrnuje? Jaká je vazba IS na podnikovou strategii?
VíceVíce o konstruktorech a destruktorech
Více o konstruktorech a destruktorech Více o konstruktorech a o přiřazení... inicializovat objekt lze i pomocí jiného objektu lze provést přiřazení mezi objekty v původním C nebylo možné provést přiřazení
VíceAlgoritmizace a programování
Algoritmizace a programování Typy Základní (primitivní) datové typy Deklarace Verze pro akademický rok 2012/2013 1 Typy v jazyce Java Základní datové typy (primitivní datové typy) Celočíselné byte, short,
Více8. přednáška: Soubory a proudy
8. přednáška: Soubory a proudy Soubor jako posloupnost bytů Ukládání/čtení primitivních typů Ukládání/čtení primitivních typů a objektů (řetězců) Ukládání/čtení objektů do souboru - serializace Obsah Algoritmizace
VíceFunkční objekty v C++.
Funkční objekty v C++. Funkční objekt je instance třídy, která má jako svou veřejnou metodu operátor (), tedy operátor pro volání funkce. V dnešním článku si ukážeme jak zobecnit funkci, jak používat funkční
Více1 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íceVývoj informačních systémů. Přehled témat a úkolů
Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Znalosti Schopnosti Cvičení
VíceMichal 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íceKonstruktory a destruktory
Konstruktory a destruktory Nedostatek atributy po vytvoření objektu nejsou automaticky inicializovány hodnota atributů je náhodná vytvoření metody pro inicializaci, kterou musí programátor explicitně zavolat,
VíceZápočtová úloha z předmětu KIV/ZSWI OBJEKTOVÝ NÁVRH APLIKACE
Zápočtová úloha z předmětu KIV/ZSWI OBJEKTOVÝ NÁVRH APLIKACE pro (LIKS/2010-03) Robot pro tvorbu webového korpusu 13. 4. 2010 Tým: IT deviants Členové: Lukáš Gemela Michal Karfiol Jan Řeřicha Michal Šmolík
VíceDefinice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky
JAVA Třídy Definice třídy úplná definice [public] [abstract] [final] class Jmeno [extends Predek] [impelements SeznamInterfacu] {... // telo tridy public veřejná třída abstract nesmí být vytvářeny instance
Více