1. Milano 14/15 Marzo 2014
TYPO3 sfida il
mondo enterprise
Mauro Lorenzutti
T3Camp Italia
Il quarto evento italiano dedicato a TYPO3
2. Mauro Lorenzutti
CTO di Webformat
Sviluppatore e consulente TYPO3 dal 2004
TYPO3 Certified Integrator dal 2009
Sviluppatore di numerose estensioni, tra cui:
DB Integration (wfqbe)
Webformat Shop System (extendedshop)
TYPO3-Alfresco Connector
TYPO3-Magento Connector
Contatti:
mauro.lorenzutti@webformat.com
www.webformat.com
http://it.linkedin.com/in/maurolorenzutti
http://twitter.com/MauroLorenzutti
Pag. 2Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
3. Di cosa parleremo
TYPO3 è adatto per un progetto enterprise?
Durante il talk presenterò le funzionalità e le
caratteristiche di TYPO3 che ci hanno
permesso di utilizzarlo in progetti enterprise
E di battere la concorrenza di CMS proprietari
dai nomi altisonanti!
Pag. 3Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
4. Cos’è TYPO3?
For most people TYPO3 is equivalent to a CMS providing a
backend for management of the content and a frontend
engine for website display. However TYPO3s core is
natively designed to be a general purpose framework for
management of database content. The core of TYPO3
delivers a set of principles for storage of this content, user
access management, editing of the content, uploading
and managing files etc. Many of these principles are
expressed as an API (Application Programmers Interface)
for use in the extensions which ultimately adds most of
the real functionality
Pag. 4Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
6. Lo stack di TYPO3
Basato su Apache, PHP e MySQL
Il core espone delle API comuni usate
dalle estensioni
Fortemente modulare, anche le
funzionalità di base sono basate su
estensioni
Customizzabile via TypoScript
Sistema di templating basato su fluid,
typoscript o templavoila
Caching multilivello (supporta
memcache e caching statica)
Pag. 6Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
Fonte: http://docs.typo3.org
7. Modulare
Fortemente basato sul concetto di estensione
Gestione priorità per condivisione sorgenti tra più installazioni
Extension manager
Pag. 7Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
8. Third-party SOFTWARE as an extension
È possibile integrare software esterni sottoforma di
estensione in TYPO3, ad es:
Magento
SugarCRM
Alfresco
PhpMyAdmin
Pag. 8Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
AWStats
Horde Webmail
PhpLDAPAdmin
Ecc.
9. Third-party SERVICES as an extension
È possibile integrare servizi esterni sottoforma di
estensione in TYPO3, ad es:
Apache Solr
Dropbox
Alfresco
WebDAV
Pag. 9Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
MailChimp, ecc.
Amazon S3
Google Search Appliance
Ecc.
10. Interazioni col core
Due metodologie di
interazione:
Signal slot
Dependecy Injection
Old style:
Hooks
XCLASS
Pag. 10Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
11. FAL
FAL: File Abstraction Layer
Storage multipli, API per integrazioni (es. Dropbox, ecc.)
Domani ci sarà un talk dedicato ;-)
Pag. 11Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
12. Multilingua
Backend tradotto in oltre 30 lingue
Supporto nativo per utf-8
Pag. 12Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
13. ACL
Gestione gerarchica di gruppi (ruoli)
Configurazione permessi a livello di singolo campo nel
database
Matrice di permessi sulle pagine del sito
Accesso a sezioni limitate del sito
Accesso a lingue specifiche
Autorizzazioni di pubblicazioni contenuti
È il punto forte di TYPO3!
Pag. 13Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
14. Versioning e Workspace
TYPO3 supporta ambienti di lavoro multipli:
Live
Altri workspace
I contenuti modificati in un dato workspace non sono
visibili sul sito finchè non passano al Live
Ci possono essere versioni multiple di uno stesso
contenuto
Ogni redattore può avere accesso ad uno o più workspace
Pag. 14Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
16. Workflow
Basato sui workspace, TYPO3 fornisce un motore di
workflow per la redazione e approvazione dei contenuti
Step multipli
non limitato ai 3 step standard: editing, revisione, approvazione
Pag. 16Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
17. Autenticazione basata sui servizi
TYPO3 supporta molteplici metodi di autenticazione
sottoforma di servizio
Cosa sono i servizi in TYPO3?
Un servizio rappresenta uno dei possibili metodi per rispondere
ad una richiesta
Se un’estensione implementa un servizio deve registrarsi al
gestore di quei servizi specificando una priorità
Il gestore richiamerà in sequenza i vari servizi uno dopo l’altro
finché non ottiene risposta positiva o termina la catena
Pag. 17Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
19. Security
Team dedicato per le verifiche di sicurezza
https://typo3.org/teams/security/
Documentazione specifica per le configurazioni e lo
sviluppo di siti e moduli sicuri
http://docs.typo3.org/TYPO3/SecurityGuide/
Pag. 19Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
20. Prestazioni
Livelli di caching multipli:
Database
Memcache
Redis
File statico
…
Facile integrazione con CDN
Domani ci sarà un talk specifico su questi temi
Pag. 20Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
21. Scalabilità orizzontale
Cosa va condiviso:
Cartelle:
Typo3temp
Uploads
Database
Pag. 21Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
CDN
Cluster
22. Export contenuti in formati strutturati
È possibile configurare TYPO3 via TypoScript per esportare
i contenuti in formato XML o JSON
Pag. 22Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
JSON / XML
HTML
23. Extbase e Fluid
Extbase: Framework basato su DDD derivato da TYPO3
Flow
Fluid: nuovo template engine
Se li provi non torni più indietro ;-)
Pag. 23Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
24. Sviluppo di moduli custom
Framework ricco e ben documentato
Esteso uso di design pattern
Uso delle più moderne metodologie PHP (recentemente è
stato riscritto il core basandolo sui namespace)
Extension builder: wizard per la creazione di moduli
custom
RAD: sono disponibili tool per lo sviluppo rapido di
applicazioni senza necessità di sviluppo PHP, ad es:
DB Integration ;-)
Formidable
Pag. 24Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
26. Sviluppatori certificati
È una verifica delle competenze dei
professionisti
La certificazione è importante per:
for TYPO3 Customers
to assure the selected service supplier has the knowledge to implement a
proper and successful TYPO3 solution.
for the TYPO3 Project
to show the market that there are lots of skilled specialists offering
professional TYPO3 service
for TYPO3 Professionals
to train and test their skills and to present themselves as certified
professionals to the market
Pag. 26Mauro Lorenzutti: TYPO3 sfida il mondo enterprise
27. Conclusioni
Grazie a TYPO3 abbiamo vinto molte sfide Enterprise!
Cosa servirebbe?
Un layer di API per pilotare TYPO3 da applicativi esterni…
Pag. 27Mauro Lorenzutti: TYPO3 sfida il mondo enterprise