:::: MENU ::::

S.O.L.I.D. ovvero i 5 principi della programmazione ad oggetti

Il termine SOLID  viene utilizzato per indicare i cinque principi di progettazione orientata agli oggetti (OOD) di Robert C. Martin, conosciuto al mondo come zio Bob. I principi SOLID sono intesi come linee guida per lo sviluppo di software estendibile e manutenibile, in particolare nel contesto di pratiche di sviluppo agili e fondate sull’identificazione di code smell e sul refactoring. La parola SOLID è un acronimo che serve a ricordare tali principi (Single responsibility, Open-closed, Liskov substitution, Interface segregation, Dependency inversion), e fu coniata da Michael Feathers.

  • S – Single-responsiblity principle
  • O – Open-closed principle
  • L – Liskov substitution principle
  • I – Interface segregation principle
  • D – Dependency Inversion Principle

Continue Reading


Gerarchia visiva delle informazioni

L’obiettivo del visual design è quello di comunicare. Come organizzare e dare la priorità gli elementi veicolando informazioni preziose sulla loro importanza relativa? La gerarchia visiva aiuta la comprensione, rafforza il messaggio, e guida il lettore attraverso i contenuti.

Una gerarchia è – brevemente – un’organizzazione di elementi in diversi livelli di importanza. Attraverso dei principi di progettazione di base si sottolineano quali elementi rispetto ad altri siano più importanti e si progettano i contenuti per fornire indicazioni visive per gli elementi che stanno sullo stesso livello della gerarchia. L’organizzazione della pagina quindi crea un certo senso di ordine. Continue Reading


Gutenberg Diagram, Z-Pattern, e F-Pattern

Comprendere come gli utenti leggono sul web è fondamentale per costruire dei layout efficaci e posizionare i contenuti in modo tale da attirare più facilmente l’attenzione del lettore. Spesso la “letteratura” del design raccomanda l’applicazione di modelli di layout che consentono di ottimizzare la posizione degli elementi nello spazio. I più comuni sono il diagramma di Gutenberg, il layout z-pattern, e il layout f-pattern. Ciascuno offre dei consigli utili su come e dove posizionare le informazioni importanti, anche se spesso questi modelli vengono fraintesi e usati senza pensare a ciò che realmente descrivono. Continue Reading


Le potenzialità del framework AngularJs

La prima volta che ho utilizzato AngularJs, è stato per sviluppare un tools di disegno online utilizzando l’oggetto canvas HTML5 e, lo confesso, mi sono divertito tantissimo.

AngularJs è un potente framework Javascript, sostenuto e supportato da Google, che estende le funzionalità di base dell’HTML con nuovi attributi, e semplifica la realizzazione di applicazioni Web single page (SPAs – Single Page Applications). E’ molto semplice da imparare, è completamente scalabile e va d’accordo con altre librerie. Continue Reading


Uso semplice di node.js: chat in real time

Nel precedente articolo abbiamo introdotto node.js dicendo che il framework si presta molto bene per le applicazioni real-time. Adesso vediamo come sfruttarne le potenzialità per creare una semplice chat in real-time utilizzando le varie librerie esistenti per Node messe a nostra dispozione.

I requisiti di sistema

La prima cosa che ci serve è Node.js installato sul proprio pc. Per gli utenti Windows e Mac è possibile scaricare l’installer dal sito ufficiale www.nodejs.org oppure scaricare direttamente l’eseguibile node.exe senza bisogno di installare nulla sul proprio pc. Per gli utenti Linux è possibile utilizzare gli appositi repository e installare con apt-get nel caso di distribuzioni Debian o yum, nel caso di Fedora, CentOs o simili. Continue Reading


Node.js, cos’è e come si usa?

Node.js è una piattaforma costruita sul runtime JavaScript V8 di Chrome per sviluppare velocemente e facilmente applicazioni di rete scalabili. Node.js utilizza un modello event-driven e operazioni I/O non-blocking che lo rende leggero ed efficiente, ideale per applicazioni real-time semplici o enterprise per dispositivi distribuiti.

Dopo aver confuso le idee con questa definizione, tento di dare una spiegazione semplificata di cos’è e cosa si può fare con Node.js. Ma prima di farlo, dedico qualche minuto a voi che state leggendo e al vostro rapporto con Javascript. Continue Reading


Il Canvas in HTML5

