eZ Components

14
Vorstellung der eZ Components PHP Usergroup Hannover, 3.7.2008 Trilos GbR Frank Staude Königstr. 7 30175 Hannover Email: [email protected]

description

Vorstellung der eZ Components bei der PHP Userroup Hannover am 3.7.2008

Transcript of eZ Components

Page 1: eZ Components

Vorstellung der eZ Components

PHP Usergroup Hannover, 3.7.2008Trilos GbR

Frank Staude

Königstr. 7

30175 Hannover

Email: [email protected]

Page 2: eZ Components

Was sind die eZ Components

• Warum sind sie entstanden

• Bibliothek für PHP5 Anwendungen

• Kein Framework

• Open Source• Open Source

Page 3: eZ Components

Designziele

• Lose gekoppelte Komponenten,

kein „Rattenschwanz“ von Abhängigkeiten

• Test-getriebene Entwicklung

• Dokumentation• Dokumentation

• Objektorientiert „Reines PHP 5.x“

• Flexibel

Page 4: eZ Components

Status

• Homepage: ezcomponents.org

• Aktuelle Version: 2008.1 (Benötigt min. PHP

5.2.1)

• Nächste Version 2008.2 (Ende 2008)• Nächste Version 2008.2 (Ende 2008)

Page 5: eZ Components

Installation

3 Wege zum Ziel

• Download des Pakets

der manuelle Weg

• PEAR Installer• PEAR Installer

der automatische Weg

• SVN Checkout

kann unstable Code enthalten

Page 6: eZ Components

Download des Pakets

http://ezcomponents.org/download/dl_components

Das Paket der Wahl aussuchen und herunterladen.

Page 7: eZ Components

PEAR Installer

• Den „Channel“ wechseln

$ pear channel-discover components.ez.no

• Installieren

$ pear install -a ezc/eZComponents$ pear install -a ezc/eZComponents

• Update der Componenten

$ pear upgrade ezc/eZComponents

Page 8: eZ Components

SVN Checkout

• Komponenten Repository auschecken

$ svn co http://svn.ez.no/svn/ezcomponents/trunk

• Skripte auschecken

$ svn co http://svn.ez.no/svn/ezcomponents/scripts$ svn co http://svn.ez.no/svn/ezcomponents/scripts

• Setup machen$ scripts/setup-env.sh

$ scripts/setup-env.bat

Page 9: eZ Components

SVN Checkout

• Andere interessante Dinge im SVN

• Zukünftige Komponentenhttp://svn.ez.no/svn/ezcomponents/experimental

• Artikel, interne Dokumentation• Artikel, interne Dokumentationhttp://svn.ez.no/svn/ezcomponents/docs

Page 10: eZ Components

Abhängigkeiten

• PHP 5.2.1

• Extensions

– SPL

– DOM– DOM

– PDO (für Datenbankkomponenten)

– GD/Imagemagik (Image-Komponenten)

Page 11: eZ Components

Tie-Ins

Alle Komponenten sind von der BaseKlasse

abgeleitet. Komponenten haben keine

weiteren Abhängigkeiten zu anderen

Komponenten. TieIns sind eigene Komponenten. TieIns sind eigene

Komponenten die zwei bestehende zu einer

neuen Verbinden. Z.B. EventLog und Database

zu EventLogDatabaseTieIn.

Page 12: eZ Components

Komponenten

Archive

Authentication

AuthenticationDatabaseTiein

Base

Cache

Configuration

ConsoleTools

Database

DatabaseSchema

Mail

PersistentObject

PersistentObjectDatabaseSchemaTiein

PhpGenerator

Search

SignalSlot

SystemInformation

Template

TemplateTranslationTieinDatabaseSchema

Debug

Document

EventLog

EventLogDatabaseTiein

Execution

Feed

File

Graph

GraphDatabaseTiein

ImageAnalysis

ImageConversion

TemplateTranslationTiein

Translation

TranslationCacheTiein

Tree

TreeDatabaseTiein

TreePersistentObjectTiein

Url

UserInput

Webdav

Workflow

WorkflowDatabaseTiein

WorkflowEventLogTiein

WorkflowSignalSlotTiein

Page 13: eZ Components

Features

• Lazy-InitKonfiguration von Komponenten ohne diese Vollständig zu

instanzieren

• Signal-Slot Wie z.B. auch in der QT Bibliothek. Wie z.B. auch in der QT Bibliothek.

Subject-Observer-Pattern.

• ExceptionsAlle Komponenten werfen aussagekräftige Exceptions im Fehlerfall

• Virtual PropertiesStellt Typ und Wertcheck „on the Fly“ zur Verfügung bei den

Interzeptoren __get, __set und __isset

Page 14: eZ Components

Dokumentation

• Dokumentation zu jeder Version, jeder

Komponente und Tutorials zu jeder

Komponente findet man unter

http://ezcomponents.org/docshttp://ezcomponents.org/docs

• Artikel und Präsentationen gibt es unter

http://ezcomponents.org/resources