Introduzione
medio
1.1 Architettura Zope
-
Zope è una piattaforma
Zope sgrava lo sviluppatore da gran parte dei dettagli onerosi tipici dello sviluppo di un’applicazione Web, come la persistenza dei dati, l’integrità ed il controllo degli accessi, permettendo quindi di concentrarsi sul problema in sé. L’utilizzo degli strumenti messi a disposizione, inoltre, è reso molto più veloce rispetto ad altri linguaggi o piattaforme. Zope consente di scrivere la logica dell’applicazione web in linguaggio Python, e fornisce il supporto aggiuntivo per il linguaggio Perl. Zope offre anche due soluzioni alternative che permettono di strutturare il testo, XML e HTML: il Document Template Markup Language (DTML), e le ZPT (Zope Page Templates, modelli di pagina).
-
Zope è orientato agli oggetti
A differenza dei comuni sistemi Web basati su file, come ASP o PHP, Zope è una piattaforma di sviluppo fortemente “orientata agli oggetti”. L’orientamento ad oggetti è un concetto condiviso da molti linguaggi di programmazione, compreso Python, con il quale Zope è implementato. Se siete dei programmatori abituati ai linguaggi procedurali, tipicamente usati per la programmazione web, come Perl o PHP, tale idea potrebbe richiedere del tempo per essere assimilata.
-
Componenti fondamentali di Zope
-
ZServer
Zope è distribuito con un web server integrato che fornisce i contenuti per sé e per i propri utenti. Questo web server fornisce contenuti anche via FTP, WebDAV, e XML-RPC (servizio web per la chiamata di procedure da remoto).
-
Web Server
Probabilmente avrai già un web server, come Apache o Microsoft IIS e potresti non volere usare quello di Zope. Zope funziona anche con questi e tutti gli altri web server che supportano la Common Gateway Interface (CGI).
-
Zope Core
E' il meccanismo che coordina tutto, gestendo l’interfaccia web ed il database ad oggetti.
-
Object Database
Quando usi Zope, solitamente lavori con oggetti memorizzati nel database ad oggetti di Zope.
Zope è costituito da molti componenti che lavorano insieme per aiutarti a costruire un’applicazione web. I componenti fondamentali di Zope sono mostrati nella figura sotto, e spiegati di seguito.
-
-
Relational Database
Se non si intende memorizzare le proprie informazioni nel database ad oggetti di Zope, puoi usare altri database relazionali come Oracle, PostgreSQL, Sybase, MySQL ed altri.
-
File System
Zope può naturalmente utilizzare documenti ed altri file memorizzati sul filesystem del proprio server.
-
Zclasses
Zope consente agli amministratori del sito di aggiungere nuovi tipi di oggetto attraverso l’interfaccia Web. Questi tipi di oggetto sono denominati Zclasses.
-
Products
L’aggiunta di nuovi tipi di oggetto è possibile anche attraverso l’installazione di “Prodotti” nel filesystem del server di Zope.
1.2 Cenni su hardware ed ottimizzazione
-
Requisiti hardware
L'architettura Zope/Plone richiede almeno 512Mb di ram per funzionare correttamente ma è consigliato almeno 1Gb per servizi in produzione.
1.3 Scelta del sistema operativo
La maggior parte delle distribuzioni GNU/linux si presta molto bene per ospitare un ambiente Zope/Plone ma per limitare al massimo imprevisti e/o incompatibilità offerte da Zope raccomandiamo un ambiente basato su Debian.
1.4 Riferimenti web
-
Installazione di un sistema di produzione:
http://plone.org/documentation/tutorial/robust-installation/tutorial-all-pages
-
Installazione di Zope Plone su Fedora Core 5
