Browsing posts in: Development

Machine Learning

Machine Learning (o Apprendimento Automatico) rappresenta un insieme di metodi sviluppati a partire dagli ultimi decenni del XX secolo che porta i computer ad apprendere e agire come fanno gli umani, migliorare in modo autonomo il loro apprendimento nel tempo, “alimentandoli” con dati e informazioni sotto forma di osservazioni e interazioni reali.

Varie comunità scientifiche hanno utilizzato nel tempo diversi nomi quali statistica computazionale, riconoscimento di pattern, reti neurali artificiali, filtraggio adattivo, teoria dei sistemi dinamici, elaborazione delle immagini, data mining, algoritmi adattivi, ecc. Tutti sinonimi per indicare l’applicazione di metodi statistici al fine di migliorare progressivamente la performance di un algoritmo nell’identificare pattern nei dati. Continue Reading


La programmazione ad oggetti spiegata a mio figlio

Quali sono i principi fondamentali della programmazione orientata agli oggetti? È uno di quegli argomenti che viene chiesto così spesso che un informatico non può permettersi di non sapere. Come le classiche domande banali in un colloquio, anche questa serve principalmente a scoprire il grado di preparazione di un candidato o il livello di comprensione di un argomento.

Ma torniamo a noi… Quattro principi basilari: incapsulamento, astrazione, eredità e polimorfismo.

Queste parole possono sembrare spaventose per uno sviluppatore junior. E le complesse spiegazioni eccessivamente lunghe di Wikipedia a volte non aiutano ma raddoppiano la confusione. Per questo motivo, questo articolo è dedicato ad una spiegazione semplice, breve e chiara per ciascuno dei 4 concetti, come se davanti a me ci fosse mio figlio. Continue Reading


Come costruire un motore di ricerca basato su MySQL

Nei siti web content-heavy (con molti contenuti), è importante dare la possibilità di poter effettuare ricerche in grado di aiutare gli utenti a trovare esattamente ciò che stanno cercando. La soluzione più ovvia è la ricerca diretta all’interno delle tabelle del database MySQL. Tuttavia, l’implementazione di una ricerca MySQL generica non è affatto banale. Ecco come evitare insidie ​​e creare un motore di ricerca robusto basato su MySQL.

MySQL è un database relazionale, non un motore di ricerca. Sebbene fornisca alcuni strumenti per cercare all’interno delle tabelle, è meglio integrare un vero motore di ricerca se stai cercando una soluzione a tutti gli effetti. Alcuni dei più popolari motori di ricerca (open source) sono:

Le opzioni di cui sopra sono sicuramente di gran lunga superiori, tuttavia potrebbe avere senso costruire un motore di ricerca basato solo su MySQL, magari per evitare l’installazione e la manutenzione di software aggiuntivo o perchè il nostro hosting ha risorse limitate. Continue Reading



React, da dove iniziare?

Nel precedente articolo, ho parlato di DOM e Virtual DOM e di quali potenzialità quest’ultimo offre agli sviluppatori per creare interfacce dinamiche performanti e veloci. Tutto questo può avvenire grazie alla libreria React.

In questo articolo, proverò a spiegarti i concetti fondamentali di React attraverso un esempio step-by-step su come creare una semplice app. Si presuppone che tu abbia già conoscenza del linguaggio Javascript e che abbia installato l’ambiente NodeJs. Continue Reading


Una panoramica su React

React è una potente libreria Javascript per creare applicazioni dinamiche e interattive efficienti. In questo articolo vedremo una breve panoramica di ciò che può fare React, partendo da un esempio costruito da zero, senza utilizzare strumenti o ide particolari, ma solo un semplice notepad.

Continue Reading


React, DOM e DOM Virtuale: quali differenze?

Prima di parlare di DOM Virtuale e React, cerchiamo di fissare un paio di concetti: DOM sta per Document Object Model ed è un’astrazione di un testo strutturato.

Per gli sviluppatori web, questo testo è una semplice pagina HTML, e il DOM è semplicemente chiamato DOM HTML. Gli elementi di HTML diventano nodi nel DOM.

Quindi, mentre l’HTML è un testo, il DOM è una rappresentazione in memoria di questo testo. Potremmo confrontarlo alla stregua di un processo informatico, che si tratta di un’istanza di un programma. Possiamo avere più processi dello stesso programma, cosi come possiamo avere più DOM dello stesso codice HTML (ad esempio la stessa pagina caricata su molte schede). Continue Reading


Blockchain: un’introduzione

Al giorno d’oggi si sente molto parlare di Bitcoin… E’ probabile che pure tu che stai leggendo ne hai già sentito parlare. Bene, la blockchain è la tecnologia di base che sta dietro Bitcoin. Ma cosa è veramente? Concettualmente è abbastanza semplice: si tratta di un database distribuito che mantiene un elenco di record ordinati in continua crescita. Ovviamente, come Internet (o la tua auto), non hai bisogno di sapere come funziona la blockchain per iniziare ad usarla, ma attraverso questo articolo cercherò di spiegarti il motivo per cui questa tecnologia è considerata rivoluzionaria.

Continue Reading



Il protocollo HTTP/ 2

Hypertext Transfer Protocol (HTTP) è il protocollo che regola la connessione tra il server e i browser web degli utenti. Per la prima volta dal 1999 (quando fu rilasciata l’attuale versione HTTP/1.1) si parla di una nuova versione di questo protocollo che promette siti web molto più veloci e performanti.

I siti web nel 1999 erano molto diversi dai siti web di oggi. Alcuni studi effettuati da Daniel Sternberg osservano che la quantità di dati necessari per caricare la home page di un sito web medio è di 1,9 MB, con oltre 100 risorse individuali necessarie per visualizzare una pagina. Una “risorsa” può essere un’immagine, un testo, un file JavaScript o CSS. Purtroppo HTTP/1.1 non è molto ottimizzato quando recupera il grande numero di risorse necessarie per visualizzare un sito web moderno. Come vedremo, molte delle best practise sulle prestazioni sono create proprio per sopperire alle limitazioni di HTTP/1.1.

Continue Reading


Pagine:12345

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi