by Davide Cerbo e Stefano Linguerri.
Javascript viene sempre consiederato un linguaggio di serie B in cui è impossibile seguire le buone regole della programmazione ad oggetti. Ma non è così! In questa presentazione scopriremo come questo sia un linguaggio in continua evoluzione e come sia possibile sviluppare seguendo i paradigmi della programmazione ad oggetti. Scopriremo tool e librerie che ci permetteranno di sviluppare creando batterie di test, oggetti mock e inserire istruzioni di log nel nostro codice. Durante questa presentazione illustreremo anche la libreria Prototype che ci sarà di supporto durante gli esempi.
Una rassegna sul framework per lo sviluppo in Javascript jQuery ed alcuni suoi plugin sviluppati da Microsoft: Template e Datalink
http://www.pasqualepuzio.it
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django è forse uno degli elementi più criticati e più difesi dagli sviluppatori di django. L'idea di base è che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia è che in molte realtà invece chi scrive le pagine è il programmatore stesso o persona che può imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilità decisamente efficaci. I template risultano molto più leggibili senza perdere in chiarezza. Particolarmente efficace è l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
by Davide Cerbo e Stefano Linguerri.
Javascript viene sempre consiederato un linguaggio di serie B in cui è impossibile seguire le buone regole della programmazione ad oggetti. Ma non è così! In questa presentazione scopriremo come questo sia un linguaggio in continua evoluzione e come sia possibile sviluppare seguendo i paradigmi della programmazione ad oggetti. Scopriremo tool e librerie che ci permetteranno di sviluppare creando batterie di test, oggetti mock e inserire istruzioni di log nel nostro codice. Durante questa presentazione illustreremo anche la libreria Prototype che ci sarà di supporto durante gli esempi.
Una rassegna sul framework per lo sviluppo in Javascript jQuery ed alcuni suoi plugin sviluppati da Microsoft: Template e Datalink
http://www.pasqualepuzio.it
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django è forse uno degli elementi più criticati e più difesi dagli sviluppatori di django. L'idea di base è che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia è che in molte realtà invece chi scrive le pagine è il programmatore stesso o persona che può imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilità decisamente efficaci. I template risultano molto più leggibili senza perdere in chiarezza. Particolarmente efficace è l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
by Davide Cerbo e Stefano Linguerri
La programmazione web sta facendo passi da gigante e oggi l’utente si aspetta che l’esperienza di utilizzo si avvicini sempre di più a quella a cui è abituato nei classici applicativi desktop. Il mondo degli sviluppatori ha risposto inventanto una nuova sigla: RIA, cioè Rich Internet Application. Google non è stata a guardare e ha fornito la sua risposta a questa esigenza donando alla community Google Web Toolkit. Questo nuovo framework permette di sviluppare in Java tutta l’interfaccia utente per poi ottenere un codice javascript che funzionerà su qualsiasi browser web senza l’installazione di plugin aggiuntivi. In questa presentazione vedremo:
* perchè sviluppare applicazioni RIA
* perchè usare GWT
* come GWT utilizza AJAX per comunicare con il server
* le ottimizzazione che avremo utilizzando GWT
* come uscire dal browser con Google Gear e Mozilla Prism
* e non solo…
SkyMedia: La tecnologia al servizio dell'intrattenimentoMavigex srl
Mavigex parla al #WhyMCA 2012 e presenta l'architettura del sistema #SkyMedia.
Un gruppo di aziende provenienti da tutta Europa sta mettendo a punto un sistema tecnologicamente innovativo per dare una marcia in più agli eventi sportivi, combinando tecnologie all'avanguardia come droni volanti, schermi immateriali, telecamere 3D, applicazioni mobili per iPhone iPad e Android e tracciamento delle prestazioni degli atleti in tempo reale.
Tutte queste tecnologie sono combinate assieme per fornire ad atleti e spettatori una visione a 360 gradi dell'evento, con una prospettiva mai vista fino ad ora. Le prime dimostrazioni delle potenzialità di questo sistema sono state messe a disposizione della Maratona di Torino gia' dall'edizione 2011.
Una peculiarità è la potenziale versatilità di tale sistema e la sua applicabilità a diversi scenari sportivi. Altri sport infatti potrebbero trarre vantaggio da queste tecnologie, quali il ciclismo, l'arrampicata sportiva e lo sci.
Il talk illustrerà l'architettura e i componenti del sistema, e come sia stato possibile rendere accessibili al grande pubblico tecnologie fino ad ora limitate all'ambito di ricerca.
Maggiori informazioni sul progetto al sito http://ict-skymedia.eu/skymedia/
Quante volte in questi ultimi mesi abbiamo sentito parlare di AJAX?
In effetti molti articoli che ho letto presuppongono una qualche conoscenza di AJAX stesso o comunque una buona conoscenza da parte dei lettori delle tecnologie alla sua base, ad esempio Javascript.
Ho avuto la sensazione che AJAX sia percepito dai neofiti come una cosa per soli programmatori esperti e quindi ho pensato di scrivere un articolo per cercare di aiutare coloro che si avvicinano a questo mondo per la prima volta permettendogli di scrivere le loro prime semplici applicazioni.
Sperando di riuscire nel mio intento vi auguro buona lettura.
How create a single page apps using html5 and javascript Stefano Marchisio
Create a html5/javascript apps with mvc/ajax using knockout.js/mvvm. Javascript to IQueryable is a framework that allows you to write a simple query in javascript client side and then execute it server side with EntityFramework or a linq provider that implement IQueryable. On the server is used "Dynamic Expressions and Queries in LINQ by Microsoft" to compose dynamically your query. In this way you can create a grid with filter, paging and sort functions. There is also support for: mvc3 unobtrusive jquery validation and jquery mobile/phonegap. - http://Javascriptiqueryable.codeplex.com - http://www.youtube.com/watch?v=qjwyKwsXHKs - http://www.linqitalia.com/articoli/entity-framework/sfruttare-javascript-eseguire-query-linq-server-tramite-dynamic-iqueryable.aspx
Non Conventional Android Programming (Italiano)Davide Cerbo
Android è il nuovo sistema operativo open source per dispositivi mobili e realizzato da Google che si è posta la missione di rendere l’internet mobile accessibile a tutti tramite dispositi a basso costo.
Durante questo intervento mostrerò come sia possibile sviluppare per questo sistema operativo (e non solo) senza l’utilizzo di Java e come sia possibile utilizzare una versione light di Spring Framework nelle applicazioni mobili.
The HTTP protocol was created in 1990 and led to the establishment of the World Wide Web by English physicist Tim Berners-Lee. It led to what is now the world's most used language, HTML (Hyper Text Markup Language). HTML5 is being developed as the next major revision of HTML: what is it about? What will it change?
jQuery è un framework javascript che permette di semplificare la scrittura di codice javascript, facilitando l'iterazione con gli elementi della pagina (controlli, stili, eventi, animazioni, ...), e permettendo di aumentare la user experience delle applicazioni, riducendone al tempo stesso la complessità di scrittura. Vista la sua diffusione e potenza, è stato anche incluso nei project templete di Visual Studio. In questa sessione vedremo cos'è jQuery, e scopriremo le potenzialità e funzionalità che offre, verificando se il motto "write less do more" sia vero o meno.
by Davide Cerbo e Stefano Linguerri
La programmazione web sta facendo passi da gigante e oggi l’utente si aspetta che l’esperienza di utilizzo si avvicini sempre di più a quella a cui è abituato nei classici applicativi desktop. Il mondo degli sviluppatori ha risposto inventanto una nuova sigla: RIA, cioè Rich Internet Application. Google non è stata a guardare e ha fornito la sua risposta a questa esigenza donando alla community Google Web Toolkit. Questo nuovo framework permette di sviluppare in Java tutta l’interfaccia utente per poi ottenere un codice javascript che funzionerà su qualsiasi browser web senza l’installazione di plugin aggiuntivi. In questa presentazione vedremo:
* perchè sviluppare applicazioni RIA
* perchè usare GWT
* come GWT utilizza AJAX per comunicare con il server
* le ottimizzazione che avremo utilizzando GWT
* come uscire dal browser con Google Gear e Mozilla Prism
* e non solo…
SkyMedia: La tecnologia al servizio dell'intrattenimentoMavigex srl
Mavigex parla al #WhyMCA 2012 e presenta l'architettura del sistema #SkyMedia.
Un gruppo di aziende provenienti da tutta Europa sta mettendo a punto un sistema tecnologicamente innovativo per dare una marcia in più agli eventi sportivi, combinando tecnologie all'avanguardia come droni volanti, schermi immateriali, telecamere 3D, applicazioni mobili per iPhone iPad e Android e tracciamento delle prestazioni degli atleti in tempo reale.
Tutte queste tecnologie sono combinate assieme per fornire ad atleti e spettatori una visione a 360 gradi dell'evento, con una prospettiva mai vista fino ad ora. Le prime dimostrazioni delle potenzialità di questo sistema sono state messe a disposizione della Maratona di Torino gia' dall'edizione 2011.
Una peculiarità è la potenziale versatilità di tale sistema e la sua applicabilità a diversi scenari sportivi. Altri sport infatti potrebbero trarre vantaggio da queste tecnologie, quali il ciclismo, l'arrampicata sportiva e lo sci.
Il talk illustrerà l'architettura e i componenti del sistema, e come sia stato possibile rendere accessibili al grande pubblico tecnologie fino ad ora limitate all'ambito di ricerca.
Maggiori informazioni sul progetto al sito http://ict-skymedia.eu/skymedia/
Quante volte in questi ultimi mesi abbiamo sentito parlare di AJAX?
In effetti molti articoli che ho letto presuppongono una qualche conoscenza di AJAX stesso o comunque una buona conoscenza da parte dei lettori delle tecnologie alla sua base, ad esempio Javascript.
Ho avuto la sensazione che AJAX sia percepito dai neofiti come una cosa per soli programmatori esperti e quindi ho pensato di scrivere un articolo per cercare di aiutare coloro che si avvicinano a questo mondo per la prima volta permettendogli di scrivere le loro prime semplici applicazioni.
Sperando di riuscire nel mio intento vi auguro buona lettura.
How create a single page apps using html5 and javascript Stefano Marchisio
Create a html5/javascript apps with mvc/ajax using knockout.js/mvvm. Javascript to IQueryable is a framework that allows you to write a simple query in javascript client side and then execute it server side with EntityFramework or a linq provider that implement IQueryable. On the server is used "Dynamic Expressions and Queries in LINQ by Microsoft" to compose dynamically your query. In this way you can create a grid with filter, paging and sort functions. There is also support for: mvc3 unobtrusive jquery validation and jquery mobile/phonegap. - http://Javascriptiqueryable.codeplex.com - http://www.youtube.com/watch?v=qjwyKwsXHKs - http://www.linqitalia.com/articoli/entity-framework/sfruttare-javascript-eseguire-query-linq-server-tramite-dynamic-iqueryable.aspx
Non Conventional Android Programming (Italiano)Davide Cerbo
Android è il nuovo sistema operativo open source per dispositivi mobili e realizzato da Google che si è posta la missione di rendere l’internet mobile accessibile a tutti tramite dispositi a basso costo.
Durante questo intervento mostrerò come sia possibile sviluppare per questo sistema operativo (e non solo) senza l’utilizzo di Java e come sia possibile utilizzare una versione light di Spring Framework nelle applicazioni mobili.
The HTTP protocol was created in 1990 and led to the establishment of the World Wide Web by English physicist Tim Berners-Lee. It led to what is now the world's most used language, HTML (Hyper Text Markup Language). HTML5 is being developed as the next major revision of HTML: what is it about? What will it change?
jQuery è un framework javascript che permette di semplificare la scrittura di codice javascript, facilitando l'iterazione con gli elementi della pagina (controlli, stili, eventi, animazioni, ...), e permettendo di aumentare la user experience delle applicazioni, riducendone al tempo stesso la complessità di scrittura. Vista la sua diffusione e potenza, è stato anche incluso nei project templete di Visual Studio. In questa sessione vedremo cos'è jQuery, e scopriremo le potenzialità e funzionalità che offre, verificando se il motto "write less do more" sia vero o meno.
Web Semantico: da XHTML a RDF in 3 clickSimone Onofri
Web Semantico: da XHTML a RDF in 3 click propone una via molto semplice per entrare nel Semantic Web senza fatica. Dopo una brevissima introduzione al concetto di Web Semantico vedremo come creare con un click un hCalendar (Microformat per gli eventi), convertirlo in RDF/XML tramite un XSL con GRDDL (una nuova tecnologia del W3C che permette di estrarre RDF) e utilizzare i dati ottenuti come desideriamo (Storage, Timeline, Grafo o altro).
Similar to Rich Ajax Web Interfaces in Jquery (20)
13. C ODICE JS <DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>JavaScript!</title> <script type="text/javascript" src="my-script.js"></script> </head> <body> <!-- cdata per evitare problemi di validazione xhtml e commentati per impedire di non interpretare il codice javascript nei vecchi browser che non comprendono il tag cdata --> <script type="text/javascript"> // <![CDATA[ // ]]> </script> </body> </html>
43. Function operator : function name(argumentlist) block -->crea un oggetto di tipo Function. Senza nome crea funzione anonima
44. Function constructor : new Function(strings...) --> corpo della funzione come stringa come parametro (deprecata)
45.
46. Sintassi Javascript e Java a confronto JavaScript function Impiegato () { this.nome = ""; this.dipartimento = "generale"; } Java public class Impiegato { public String nome; public String dipartimento; public Impiegato () { this.nome = ""; this.dipartimento = "generale"; } } function Manager () { this.reports = []; } Manager.prototype = new Impiegato; function Progettista () { this.progetti = []; } Progettista.prototype = new Impiegato; public class Manager extends Impiegato { public String[] reports; public Manager () { this.reports = new String[0]; } } public class Progettista extends Impiegato { public String[] progetti; public Progettista () { this.progettista = new String[0]; } }
81. Ajax: operation if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.open("GET","ajax_info.txt",true); //open(method,url,async) xmlhttp.send(); //xmlhttp.open("POST","ajax_test.asp",true); //xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); //settiamo l'handler onreadystatechange xmlhttp.onreadystatechange=function() //chiamata quando cambia il readyState { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } Property Description readyState Status of the XMLHttpRequest. 0: request not initialized 1: server connection established 2: request received 3: processing request 4: request finished and response is ready status 200: "OK" 404: Page not found
204. J QUERY : UI $("#draggable").draggable(); $('div.myclass').droppable({ drop: function(ui,event){}, over: function...., //si attiva quando un draggable è dragged over out: function..., //si attiva mentre si fa il drag fuori dal droppable (se era dentro) tolerance: function //la condizione che lancia il drop viene richiamato il drop (Es. 'fit', 'touch',...) })