HTML5_Logo_512Una delle caratteristiche salienti dell’HTML5 è sicuramente il nuovo elemento Canvas. Del tutto simile a qualsiasi altro tag HTML ma con l’unica eccezione che il suo contenuto viene renderizzato tramite Javascript. Canvas è quindi una “tela” digitale utilizzata per disegnare in maniera digitale. Avendo delle basi di Javascript, è possibile “disegnare” all’interno del canvas. Il funzionamento è abbastanza semplice: si definisce un <canvas> all’interno del body della pagina, vi si accede tramite Javascript, si crea un contesto e si inizia a disegnare. Fin qui, è tutto molto semplice.

Quando si utilizza un canvas, è importante capire la differenza tra l’elemento canvas e il contesto canvas (context), poichè tle differenza potrebbe portare confusione. L’elemento canvas è il tag HTML, il nodo DOM, che viene scritto all’interno di una pagina HTML. Il contesto è un oggetto con delle proprietà e metodi che puoi utilizzare per disegnare forme all’interno dell’elemento canvas. Il contesto può essere 2D o 3D. Ogni canvas contiene un solo context. Se ustiamo il metodo getContext() più volte, ritornerà come riferimento l ostesso oggetto context. Continue Reading


La proporzione divina applicata al web design

Chi non conosce il valore della proporzione divina, altrimenti detta sezione aurea? Per chi non lo sapesse è un numero irrazionale, è rappresentato dalla lettera greca Phi e vale 1,618 (solo per dare i primi tre decimali, visto che sono infiniti…).

E’ un numero importante e avvolto, se vogliamo, da un alone di mistero: è presente in natura cosi come in maestose opere architettoniche. È certo che scultori, pittori e architetti greci e romani – e, forse, ancor prima egizi – si servirono largamente della “proporzione divina”, tanto che secondo molti critici starebbe semplicemente qui il segreto dell’armonia inimitabile di quelle opere d’arte quali la Grande Piramide di Cheope, il Partenone di Atene, l’Arco di Costantino, il Pantheon di Roma, l’acquedotto di Segovia e del Gard. Queste e molte altre opere hanno dimensioni che rispettano la proporzione dell’1,618. Noi stessi siamo la prova vivente della proporzione divina. Non ci credere? Provate a misurare la vostra altezza, poi misurate l’altezza dall’ombelico al pavimento e provate a fare il rapporto dei due numeri. Non so se questo riuscirà a stupirvi, ma di sicuro il risultato si approssimerà a 1,6. E se non ci credete ancora, provate con le falangi della vostra mano…

golden-ratio-equation

Ma non voglio tediarvi ulteriormente su come si è arrivati in passato a trovare il numero (esistono infiniti articoli sul web), ma vorrei illustrare semplicemente come, questo numero divino, può essere semplicemente applicato a qualsiasi oggetto di design e cionondimeno al web design.

Un web designer dovrebbe sempre garantire ai visitatori di un sito web un certo senso naturale di ordine, armonia, equilibrio e comfort. La logica che sta alla base della proporzione divina è la convinzione che questo numero sia qualcosa di organico, universale, armonico ed esteticamente piacevole. Infatti, essendo tale rapporto evidente in molte cose esistenti nell’universo è probabile che possano migliorare notevolmente il design dei vostri progetti.

Continue Reading


SASS: Syntactically Awesome Style Sheets

Scrivere un foglio CSS di per sé può essere divertente, ma i siti si fanno sempre più grandi e complessi e di conseguenza i fogli di stile sempre più difficili da mantenere. Si ci comincia a chiedersi se c’è un modo per non ripetere un sacco di codice CSS nel foglio di stile. La buona notizia è che la soluzione esiste e si chiama pre-processore. Utilizzare metodi di pre-elaborazione fa risparmiare un sacco di tempo e fatica, perchè:

  • Consente di utilizzare variabili che possono essere riutilizzate nel foglio di stile
  • Linguaggio e sintassi di alto livello che offre numerose funzionalità avanzate
  • I file CSS vengono compilati e caricati sul server Web di produzione

Ci sono due metodi di pre-elaborazione: SASS e LESS. In questo articolo vedremo tuttavia il metodo SASS, Syntactically Awesome Style Sheets. Continue Reading


Ottimizzare lo scrolling web è possibile?

Lo scrolling di una pagina web non sembra essere qualcosa legato alle performance. In effetti, quando i contenuti di una pagina web sono stati caricati, perchè dovremmo mai preoccuparci di quello che accade quando avviene lo scroll della pagina? La ragione è semplice: quando si “scrolla” la pagina, il browser deve ridisegnare per intero la pagina nel monitor. Questo significa un dispendio di risorse in termini di calcolo che potremmo minimizzare riducendo il lavoro del browser nel ridisegnare la pagina e di conseguenza massimizzare la performance della pagina. Continue Reading


Pagine:1234567

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close