CMS LARS VIVO VERZE 1.2 Z POHLEDU VIVOJÁŘE
|
|
- Kamila Kubíčková
- před 5 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
VíceVIVO: 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
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íceČ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íceAlgoritmizace 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íceVyuž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í
VíceObjektově 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
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í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í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íceNA 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
VíceEkonomika 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
VíceNové 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
VíceSeznamy 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íceAdd-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
VíceProgramová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
VíceAdd-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é
VíceTento 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
VíceTří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
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ícePokud 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ícetypová 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ícekontrola 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
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íceStromy. 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ý
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íceDistribuované 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
Více14.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íceAdd-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
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íceStruč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
VíceKTE / 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ší
Vícepublic 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í
VíceRMI 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
VíceEnterprise 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
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íceIterator & 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()
VíceKolekce, 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
VíceEVROPSKÝ 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!
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í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íceKó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
VícePascal. 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í
VícePří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
VíceTří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
VíceKdyby/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
VíceObjekty 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
VíceJazyk 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íceDoxygen. 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í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íceJava 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í
VíceProgramová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
VíceX36 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
VíceAplikace 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
VíceJava Ř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
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íceDelphi 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
VíceJazyk 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í
VíceAd-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
VíceRozhraní 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íceTento 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
VíceIntegrace 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
VícePlá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íceVý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
VíceOsnova 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
VíceJazyk 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
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íce(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
VíceÚ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 =
VíceHiearchical 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í,
VíceProjekty 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í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ícePlatforma 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
VíceTabulka 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íceDokumentový 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á
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íceJavaScript 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
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í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íceZá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íce1. 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íceJazyk 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
VíceArchitektura 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)
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íceGWT 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
VíceOMO. 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
VíceUniverzita 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
VíceCode 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
VíceKIV/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
Více2 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íceVý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í:
Více!!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
VíceGoogle 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
VíceZačí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:
VíceUniverzita 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
VíceSeminář 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
Více5 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íceHTTP. 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
Více