Quanti moduli servono per realizzare un progetto?

5 contenuti / 0 new
Ultimo contenuto
Quanti moduli servono per realizzare un progetto?

Faccio a tutti DOMANDA CURIOSA: che livello di complessità raggiungono i progetti che siete soliti realizzare in Drupal?
OVVERO: Quanti moduli, quante tipologie di dati?

Moti scrivono progetti con più di 150 moduli. Io con molti meno moduli ho realizzato un portale giornalistico e mi chiedo se le mie strategie sono state adeguate al contesto oppure no.

Credo faccia parte del concetto di best pratices evitare di aggiungere moduli indiscriminatamente, ma non so realmente quando darsi un freno e quando no. Faccio un esempio, un sito i Drupal 5 fatto da un mio collega si compone di più di 100 moduli. Per passare a D6 stiamo perdendo la testa, questo perché molti moduli di D6 non sono compatibili con quelli di D5, altri non esitono in D6 ma solo in D5, altri sono abbandonati.

Vorrei raccogliere un po' di opinioni. Datemi una mano a capire.

Grazie.

per un portale con :

  1. gestione immagini + gallery
  2. SEO (page_title, pathauto, token, transliteration...)
  3. altre funzionalità di ottimizziazione
  4. moduli custom per integrazione con servizi terzi (twitter, facebook, gmaps, ganalytics)
  5. altro

il risultato è:

mysql> select count(name) from system where type="module" and status=1;
+-------------+
| count(name) |
+-------------+
|          88 |
+-------------+
1 row in set (0.00 sec)

il numero di nodetype è 4.

Fatti il conto che molti moduli custom potrebbero essere fusi (del tipo un modulo con una funzione sola...) ma attualmente non ho moltissimo traffico e ancora lo gestisco bene :-)

Credo che per realizzare un progetto siano sufficienti i moduli cck, views e panel e qualche loro plugin. Gia così e con un po più di personalizzazione a mano si possono raggiungere ottimi risultati (personalmente con questi 3 moduli faccio quasi tutto ciò che voglio, spesso anche cose per cui sarebbe necessario installare un modulo aggiuntivo. POI dipende dal progetto ovviamente: se gestisce immagini allora imageapi e imagecahe diventano fondamentali, e così via a seconda della specializzazione del progetto.

Tutorial, guide e moduli per drupal su www.cmswiki.net

E' molto interessante la query che suggerisce eliosh. Ho provato a lanciarla su un progetto al quale sto lavorando e che considero di media dimensione e la risposta è stata questa: 45 moduli (il sito gestisce filmati col modulo SWF e gallerie di immagini con image gallery).

E' mia abitudine cercare di ridurre al minimo l'utilizzo dei moduli, per la sensazione che ho che l'aumento dei moduli rappresenti l'aumento della complessità del progetto e la difficoltà a gestirne le varie sottoparti. Certi rallentamenti, inoltre, credo siano dovuti al fatto che molti moduli significa molto codice PHP che si attiva in corrispondenza di determinati eventi.

E' giusto porsi il problema della complessità quando si parla di Drupal? Io credo di sì: lavoro ad un progetto in D5 per il quale la queru di eliosh mi restituisce 118 moduli. Ci vorranno mesi per passarlo a D6! Qualcuno qui ha mai dovuto affrontare un problema simile?

Gianfranco Fedele
Software Analist and Developer
at Insem spa

http://www.linkedin.com/in/gianfrasoft

Ridurre il numero di moduli è importante:

  1. riduci gli include_once che son comunque pesanti (a meno di usare APC con determinati flag attivati)
  2. riduci la dimensione totale del codice caricato

Per il punto 2, in realtà, basta modulare bene il codice scritto.
Faccio un esempio: un modulo custom creato per un sito di ecommerce l'ho spacchettato in qualcosa come 6/7 file, ovvero: file di tema generico, file di tema per le email, file con le form per la configurazione, file per le funzioni di frontend, file per le funzioni di backend, file .module con i soli hook importanti e con le funzioni generiche usate dagli altri moduli.

Ovviamente una scelta del genere è un'arma a doppio taglio, nel senso che da un lato riduci la dimensione dei file caricati (si caricano solo quelli che effettivamente servono) ma al contempo si aumenta il numero di include() da eseguire.

Cmnq, traslocare da D5 a D6 è un'impresa, che però può dare belle soddisfazioni :-)
La risposta è no, mai fatta prima d'ora. Ma mi toccherà da adesso a un anno :-(