Aleš Rybák, Jiří Kadlec. Pluginy budoucnosti



Podobné dokumenty
Architektura aplikace

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz

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


VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu

DATA ARTICLE. AiP Beroun s.r.o.

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Aplikovaná informatika

PV239/WP. Vývoj univerzálních Windows Store aplikací. Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP

Co by měl umět dobrý vývojář. Petr Adámek Home Credit International a.s.

Systémová administrace portálu Liferay

Statická analýza kódu - za kód bez chyb

PHP Best Practices. Please try to fit your code to 80 columns. That's decimal 80. A. Morton

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

INFORMAČNÍ SYSTÉMY NA WEBU

ZÁVĚREČNÁ STUDIJNÍ PRÁCE dokumentace

Část 1 Moderní JavaScript

IS pro podporu BOZP na FIT ČVUT

Technologie Java. Jaroslav Žáček

Microsoft Office 2003 Souhrnný technický dokument white paper

RETAIL PROCESS TRACKER VIZUALIZACE OBCHODNÍCH PROCESŮ VAŠEHO INFORMAČNÍHO SYSTÉMU

Převod LN aplikace do xpages

MYBIZ - Řešení pro zpřístupnění dat ze stávajících aplikací na mobilních zařízeních (Mobilize your business!) Požadavky zákazníka.

KIV/PIA Semestrální práce

KIV/PIA 2013 Jan Tichava

KAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče.

1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008)

PODNIKOVÁ INFORMATIKA

Webové komponenty v open source CMS

1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití:

Propojení 3D modelování budov a INSPIRE na příkladu vizualizace dat o hlukové zátěži Tomáš EZNÍK, Lukáš HERMAN Laborato

Technická dokumentace

Možnosti interaktivní prezentace prostorových modelů na internetu

Řízení ICT služeb na bázi katalogu služeb

Aplikační rámce. Jakarta Struts Framework. Obsah přednášky. Aplikační rámce a knihovny. Co je to aplikační rámec? Enterprise Java Beans

JAK ZVÝŠIT OBRAT E-SHOPU O 20%?

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP

E LEARNINGOVÁ WEBOVÁ APLIKACE PRO VÝUKU BIOMEDICÍNSKÉHO INŽENÝRSTVÍ Petr Huňka

Co se chcete dozvědět?

Novinky v oblasti SAP Mobility. Martin Zikmund, Presale Mobility Platforms Miroslav Řehoř, Account Executive

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

Přehled systému Microsoft SQL Server. Komu je kniha určena Struktura knihy Nejvhodnější výchozí bod pro čtení knihy Konvence a struktura knihy

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

Značkovací jazyky a spol. HTML/XHTML XML JSON YAML Markdown, Texy!

Olga Rudikova 2. ročník APIN

Kartografická webová aplikace. Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Architektury informačních systémů

Architektury informačních systémů

Sem vložte zadání Vaší práce.

Více dynamiky vašim procesům

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

<Insert Picture Here> Vývoj portálových řešení v Javě

Různé tváře WebSphere Portal

Aplikační rámce Jakarta Struts Framework

IBM Software Group IBM - SWG. Petr Chmelik WebSphere, IBM ČR a SR. Name Title Company IBM Corporation

IBA CZ průmyslový partner FI MU

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

IBA CZ průmyslový partner FI MU

RESTful web service v Javě

Přizpůsobení JSTL pro Google App Engine Datastore

Migrace informačního systému MS Dynamics CRM na vyšší verzi

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Obsah. Rozdíly mezi systémy Joomla 1.0 a Systém Joomla coby jednička online komunity...16 Shrnutí...16

Elektronická podpora výuky předmětu Komprese dat

DATAMINING SEWEBAR CMS

Statistica, kdo je kdo?

APLIKACE XML PRO INTERNET

Obsah. Úvod 15 Poděkování autora 16 Zpětná vazba od čtenářů 17 Zdrojové kódy ke knize 17 Errata 17. Představení Drupalu 19

Průvodce instalací a spuštěním. Pro DataPage+ 2012

Maturitní otázka webové stránky (technologie tvorby webu) Co znamená pojem Web? Web, www stránky, celým názvem World Wide Web,

Úvod do Groovy pro Java experty

Informační systém pro rezervaci pokojů hotelu SPORT

Rozhraní pro tvorbu doplňků v moderních prohlížečích. Martin Straka martin.straka@nic.cz

Integrace podnikových Open Source aplikací v praxi. RNDr. Petr Novák, Open Source Conference Praha, 19. duben 2011

PROJEKT ININ, 1 ČÁST 1 ORACLE APEX. Martin Šimeček (kruh 258), prosinec 08

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

Sem vložte zadání Vaší práce.

HMI * nad webovými technologiemi

Katalog služeb a podmínky poskytování provozu

Python XML a Web 1 PGS

Dynamické programovací jazyky

Požadavky pro výběrová řízení TerraBus ESB/G2x

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

EXTRAKT z technické specifikace ISO


RESTful API TAMZ 1. Cvičení 11

Příloha č. 18. Specifikace bloku PŘÍPRAVA. Příloha k zadávací dokumentaci veřejné zakázky Integrační nástroje, vstupní a výstupní subsystém

Instalace produktu Ontopia. ver (open-source verze)

MBI - technologická realizace modelu

2002 Magister (Mgr.), studijní program: matematika, specializace matematikamanagement

Content Management Systems

Diagnostika webových aplikací v Azure

BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS STANISLAV SEHNAL

Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE. Petr Vávro. Šablonovací systém pro generování textových dokumentů

