Carlo Pelliccia - Pagina Web personaleCarlo a fumetti

Un motore di ricerca fai-da-te, su ioProgrammo 183

Notizia pubblicata il 10 Febbraio 2013, alle ore 15:37

ioProgrammo 183

In edicola trovate ioProgrammo 183, il numero di Febbraio della rivista.

Ci sono due miei articoli all'interno, e sono proprio i due che si spartiscono la copertina del numero.

Google fai-da-te: creiamo un motore di ricerca
Si tratta dell'articolo che, senza dare troppi dettagli, ho anticipato nel mio post precedente: una lunghissima cavalcata (ben 14 pagine), alla scoperta di come si realizza un motore di ricerca. Non un motore di ricerca semplice, come possono essere quelli utilizzati per cercare contenuti nell'archivio di un blog o di un piccolo sito, ma un vero e proprio motore di ricerca per il Web, a là Google, per capirci (ecco il perché del titolo scelto poi dalla redazione). Tre sono i componenti in gioco: la progettazione di un archivio efficiente, lo sviluppo di uno spider che se ne vada in giro per il Web ad indicizzare siti e pagine, e la costruzione di un'interfaccia di interrogazione, attraverso la quale gli utenti possono svolgere le loro ricerche. Diverse sono le tecniche discusse: si parte con l'organizzazione dei dati, al fine di ottenere di un database relazionale idoneo ed efficiente, per passare poi alle tecniche da applicare durante le fasi di indicizzazione e la ricerca. Imparerete cosa sono le stop word, cosa significa stemming, e come si possono costruire strategie di rilevanza dei risultati. Si arriva infine a programmare una routine che calcola la popolarità delle pagine indicizzate, al fine di assegnare loro una precedenza durante l'estrazione dei risultati di una ricerca, emulando in maniera semplificata l'algoritmo Page Rank che ha decretato il successo di Google. Attenzione: non si tratta di sola teoria. Come sempre, tutto è corredato da fiumi di codice, ben documentato e commentato riga dopo riga. Al termine del tutorial, quindi, ci si trova ad aver realizzato insieme tutti i componenti descritti nel corso delle pagine precedenti. Le tecnologie utilizzare per l'implementazione sono Java e MySQL.
Mi sono divertito molto nel realizzare questo articolo un po' diverso dal solito, e credo che anche voi potrete divertirvi nel comprendere un po' più a fondo come lavora un vero motore di ricerca. Non perdetelo!

Andiamo alla scoperta di Android 4.2
Già qualche mese fa avevo assolto il compito di spiegare agli sviluppatori Android le novità di Jelly Bean rispetto al suo predecessore Ice Cream Sandwich. Adesso svolgo nuovamente lo stesso ruolo, raccontando cosa cambia dalla prima release di Jelly Bean (Android 4.1) alla seconda e più recente (Android 4.2). Le novità, questa volta, sono un po' meno sostanziose (si tratta pur sempre di una minor release), ma comunque molto interessanti. Il focus, in particolar modo, viene messo sui daydream e sui lockscreen widget.
Un daydream, nel gergo del nuovo Android, è un po' l'equivalente di un salvaschermo su un PC tradizionale, anche se un daydream può svolgere anche altri compiti oltre a quello di evitare che il display si rovini. Entra in funzione quando il device viene messo in carica, o quando lo si aggancia ad un display secondario. A differenza di un comune salvaschermo, un daydream può anche essere intererattivo: l'utente può interagire con esso come se si trattasse di un'applicazione.
Un lockscreen widget, invece, è un widget simile a quelli che si possono posizionare a piacimento sulla home screen di qualunque dispositivo Android, con la differenza che può essere posizionato sul lockscreen, ovvero sulla schermata di sblocco del telefono o tablet. Attraverso un lockscreen widget, quindi, si possono realizzare funzioni che l'utente può visualizzare e sfruttare anche quando il suo telefono è bloccato.
Sulla rivista e sul CD-Rom allegato troverete esempi di implementazione sia di un daydream che di un lockscreen widget.

EOF