Gimme Five! Op weg naar TYPO3 5.0 'Phoenix'

Vergelijkbare documenten
Technisch Ontwerp W e b s i t e W O S I

Significante kostenreductie bij opslag bijlagen in SAP

Programmeren met databanken volgens het lagenmodel in C#

Programmeren met databanken volgens het lagenmodel in C#

Databases - Inleiding

Kadaster Data Platform. Architectuur & techniek

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Les 2 Eenvoudige queries

Portals & Open Source

Base24 database suite

Tools voor canonieke datamodellering Bert Dingemans

Zelftest Java EE Architectuur

Uitleg algemene structuur WTell

Alfresco Document Management 100% Open Source

openelectronic Health Record

SQL & Datamodelleren

Zelftest Java concepten

Service Data Objects. Wat is SDO? Dynamic data API

Portability, Interoperability of toch maar Connectivity Portability, Interoperability of toch maar Connectivity.

Handleiding installatie Enecsys uitlezen op een Synology NAS

Aansluiten op VPI. (VolmachtBeheer Producten Interface)

Nederlandse samenvatting (Dutch summary)

DATAMODELLERING ARCHIMATE DATAMODELLERING

Sparse columns in SQL server 2008

Business Intelligence. Toepassing BI Database en Datawarehouse BI proces BI Organisatie Implementatie BI

DataFlex 19.0 SQL Server

.NET of.not in de praktijk voorbij het onderbuikgevoel

Ontwikkelingen in SMB/CIFS

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober A. Snippe ICT Lyceum 1

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Technisch Rapport. BAG Extract in i-bridge2.0. Versie 1.0. Datum 9 December 2010

1. Databanken. Wat is een databank? Verschillende opslagmethodes

Rotterdamse TerugMeld Faciliteit

ORBIS SOFTWARE TASKCENTRE INTEGREERT

Data Warehouse. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Samengaan van Geo-informatie en Service Oriëntatie

Een suite van web applicaties om geografische informatie in de organisatie te presenteren

Zet de volgende stap in bedrijfsinnovatie met een Open Network Environment

Functionaliteiten 4orange Connect

Regio IJmond / Gemeente Bloemendaal

Capita Selecta Design Patterns voor administratieve applicaties

CONTAINERIZATION OF APPLICATIONS WITH MICROSOFT AZURE PAAS SERVICES

Aandachtspunten bij de transitie naar een Big Data-omgeving

TARA. of een open architectuur voor archieven. een verkenning door Karin van der Heiden en Ivo Zandhuis

Quality Automation Day

Software Test Plan. Yannick Verschueren

Invantive Producer. Als integriteit en compliance noodzakelijk is. Maar niks extra mag kosten.

Copyright IBS Nieuwbouw. Vereenvoudigd en versnelt Java ontwikkeling. Huub Cleutjens

Door: Ruud van Eeghem Datum: juni 2008 Versie: 1.0. Handleiding gebruik EPBD GIPC tool

Inhousopgave. Visio / White paper 1

Alfresco's Simple Records Management

Thinking of development

DB architectuur.

Canonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans

PR november 2009 Software, op PC gebaseerde besturing Pagina 1 van 5

Koppeling met een database

DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

Tinus Plotseling MySQL

Business intelligence & analytics van AAG

Keteininformatiemodellering op basis van Archimate

NHibernate als ORM oplossing

Magnutude 2012 Efficient BI. 18 september Joost de Ruyter van Steveninck

Linked data als klittenband voor de Basisregistraties en meer!

Digitale strategie voor nieuw Museum voor Edelsmeedkunst, Juwelen en Diamant Informatie aan Zee - 18/09/2015

SQL & Relationele datamodellen in interactieve media

Client Applicaties (Browser+Desktop) http/https. Apache Webserver. http proxy. WMS WFS Adm SLD Tomcat. Tomcat. GeoServer. PostGIS

Click to edit Master subtitle style NOIV Congres 2011 GIS Open In Verbinding. Marcel de Rink

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen

KRW-VSS en (UM)-Aquo. data standaarden in Delft-FEWS. Amersfoort, 23 April Marc van Dijk Deltares

Kleine cursus PHP5. Auteur: Raymond Moesker

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( )

Software Design Document

FileFrame Integratie campagne management

Zelftest XML Concepten

Data en Applicatie Migratie naar de Cloud

Zelftest Informatica-terminologie

Shared Data Store. Tom Demeyer, Taco van Dijk,

Agentschap NL Bodem+ naar Azure. 2 maart 2011 Microsoft Applicatie Platform Congres, Zeist

Corporate Payment Services

LSP Connect en HL7v3

Praktijk en practices

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Waarom automatiseren?

Niklas Integratie Platform Verbeteren, besparen en méér