Platformy / technologie. Jaroslav Žáček

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ SPOLEČNOST DECADIC PROJEKT FRAMETRIX

Transkript:

Aleš Rybák, Jiří Kadlec Pluginy budoucnosti

Jak se vyvíjel Liferay 4000000 3500000 3000000 2500000 2000000 1500000 1000000 500000 50 k Java LOC 2,1 M Java LOC YAML XSLT XSD XML Velocity Template Language SQL SASS Maven JSP JSON Javascript Java HTML DTD CSS Ant 0 v1.7.5 v1.9.5 v2.2.5 v3.6.1 v4.4.2 v5.2.3 v6.0.6 v6.1.2 v6.2.2 v7.0-m4 2

3

Problém 2015 IBA CZ, s. r. o. Pluginy budoucnosti 4

K tomu naše aplikace 5

Problémy Není možné určit pořadí či závislosti mezi aplikacemi 6

Problémy Sdílení dat a funkčností mezi aplikacemi 7

Problémy Balancujeme mezi Liferay a aplikačním serverem 8

Problémy Úpravy pomocí hooků jsou křehké Úpravy JSP, které obsahují logiku ve scriptletech 9

Problémy Úpravy pomocí Ext pluginu jsou považovány téměř za sebevraždu Významnější změna znamená nutnost regresního testování Při každém fixu, každém updatu a každé změně je nutno provádět kontrolu na kolize 10

Rozbili nám Liferay 11

12

Co je OSGi? Sada specifikací Modulární systém Moduly mají definované rozhraní Moduly skrývají implementaci Moduly mezi sebou komunikují pomocí služeb 13

Transformace směrem k OSGi aneb ze které strany do toho praštit 14

Liferay jak ho známe 15

Liferay jak ho známe 16

Liferay jak ho známe 17

Liferay po novu 18

Liferay po novu 19

Liferay po novu 20

Liferay po novu 21

Liferay po novu 22

Liferay po novu 23

Liferay po novu 24

Liferay do budoucna 25

Liferay cílový stav 26

Demo 27

Výhody 28

Výhody Jednodušší distribuce oprav 29

Výhody Sémantické verzování 30

Výhody Definice nových bodů pro rozšíření 31

Výhody Možnost odstranit nepotřebné moduly 32

Výhody Možnost rozdělit zodpovědnosti za moduly paralelizace vývoje lepší a stabilnější rozhraní díky Conwayovu zákonu 33

Jak do toho zasadit vlastní aplikace? 34

Portletové aplikace Změna vzhledu Změna funkcionality Přidání funkcionality 35

Chci mít portál podle sebe 36

Jak tomu bylo do nedávna JSP Hooks Přímá úprava kódu jednotlivých komponent Liferay. Liferay poskytne mechanismus, jak tento nový kód použít místo originálu. Co je na tom špatně Je to křehké. Musí to dělat programátor (obsahuje logiku i vzhled). Nelze udělat více úprav do stejného JSP. Málo flexibilní nelze to vyklikat za běhu. Komplikace při patchování Liferay. 37

Úpravy vzhledu 38

Jak to jde nyní JSP Hooks Stále jsou k dispozici Mají v některých případech smysl. ADT Application Display Templates Umožňuje změnu šablony zobrazení portletu. Velocity Freemarker Správa šablon probíhá přímo z UI Liferay. V portálu od verze 6.2 Šablony se dají přenášet a znovu použít. 39

ADT kde se vzalo Staví na zaběhnutých technologiích DDM (Dynamické datové listy struktura pro zobrazení) Template engine Přidává Administrační portlet pro správu šablon Možnost předat vlastní kontext šabloně. 40

ADT jak to funguje ADT Šablona Management Template Engine Data 41

ADT zhodnocení Proč je to správně: Vysoce flexibilní Lze vytvořit/měnit přímo v UI portálu. Jednodušší na správu zvládne i content editor. Dá se znovupoužít (Marketplace). Aplikovatelné na vlastní portlety (je to Framework). Site scopable různé šablony per site. Kde to nejde: Podpora se neustále rozšiřuje, ale pořád jsou portlety, kde nelze použít. Starší custom portlety toto zatím nemají. Upravuje vzhled zobrazení, nikoliv editace. Proto máme pořád JSP Hooks. 42

43

Nové hooks LF 7 Motivace: Jak vyřešit problém upgradů? Jak umožnit dodávat hooks více dodavatelům? Hooks musí být stabilní, nikoliv křehké. View a model musí být lépe oddělen. Možná řešení: Views model Extensible tag points View extension points 44

View models 45

Extensible tag points <aui:form 46

Úpravy funkcionality 47

Portletové aplikace 48

Kdy tam budeme, co ještě chybí Portlety do OSGi lze nasadit. Nesplňují však spec portlet 2.0 (tj. nestandardní způsob) Chybí dokumentace Již lze využít potenciál OSGi, ale zatím nejsou dotaženy best practices. 49

Audience targetting 50

Audience targeting Plugin budoucnosti Skládá se s OSGi modulů Jednoduše rozšiřitelný pomocí nových modulů (OSGi) Rules Tracking actions Reports Co to umí Segmentace uživatelů na základě pravidel. Zobrazování WCM na základě uživatelských segmentů. Vytváření kampaní. Sledování chování uživatele. Reporting. Co je za tím? OSGi moduly pro jednotlivé funkce Freemarker pro frontend Nové portlety pro zobrazení dle segmentů. 51

Děkujeme 52