CMS LARS VIVO VERZE 1.2 Z POHLEDU VIVOJÁŘE
|
|
- Kamila Kubíčková
- před 7 lety
- Počet zobrazení:
Transkript
1 CMS LARS VIVO VERZE 1.2 Z POHLEDU VIVOJÁŘE Miroslav Hájek mhajek@lundegaard.eu
2 OBSAH Implementace entity Document Vivo Exceptions Vivo Interfaces Vivo Validator Vivo CMS Events 2
3 IMPLEMENTACE ENTITY DOCUMENT Sjednocení MultiContentDocumentu a Documentu Jednoduchá definice obsahů Přidání nového dokumentu do seznamu typu entit 3
4 TŘÍDA DOKUMENTU Vytvoření nové třídy Definice vlastností Definice jednotlivých obsahů class Island extends Document { /** string */ public $city; /** string */ public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component', ); 4
5 TŘÍDA DOKUMENTU Rodičovská třída je Document Definice typu UI komponenty class Island extends Document { /** string */ public $city; /** string */ public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); 5
6 TŘÍDA DOKUMENTU Zápis vlastností do pole FIELDS Definice typu Definice editační komponenty class Island extends Document { /** string */ public $city; /** string */ public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); CMS\Model\Entity::$FIELDS[ NAMESPACE.'\Island'] = array( 'city' => array( 'type' => 'string', 'field-type' => 'input', 'index' => false, 'important' => true, 'order' => 100 ) ); 6
7 TŘÍDA DOKUMENTU Přidání nového modelu do seznamu entit Přidání překladu do messages object Vivo\CMS\Model\Site { title string "My Site" domain string "LUNDEGAARDNET" parent_site string "META-SITE" entity_types array ( string "MyApp\CMS\Model\Island" : object stdclass { ) 7
8 VIVO EXCEPTIONS Refaktoring stávajících tříd reprezentující výjimky Výjimky VIVO Frameworku CMS výjimky Ostatní výjimky Zachování zpětné kompatibility 8
9 STRUKTURA EXCEPTIONS 9
10 VIVO INTERFACES Refaktoring stávajících rozhraní Sjednocení pojmenování Zachování zpětné kompatibility 11 rozhrání jako je IValidator, IRaw, IConverter 10
11 VIVO VALIDATOR Refaktoring a vytvoření základní sady validátorů Transparentnější funkcionalita Jednoduchá implementace vlastních validátorů Refaktoring třídy formulářového pole (Vivo\UI\Form\Field) Některé validátory jsou označeny Zachování zpětné kompatibility 11
12 IMPLEMENTACE VLASTNÍHO VALIDÁTORU class Journalist NotUsed extends Validator { public function validate($value) { $this->errormessages = array(); $valid = COM::lookup('app/journalist')->is Available($value); if (!$valid) { $this->errormessages[] = Messages::get( CLASS.'\err_message'); return $valid; 12
13 IMPLEMENTACE VLASTNÍHO VALIDÁTORU class Journalist NotUsed extends Validator { public function validate($value) { $this->errormessages = array(); $valid = COM::lookup('app/journalist')->is Available($value); if (!$valid) { $this->errormessages[] = Messages::get( CLASS.'\err_message'); return $valid; // $field = new Field('string'); $field->addvalidator(new Vivo\Validator\ ()); $field->addvalidator(new MyApp\Validator\Journalist NotUsed()); 13
14 IMPLEMENTACE VLASTNÍHO VALIDÁTORU class Journalist NotUsed extends Validator { public function validate($value) { $this->errormessages = array(); $valid = COM::lookup('app/journalist')->is Available($value); if (!$valid) { $this->errormessages[] = Messages::get( CLASS.'\err_message'); return $valid; // $field = new Field('string'); $field->addvalidator(new Vivo\Validator\ ()); $field->addvalidator(new MyApp\Validator\Journalist NotUsed()); // $validator = new Vivo\Validator\ (); if(!$validator->validate('aaa')) { $msgs = $validator->getmessages(); throw new Vivo\InvalidArgumentException($msgs[0]); 14
15 CMS EVENTS Vyvolané události při určité akci (Vivo\CMS\Event) Nástupce implementace metod přímo ve třídě Od verze 1.2 nově 7 typů událostí 15
16 CMS EVENT Ukázka implementace události SAVE Využijeme existují třídu Island class Island extends Document { public $city; public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); CMS\Model\Entity::$FIELDS[ NAMESPACE.'\Island'] = array(/* Definice */); CMS::$event->register(CMS\Event::ENTITY_SAVE, function($entity) { ); 16
17 CMS EVENT Ukázka implementace události SAVE Využijeme existují třídu Island class Island extends Document { public $city; public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); CMS\Model\Entity::$FIELDS[ NAMESPACE.'\Island'] = array(/* Definice */); CMS::$event->register(CMS\Event::ENTITY_SAVE, function($entity) { ); 17
18 CMS EVENT Ukázka implementace události SAVE Uložení informace o probíhající akci class Island extends Document { public $city; public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); CMS\Model\Entity::$FIELDS[ NAMESPACE.'\Island'] = array(/* Definice */); CMS::$event->register(CMS\Event::ENTITY_SAVE, function($entity) { if($entity instanceof Island &&!$entity->created instanceof \DateTime) { Context::$instance->session['run'] = 1; ); 18
19 CMS EVENT Ukázka implementace události SAVE Změna stavu workflow galerie class Island extends Document { public $city; public $area; public function getmulticontenttypes() { return array( 1 => 'Vivo\CMS\Model\Content\File:text/html', 'Vivo\CMS\Model\Content\Gallery', 'Vivo\CMS\Model\Content\Component:MyApp\CMS\UI\MyComponent', ); CMS\Model\Entity::$FIELDS[ NAMESPACE.'\Island'] = array(/* Definice */); CMS::$event->register(CMS\Event::ENTITY_SAVE, function($entity) { if($entity instanceof Island &&!$entity->created instanceof \DateTime) { Context::$instance->session['run'] = 1; ); if($entity instanceof CMS\Model\Content\Gallery && isset(context::$instance->session['run'])) { $entity->state = CMS\Workflow::STATE_PUBLISHED; unset(context::$instance->session['run']); 19
20 CMS EVENT Ukázka implementace události VIEW v init.php souboru CMS::$event->register(CMS\Event::ROOT_VIEW, function($root) { if(strpos(context::$instance->script_url, '/system/manager/') === false && $root->main instanceof UI\Page) { foreach($root->main->scripts as $key => $script) { if ($script['src'] == '/Resources/Scripts/vivo.js') { unset($root->main->scripts[$key]); break; if (Context::$instance->remote_addr == ' ') { $jq = array(); $files = array('jquery.ui.widget.js', 'jquery.mobile.widget.js', //... 'jquery.mobile.init.js'); foreach ($files as $key => $file) { $jq[$key]['type'] = 'text/javascript'; $jq[$key]['src'] = "/Scripts/mobile-test/$file"; foreach($root->main->scripts as $key => $script) { if ($script['src'] == '/Scripts/jquery.mobile.min.js') { $k = $key; break; ); array_splice($root->main->scripts, $key -1, 1, $jq); 20
21 DĚKUJI ZA POZORNOST Španělská 2, Praha 2 Vinohrady Česká republika Tel.: Fax: info@lundegaard.cz ; Miroslav Hájek mhajek@lundegaard.cz Tento dokument obsahuje informace důvěrného charakteru a informace v něm obsažené jsou vlastnictvím Lundegaard spol. s r.o. Žádná část dokumentu nesmí být kopírována, uchovávána v rešeršním systému nebo přenášena jakýmkoliv způsobem včetně elektronického, mechanického, fotografického či jiného záznamu a uveřejněna bez předchozí dohody a písemného svolení Lundegaard spol. s r.o. Veškerá práva vyhrazena 2012 Lundegaard 21
VERZE 1.1.1, 1.1.2, 1.2 VIVO.LUNDEGAARD.EU
CMS LARS VIVO VERZE 1.1.1, 1.1.2, 1.2 VIVO.LUNDEGAARD.EU Jiří Tonar TWITTER #VivoMorning @LundegaardJerry ÚVOD PROGRAM SEMINÁŘE Content Management System LARS Vivo slouží ke snadnému vytváření a editaci
VIVO: NOVINKY NA FRONT-ENDU LUNDEGAARD Zdeněk Staněk zstanek@lundegaard.eu
VIVO: NOVINKY NA FRONT-ENDU LUNDEGAARD Zdeněk Staněk zstanek@lundegaard.eu VYLEPŠENÝ DATAGRID Základní vlastnosti Fixní hlavička Skrývání sloupců Procházení klávesami Nekonečné listování Kontextová menu
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ů
Č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
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
Využití OOP v praxi -- Knihovna PHP -- Interval.cz
Page 1 of 6 Knihovna PHP Využití OOP v praxi Po dlouhé teorii přichází na řadu praxe. V následujícím textu si vysvětlíme možnosti přístupu k databázi pomocí různých vzorů objektově orientovaného programování
Objektově orientované programování v PHP 5. Martin Klíma
Objektově orientované programování v PHP 5 Martin Klíma OOP & PHP 5 V PHP 5 konečně značné rozšíření OOP Blíží se to moderním programovacím jazykům jako Java nebo C# Výhody OOP Zapouzdření (nové modifikátory
Ú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
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ý
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í
NA CO SI DÁT POZOR V JAVASCRIPTU? Angular.cz
NA CO SI DÁT POZOR V JAVASCRIPTU? Milan Lempera @milanlempera Víťa Plšek @winsik Angular.cz STRICT MODE volitelně aktivovatelná omezenější varianta JS 'use strict'; a = 11; // strict mode pro celý soubor
Ekonomika v prostředí samosprávy
Ekonomika v prostředí samosprávy Martin Chmelař Competence Leader Finance Solutions, IDS Scheer ČR Agenda Celkový přehled aplikací AISMB Klíčové ekonomické části SAP ERP Vnitřní a vnější integrace ekonomických
Nové eslužby pro Brno
Jiří Hejduk Generální ředitel IDS Scheer ČR, s. r. o. Nové eslužby pro Brno Nové eslužby pro Brno Agenda 1. Společnost IDS Scheer 2. Výchozí stav a cíle projektu 3. AISMB 4. Rámcový postup zavádění AISMB
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ů
Add-on modul Microsoft Dynamics NAV. Montážní deník. manuál
Add-on modul Microsoft Dynamics NAV Montážní deník manuál 2007 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento dokument obsahuje informace důvěrného charakteru a informace v něm obsažené jsou vlastnictvím
Programování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Dědičnost objektů BI-JSC Evropský sociální fond
Add-on modul Microsoft Dynamics NAV. manuál
Add-on modul Microsoft Dynamics NAV Rozšířené účtování o majetku manuál 2007 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento dokument obsahuje informace důvěrného charakteru a informace v něm obsažené
Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM. Manuál pro administrátory. Verze 1.
Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM Manuál pro administrátory Verze 1.0 2012 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento
Třídy a objekty -příklady
Třídy a objekty -příklady 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 Příklad 1 Kvadratická rovnice static void
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 =
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
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
kontrola povinnosti údajů kontrola rozsahu čísel kontrola ové adresy, telefonního čísla nutná součást každého software
3. ročník Validace kontrola platnosti dat kontrola povinnosti údajů kontrola rozsahu čísel kontrola e-mailové adresy, telefonního čísla nutná součást každého software zamezuje zbytečnému pádu aplikace
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
Stromy. Příklady. Rekurzivní datové struktury. Základní pojmy
Základní pojmy Stromy 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 Graf uzly hrany orientované / neorientované Souvislý
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,
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
Distribuované systémy a výpočty
Distribuované systémy a výpočty X36DSV Jan Janeček Peter Macejko CORBA Common Object Request Broker Architecture - konsorcium OMG (Object Management Group) - standard pro podporu komunikace v DS - pouze
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í
Add-on modul Microsoft Dynamics NAV. Manuál
Add-on modul Microsoft Dynamics NAV Evidence nářadí a pomůcek Manuál 2010 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento dokument obsahuje informace důvěrného charakteru a informace v něm obsažené jsou
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
Stručný úvod pro programátory. Michal Kuchta
Stručný úvod pro programátory Michal Kuchta Alespoň základní znalost PHP Základy klasického OOP a jeho implementaci v PHP Schopnost oprostit se od konvenčního tvoření stránek 2 Framework pro snazší vývoj
KTE / ZPE Informační technologie
4 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Největší
public class Karel { private int position; public boolean issmiling; public int getposition() { return position;
Objekty, třídy a hierarchie tříd Interface a abstraktní třídy Dědičnost Message passing Class diagramy a příklady systémů modelovaných pomocí OOP Volba správného přístupu Rozdíl mezi asociací, agregací
RMI Remote Method Invocation
2. cvičení RMI Remote Method Invocation 2007/09 ver.2.0 1 RMI co to je? vyvolání metody z jiné JVM lokalizace vzdáleného objektu komunikace se vzdálenými objekty přenos objektu v bytecode typicky klient
Enterprise Java Beans 3.0
Enterprise Java Beans 3.0 Lukáš Zapletal liberix.cz EJB 3.0 a JPA 1.0 JavaBean - vysvětlení pojmu Java třída s get/is a set metodami má tedy vlastnosti žádné další podmínky nejsou kladeny JavaBean je tedy
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
Iterator & for cyklus
Iterator & for cyklus for (Object o : foo) funguje pokud je foo pole nebo je foo iterovatelné jako to zařídit? implementovat interface java.lang.iterable Iterable má jednu metodu java.util.iterator iterator()
Kolekce, cyklus foreach
Kolekce, cyklus foreach Jen informativně Kolekce = seskupení prvků (objektů) Jednu již známe pole (Array) Kolekce v C# = třída, která implementuje IEnumerable (ICollection) Cyklus foreach ArrayList pro
EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI
EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!
Ú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
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í
Kód, který se nebude často měnit
Factory Method Úvod - problém Mějme obchod s auty: public class OrderCars { public Car ordercar(string model) { Car car; Při přidání nového modelu je nutné upravit if(model.equals("mark IV")) car = new
Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7
Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí
Příklad aplikace Klient/Server s Boss/Worker modelem (informativní)
Příklad aplikace Klient/Server s Boss/Worker modelem (informativní) Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze A0B36PR2 Programování 2 Jan Faigl, 2015 A0B36PR2
Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);
Programovací jazyk PHP 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 Třídy a objekty Výjimky Webové aplikace
Kdyby/Events. @ProchazkaFilip
Kdyby/Events @ProchazkaFilip Co si povíme? teorie kolem eventů jak to funguje v Nette Kdyby/Events prakticky diskuze? připravte si otázky! Teorie kolem eventů Co jsou eventy/hooky? modulárnost rozšiřitelnost
Objekty v PHP 5.x. This is an object-oriented system. If we change anything, the users object.
Objekty v PHP 5.x This is an object-oriented system. If we change anything, the users object. Objektové PHP Objekty se poprvé objevili v PHP ve verzi 4. Nepříliš zdařilý pokus. Programátoři získali nedůvěru
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
Doxygen. Jakub Břečka
Doxygen Jakub Břečka Úvod Proč a typy dokumentace na přednášce Programátorská dokumentace (popis implementace, tříd, funkcí, API) Doxygen, JavaDoc, Sandcastle, AppleDoc, Doxygen = klasika mezi dokumentačními
Vý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
Java Výjimky Java, zimní semestr
Java Výjimky 1 Výjimky (exceptions) hlášení a ošetření chyb výjimka signalizuje nějaký chybový stav výjimka = instance třídy java.lang.throwable dvě podtřídy java.lang.error a java.lang.exception konkrétní
Programování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Anonymní funkce BI-JSC Evropský sociální fond
X36 WWW Šablony Martin Klíma xklima@fel.cvut.cz Čtryřvrstvá architektura Server Klient Prezentační logika Aplikační Logika Databáze 2 Výhody Jednotlivé vrstvy jsou nezávislé Lze je samostatně spravovat
Aplikace pro srovna ní cen povinne ho ruc ení
Aplikace pro srovna ní cen povinne ho ruc ení Ukázkový přiklad mikroaplikace systému Formcrates 2010 Naucrates s.r.o. Veškerá práva vyhrazena. Vyskočilova 741/3, 140 00 Praha 4 Czech Republic tel.: +420
Java Řetězce Java, zimní semestr
Java Řetězce 1 Řetězec instance třídy java.lang.string kompilátor s nimi zachází téměř jako s primit. typy řetězcové konstanty = instance třídy String nezměnitelné!!! pro změny třídy StringBuffer, StringBuilder
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ů
Delphi podstata, koncepce a metody MDI aplikace
Delphi podstata, koncepce a metody MDI aplikace Bc. Tomáš Selucký, Ústav statistiky a operačního výzkumu, Provozně ekonomická fakulta, Mendelova zemědělská a lesnická univerzita v Brně, selucky@selucky.com
Jazyk C# (seminář 6)
Jazyk C# (seminář 6) Pavel Procházka KMI 29. října 2014 Delegát motivace Delegáty a události Jak docílit v C# funkcionální práce s metodami v C je to pomocí pointerů na funkce. Proč to v C# nejde pomocí
Ad-on modul Microsoft Dynamics NAV. Pokladna. manuál
Ad-on modul Microsoft Dynamics NAV Pokladna manuál 2007 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento dokument obsahuje informace důvěrného charakteru a informace v něm obsažené jsou vlastnictvím AutoCont
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ů
Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM. Manuál pro editaci ŽS. Verze 1.
Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM Manuál pro editaci ŽS Verze 1.0 2012 AutoCont CZ a.s. Veškerá práva vyhrazena. Tento dokument
Integrace informačních systémů ve Fakultní nemocnici Brno v rámci projektu ENIS II
Integrace informačních systémů ve Fakultní nemocnici Brno v rámci projektu ENIS II 10.6.2013 Agenda Kdo je ARTiiS GROUP a.s.? Fakultní nemocnice Brno a projekt Expertní NIS Cíle. Rizika. Řešení. Jaká je
Plánování a vývoj základního frameworku
Shrnutí KAPITOLA 2 Plánování a vývoj základního frameworku Nyní, když máme jasno v tom, co nás v této knize čeká a proč, můžeme začít s vývojem našeho sociálního webu. Abychom zajistili rychlý postup vývoje,
Výchozí a statické metody rozhraní. Tomáš Pitner, upravil Marek Šabo
Výchozí a statické metody rozhraní Tomáš Pitner, upravil Marek Šabo Výchozí a statické metody rozhraní Java 8 přidává ohledně metod v rozhraní nové možnosti. Neuvidíme je tedy ve starém kódu a mnozí vývojáři
Osnova přednášky. Programové prostředky řízení Úvod do C# II. Přístup ke členům. Členy (Members)
Osnova přednášky Programové prostředky řízení Úvod do C# II. Členy (Members) Jmenné prostory (Namespaces) Třídy (Classes) Struktury (Structs) Pavel Balda Západočeská univerzita v Plzni, FAV, KKY 2 Členy
Jazyk C# a platforma.net
Jazyk C# a platforma.net Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe jazyka C# - 2. část BI-DNP Evropský sociální fond
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
(X)HTML, CSS a jquery
Prezentační vrstva webové aplikace (X)HTML, CSS a jquery jquery Java Scriptová knihovna Ing. Martin Dostal (X)HTML první stránka Textový soubor s příponou.htm nebo.html: moje
Úvod - problém. Při přidání nového modelu je nutné upravit. Kód, který se nebu de často měnit. n Mějme obchod s auty:
Factory Method Úvod - problém n Mějme obchod s auty: public class OrderCars { public Car ordercar(string model) { Car car; Při přidání nového modelu je nutné upravit if(model.equals("mark IV")) { car =
Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control)
Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control) Problém HMVC úvod MVC v určitých aplikacích nedostačující Příklad: webová stránka s widgety Např. kalendář, hodnocení,
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
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
Platforma Java. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, / 15
Platforma Java Objektově relační mapování II Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, 2016 1 / 15 Dotazování vyhledání objektu podle
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í
Dokumentový sklad. Dokumentový sklad v.1. Dokumentový sklad v.2. Koncepce skladu v.2. Petr Lampa
Dokumentový sklad v.1 Dokumentový sklad Petr Lampa První verze (2002): Ukládání diplomových prací a ročníkových projektů v PDF a PostScriptu Požadavky: Archivace dokumentů Malá četnost prohlížení Žádná
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
JavaScript v praxi: Sokoban (5. přednáška)
JavaScript v praxi: Sokoban (5. přednáška) Sokoban... Cíl Přesunout krabice tak, aby každá krabice byla na žlutém poli. Pravidla 1. Panáček se může pohybovat nahoru, dolů, doprava, doleva 2. Panáček může
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ů
Definice 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
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č
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
Jazyk C# (seminář 3)
Jazyk C# (seminář 3) Pavel Procházka KMI October 8, 2014 Motivace Největší využití v programování okenních aplikací a GUI knihoven. Data reprezentujeme pomocí objektů (tříd), máme tedy ucelený pohled na
Architektura COM. Historie Component Object Model (COM) Komunikace s komponentami Rozhraní komponent COM komponenty v.net.
Architektura COM 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 Historie Component Object Model (COM)
Definice 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
GWT pro pokročilé. MoroSystems, s.r.o. Pavel Klobása. Senior Java Developer.
GWT pro pokročilé MoroSystems, s.r.o. Pavel Klobása Senior Java Developer pavel.klobasa@morosystems.cz Obsah Co je to GWT? Návrhové vzory a užitečné knihovny Komunikace klient - server ExtGWT GWT+Spring
OMO. 4 - Creational design patterns A. Singleton Simple Factory Factory Method Abstract Factory Prototype Builder IoC
OMO 4 - Creational design patterns A Singleton Simple Factory Factory Method Abstract Factory Prototype Builder IoC Ing. David Kadleček, PhD. kadlecd@fel.cvut.cz, david.kadlecek@cz.ibm.com 1 Creational
Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 3.4.
Základy programování 4 - C# - 8. cvičení Radek Janoštík Univerzita Palackého v Olomouci 3.4.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 3.4.2017 1 / 10 Reakce na úkoly
Code Contracts. Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz
Code Contracts Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz Contracts volaná strana deklaruje, jak se chová vzniká dohoda mezi volající a volanou stranou
KIV/PIA 2013 Jan Tichava
KIV/PIA 2013 Jan Tichava Java EE JSF, PrimeFaces Spring JPA, EclipseLink Java Platform, Enterprise Edition Persistence Zobrazovací vrstva Interakce aplikací Deployment Java Persistence API Enterprise
2 Strukturované datové typy 2 2.1 Pole... 2 2.2 Záznam... 3 2.3 Množina... 4
Obsah Obsah 1 Jednoduché datové typy 1 2 Strukturované datové typy 2 2.1 Pole.................................. 2 2.2 Záznam................................ 3 2.3 Množina................................
Výjimky. Tomáš Pitner, upravil Marek Šabo
Výjimky Tomáš Pitner, upravil Marek Šabo K čemu jsou výjimky Výjimky jsou mechanizmem umožňujícím reagovat na nestandardní (tj. chybové) běhové chování programu, které může mít různé příčiny: chyba okolí:
!!Via!AUREA,!s.r.o.!
ViaAUREA,s.r.o. Lidická48,60200Brno IČ:26257700 DIČ:CZ26257700 Posledníaktualizace:25.9.2015 tel.:+420511110431 ehmail:info@viaaurea.cz 1 SPECIFIKACE%HTML%KREATIVY%...%3 1.1 COJEHTMLBANNER...3 1.2 DEFINICEPROKLIKU...4
Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky
Google Web Toolkit Martin Šurkovský, SUR096 Vysoká škola Báňská - Technická univerzita Ostrava Katedra informatiky 29. března 2010 Martin Šurkovský, SUR096 (VŠB - TUO) Google Web Toolkit 29. března 2010
Začínáme s vývojem pro Android
Pavel Petřek CTO Praha, 14. dubna 2010 Kdo je kdo Pavel Petřek Vývojář, přednášející, entusiasta světa chytrých telefonů (a velký jedlík) Spoluzakladatel Inmite Inmite Vývoj pro chytré telefony (Android:
Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3.
Základy programování 4 - C# 7. cvičení Radek Janoštík Univerzita Palackého v Olomouci 26.3.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3.2017 1 / 14 Reakce na úkoly
Seminář Java IV p.1/38
Seminář Java IV Seminář Java IV p.1/38 Rekapitulace Deklarace tříd Proměnné, metody, konstruktory, modifikátory přístupu Datové typy primitivní, objektové, pole Dědičnost Řídící konstrukce Podmínky, cykly
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í
HTTP. Webový server. generátor HTML stránek (CGI, Perl, PHP, Python, Ruby, Java, ASP.NET) zpracování požadavku/ odeslání odpovědi.
Základy jazyka PHP Martin Klíma Dynamický web Webový klient požadavek HTTP odpověď Stránka 1 Toto je dynamicky generovaná stránka x xxxx xx. zpracování požadavku/ odeslání odpovědi generátor HTML stránek