"Se ci sono due o più modi di fare una cosa,
e uno di questi modi può condurre a una catastrofe,
allora qualcuno la farà in quel modo.

(Edward Murphy)

design pattern

Utilizzare le viste

Mer, 23/04/2014 - 16:30 -- arturu

Nell'ultimo capitolo abbiamo sviluppato i componenti che ci permettono di produrre output in base al tipo di richiesta: html, xml o json; ma, temporaneamente, abbiamo scritto il codice HTML direttamente nell'azione, in questo capitolo vedremo come separare e organizzare ulteriolmente questo aspetto utilizzando le viste (view). La soluzione ottimale è utilizzare l'action per effettuare delle operazioni logiche (es: recuperare i dati da visualizzare) e impostare quale visualizzazione utilizzare per renderizzare i dati.

Response: restituire l'output e visualizzatori

Dom, 23/03/2014 - 19:54 -- arturu

Molto spesso nelle applicazioni web si utilizzano diversi tipi di output, dal classico html al json, xml, css, js ecc. Ogni volta che si deve restituire un output, generato da un determinato input, ci si deve sempre preoccupare degli stessi problemi: validazione, sicurezza, permessi ecc, questo tipo di controlli vanno fatti anche quando dobbiamo restituire dei dati in formato json o xml.

I primi moduli: Sessione, Locale, Request, Routing e App

Dom, 09/03/2014 - 18:38 -- arturu

Nel precedente articolo siamo arrivati al momento in cui dobbiamo sviluppare i primi moduli del Core, in questo articolo ci concentreremo sullo sviluppo dei seguenti moduli: Sessione, per gestire la sessione; Locale, per gestire l'internazionalizzazione; Request, per ricevere le richieste; Routing, per gestire le richieste; infine, App per eseguire la specifica richiesta. Inoltre, per far comunicare le diverse parti del framerwork dobbiamo fare una piccola modifica ad "/app/Concerto/Config.php".

Abstract singleton

Dom, 19/01/2014 - 22:33 -- arturu

Come detto precedentemente siamo arrivati al punto in cui dobbiamo costruire i diversi gestori: sessione, locale, routing, eccetera. Anche queste classi devono essere istanziante una sola volta, tanti singleton per intenderci. Dato che non è una cosa buona scrivere tante volte lo stesso codice dobbiamo fare in modo di scriverlo una sola volta. Se ci ricordiamo, tra le linee guida, al primo punto avemo stabilito: "...

Gestione delle Eccezioni

Dom, 19/01/2014 - 14:40 -- arturu

La gestione delle Eccezioni ci permette di avere degli strumenti molto agili nella gestione degli errori. In PHP ormai è un argomento conosciuto e strausato, come prima cosa estendiamo la classe "Exception" di PHP, così successivamente possiamo personalizzare la gestione degli errori come meglio ci piace, e aggiungiamo un blocco tray/catch nell'index.php.

/app/Concerto/Eccezione.php

Namespaces

Sab, 18/01/2014 - 02:18 -- arturu

Il concetto è molto semplice, una prima idea ce la siamo fatta con "Autoloader.php". Senza fare acrobazie filosofiche, molto praticamente, possiamo immaginare il namespace come un percorso, il percorso relativo alla cartella che contiene la classe. Attualmente dichiariamo e istanziamo le classi nel seguente modo:

Singleton - File di configurazione

Dom, 05/01/2014 - 01:12 -- arturu

Prima di iniziare a fare altro ci dobbiamo costruire un oggetto che memorizzi le impostazioni del nostro Framework. Questo nostro oggetto dovrà avere una caratteristica importante: dovrà essere istanziato una sola volta. Questa caratteristica è fondamentale in quanto durante l'esecuzione dell'applicazione le impostazioni della piattaforma saranno richiamate più volte e rischiamo di modificare copie diverse dell'oggetto invece che "l'originale".

Pagine

Abbonamento a RSS - design pattern