User Profile Repository Technisch Ontwerp Versie 1.1

De Open Datasamenleving

VERA LIPS - Klantendag Ondersteuning LIPS Evolutie Dali-Platform

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling

DATAMODELLERING BASIS UML KLASSEMODEL

Transcriptie:

Gimme Five! Op weg naar TYPO3 5.0 'Phoenix'

Waarom TYPO3 5.0?

Waarom TYPO3 5.0? Enkele redenen:

Waarom TYPO3 5.0? Enkele redenen: Complexiteit De TYPO3 Core architectuur heeft zijn limiet bereikt en is moeilijk te leren

Waarom TYPO3 5.0? Enkele redenen: Complexiteit De TYPO3 Core architectuur heeft zijn limiet bereikt en is moeilijk te leren Datamodel De huidige aanpak is niet flexibel genoeg en directe database toegang (zelfs met DBAL) veroorzaakt problemen

Waarom TYPO3 5.0? Enkele redenen: Complexiteit De TYPO3 Core architectuur heeft zijn limiet bereikt en is moeilijk te leren Datamodel De huidige aanpak is niet flexibel genoeg en directe database toegang (zelfs met DBAL) veroorzaakt problemen PHP6 De nieuwe mogelijkheden van PHP6 laten een betere en ontwikkelingsvriendelijkere architectuur toe

Waarom TYPO3 5.0? Enkele redenen: Complexiteit De TYPO3 Core architectuur heeft zijn limiet bereikt en is moeilijk te leren Datamodel De huidige aanpak is niet flexibel genoeg en directe database toegang (zelfs met DBAL) veroorzaakt problemen PHP6 De nieuwe mogelijkheden van PHP6 laten een betere en ontwikkelingsvriendelijkere architectuur toe Connectiviteit Een nieuwe architectuur biedt betere mogelijkheden voor externe toegang (SOAP, WebDAV, 3 rd party tools)

Waarom TYPO3 5.0? Reden genoeg?

Waarom TYPO3 5.0? Reden genoeg? Over een bepaalde tijd zal TYPO3 10.000 extensies omvatten, variërend in kwaliteit m.b.t code en veiligheid

Waarom TYPO3 5.0? Reden genoeg? Over een bepaalde tijd zal TYPO3 10.000 extensies omvatten, variërend in kwaliteit m.b.t code en veiligheid TYPO3 wordt steeds meer toegepast in kritieke gebieden in grootschalige ondernemingen

Waarom TYPO3 5.0? Reden genoeg? Over een bepaalde tijd zal TYPO3 10.000 extensies omvatten, variërend in kwaliteit m.b.t code en veiligheid TYPO3 wordt steeds meer toegepast in kritieke gebieden in grootschalige ondernemingen Ontwikkelingsteams zullen groeien en dit vereist een meer modulair en toegankelijk systeem

Waarom TYPO3 5.0? Reden genoeg? Over een bepaalde tijd zal TYPO3 10.000 extensies omvatten, variërend in kwaliteit m.b.t code en veiligheid TYPO3 wordt steeds meer toegepast in kritieke gebieden in grootschalige ondernemingen Ontwikkelingsteams zullen groeien en dit vereist een meer modulair en toegankelijk systeem Nieuwe Cms-projecten kunnen nieuwe technologieën ongeacht erfenis gebruiken Waarom zouden wij dit niet doen?

Doelen van het project Goal!

Core doelen Creeëren van een schone code basis Behouden van de TYPO3 'ziel' Modulariteit en abstractie van de core functies Flexibele en schaalbare architectuur Gebruik van standaarden en bewezen technieken Gebruikersgemak op alle niveau's Reeel migratie pad

Uitdaging architectuur Gelaagde architectuur Pretty easy Pretty: het laagste niveau voldoet aan hoogste esthetische vereisten Easy: het hoogste niveau is eenvoudig in gebruik, zelfs voor PHP rookies Ingebouwde veiligheid Data toegang middels objecten Cross-site-scripting en SQL injecties niet meer mogelijk

Migratie & acceptatie Parallelle ontwikkeling van TYPO3 4.x en 5.0 Investering in kennis en ontwikkeling waarborgen Vroege integratie in de community Eenvoudige integratie van belangrijke onderdelen Bewezen concepten blijven behouden

NIEUWE ARCHITECTUUR

NIEUWE ARCHITECTUUR Tabula Rasa TYPO3 5.0 ontwikkeling begint 'from scratch'

NIEUWE ARCHITECTUUR Tabula Rasa TYPO3 5.0 ontwikkeling begint 'from scratch' Verbeterde coding richtlijnen en coding stijlgids met woordenlijst

