Modelli di progettazione per WordPress
Più a lungo lavori con una determinata piattaforma, più inizi a riconoscere determinati modi per fare qualcosa. Ed è molto probabile che inizierai a riconoscere due cose che queste cose possono essere fatte:
- in un modo che è veloce da sviluppare, ma più difficile da mantenere o
- in un modo che è più lento da sviluppare, ma più facile da mantenere.
Naturalmente, come qualsiasi progetto, i requisiti, i vincoli, i budget e il tempo avranno tutti un impatto su ciò che sei in grado di implementare. Ma quello che sto arrivando è che, indipendentemente da come si implementa una soluzione, si inizia a familiarizzare su come risolvere un determinato problema.
Se un problema deve essere risolto rapidamente, allora conosci i compromessi, ma probabilmente sai come farlo rapidamente. Allo stesso modo, se hai un po’ più di tempo (e budget), puoi svilupparlo in un altro modo e saprai come farlo e possibilmente anche avvolgerlo con suite di test se i vincoli lo consentono.
Indipendentemente da come devi implementare una soluzione, conosci i modi in cui puoi farlo.
E questo fa sorgere una domanda:
Esistono modelli di progettazione specifici per una determinata piattaforma? E se sì, quali sono alcuni dei modelli di progettazione che potrebbero essere disponibili in WordPress?
Modelli di progettazione per WordPress
Ovviamente, non sto parlando di modelli di design che la Gang of Four ha sviluppato così tanti decenni fa. Invece, sto parlando di modi per fare determinate cose in WordPress.
Per esempio:
- disinfettare adeguatamente le informazioni prima di scriverle nel database (per post, tassonomie, metadati e così via),
- leggere i dati dal database utilizzando l’utilità del database di WordPress (o $wpdb ),
- convalidare e restituire informazioni dal database quando richiesto,
- verificare la sicurezza di una richiesta Ajax prima di eseguire qualsiasi lavoro,
- impostare correttamente una query personalizzata e quindi reimpostarla in modo da non interferire con il ciclo principale,
- aggiungendo risorse specifiche della pagina sia nell’area amministrativa di WordPress che nel sito pubblico di WordPress,
- e così via.
Ci sono molte cose che potremmo elencare qui. Ma penso che valga la pena esplorare come potrebbero apparire alcuni di questi.
Innanzitutto, però, cosa sono i design patterns in senso classico?
Un design pattern è la forma riutilizzabile di una soluzione a un problema di progettazione. L’idea è stata introdotta dall’architetto Christopher Alexander ed è stata adattata per varie altre discipline, in particolare l’informatica.
Ho lavorato in WordPress abbastanza a lungo e ho creato abbastanza plugin e strumenti usando l’applicazione per riconoscere come fare determinate cose invece di inventare qualcosa di originale per ogni singolo progetto.
È sicuro dire, quindi, che ci sono cose riutilizzabili che possiamo impiegare in WordPress per problemi comuni? Sicuro. Dovrebbero essere generalizzati, ovviamente.
Quindi prenderò una via di mezzo su questo almeno per il bene del blog. Inizierò una serie che parlerà degli argomenti precedenti insieme ad esempi di codice.
Saranno articoli brevi e farò il possibile per assicurarmi che sia facile da seguire (con commenti e spiegazioni sul codice) e, chissà, forse questo diventerà qualcosa di più.
Non sto parlando di biblioteche
Questo non deve essere confuso con le librerie. Ricorda, le librerie sono come piccoli pezzi di software che potremmo essere in grado di eseguire in modo indipendente, oppure potrebbero essere una suite di strumenti o funzionalità che possono essere importati nel tuo progetto per aggiungere funzionalità.
In informatica, una biblioteca è una raccolta di risorse non volatili utilizzate dai programmi per computer, spesso per lo sviluppo di software. Questi possono includere dati di configurazione, documentazione, dati della guida, modelli di messaggi, codice e subroutine prescritti, classi, valori o specifiche del tipo.
Forse alcuni modelli specifici di WordPress potrebbero essere integrati nelle loro librerie, ma non è questo il punto del post.
Invece, sto semplicemente cercando di definire potenziali modelli comuni che esistono in WordPress.