NIEUWE ARCHITECTUUR Tabula Rasa TYPO3 5.0 ontwikkeling begint 'from scratch' Verbeterde coding richtlijnen en coding stijlgids met woordenlijst Sommige basiscomponenten worden ontworpen en geimplementeerd, dan worden andere componenten gevormd en met code van de 4.x branch gevuld

NIEUWE ARCHITECTUUR Componenten Vrijwel elk onderdeel van TYPO3 kan vervangen worden door een nieuwe component die dezelfde API verstrekt

NIEUWE ARCHITECTUUR Componenten Vrijwel elk onderdeel van TYPO3 kan vervangen worden door een nieuwe component die dezelfde API verstrekt Componenten hebben sub- (sub-)... componenten

NIEUWE ARCHITECTUUR Componenten Vrijwel elk onderdeel van TYPO3 kan vervangen worden door een nieuwe component die dezelfde API verstrekt Componenten hebben sub- (sub-)... componenten Elke component heeft een duidelijke interface

NIEUWE ARCHITECTUUR Componenten Vrijwel elk onderdeel van TYPO3 kan vervangen worden door een nieuwe component die dezelfde API verstrekt Componenten hebben sub- (sub-)... componenten Elke component heeft een duidelijke interface

De content repository Say What?

Huidige situatie RDBMS via DBAL Boomstructuren worden opgeslagen in verschillende tabellen Data wordt opgeslagen in tabelvelden Wanneer eigenschappen worden toegevoegd, moet een nieuw veld gemaakt worden Records worden gequeried middels SQL Abstractie op query niveau Niet alle data wordt opgeslagen in de database, maar in bestanden

Nieuwe situatie TYPO3 CR ODBMS Een Content Repository is een soort database om hierarchische data in op te slaan Bovenop een reguliere databron (MySQL, Oracle, CSV,...) Boomstructuren worden opgeslagen als knopen (nodes), data als eigenschappen Ingesloten records worden opgeslagen als subknopen (subnodes) Data kan gequeried worden middels SQL en XPATH Alle opslag en uitlezen van gegevens wordt middels objecten gedaan. Alle content (inclusief bestanden) wordt opgeslagen in de content repository

B-Trees en andere planten Say What?

Voordelen van een Content Repository Flexibele en uitbreidbare datastructuur Object gebaseerde opslag en lezen Combineert alle voordelen van een navigational en relationele databases De veiligheid kan op een hoger niveau worden afgedwongen Betere opbouw en gemakkelijker in gebruik voor de ontwikkelaar

Voordelen van een Content Repository Databron abstractie in plaats van database abstractie Dat kan op diverse manieren worden opgeslagen, een database is één van deze manieren Vanwege een hoger niveau van abstractie kunnen database specifieke functies en specialiteiten als transacties, stored procedures, partitioning... gebruikt worden op implementatieniveau van de CR Snelheid Afhankelijk van de CR implementatie kan een immense tijdswinst geboekt worden bij leestoegang van de inhoudsboom

JSR-170 Is it a rocket? Is it a plane? No, it's...

JSR-170 Is it a rocket? Is it a plane? No, it's... in ieder geval geen SUPER-GROVER

JSR-170 Java Specification Request N 170 Specificeert een standaard API om toegang te krijgen tot content repositories in Java onafhankelijk van de implementatie JCR implementaties: DAY CRX (reference implementation) Jackrabbit (open source)

JSR-170 & TYPO3? In TYPO3 5.0 willen we een content repository gebaseerd op generieke knopen en eigenschappen (generic nodes and properties) JSR-170 definieert een volledige API om zo'n repository te benaderen, inclusief Sessie afhandelingen Transacties Workspaces Waarom zouden we het wiel opnieuw uitvinden?

JSR-170 & TYPO3? De Java Bridge geeft ons de mogelijkheid om een Jackrabbit repository te benaderen vanuit PHP Dit is een tijdelijke oplossing!

JSR-170 & TYPO3? De Java Bridge geeft ons de mogelijkheid om een Jackrabbit repository te benaderen vanuit PHP Dit is een tijdelijke oplossing! TYPO3 5.0 zal zonder Java draaien door de PHP gebaseerde TYPO3 CR te benaderen, gebaseerd op de API's gedefinieerd in JSR-170

JSR-170 & TYPO3? De Java Bridge geeft ons de mogelijkheid om een Jackrabbit repository te benaderen vanuit PHP Dit is een tijdelijke oplossing! TYPO3 5.0 zal zonder Java draaien door de PHP gebaseerde TYPO3 CR te benaderen, gebaseerd op de API's gedefinieerd in JSR-170 Het doel: Een flexibele en krachtige content repository voor TYPO3, geschreven in PHP 6 TYPO3 CR gebruikt de JSR-170 interfaces waar mogelijk

He has no more to say! Bedankt voor jullie tijd!