Open Web Studio (Roberto Caporale)
-
Upload
dotnetmarche -
Category
Technology
-
view
992 -
download
3
description
Transcript of Open Web Studio (Roberto Caporale)
![Page 1: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/1.jpg)
Open Web Studioun altro modo per sviluppare “rapidamente” con
DotNetNuke
Roberto [email protected]
sabato 28 maggio 2011
![Page 2: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/2.jpg)
Cos’e’ OWS
• Un modulo di DotNetNuke
• Un ambiente di sviluppo Rad
• Un framework estendibile
sabato 28 maggio 2011
![Page 3: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/3.jpg)
Cos’era ?
• Un modulo a pagamento del marketplace DNN
• Si chiamava ListX categoria dei “form builder”... “data driven apps”...
• E’ stato reingegnerizzato da quando è divenuto OpenSource, circa 3 anni fa
sabato 28 maggio 2011
![Page 4: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/4.jpg)
Vantaggi
• E’ il sistema più rapido che io conosca per sviluppare moduli DNN
• ed anche per ASP.NET....
• Combina esigenze di designers e di coding
• Se non “basta” si estende...
• E’ Free e OpenSource ;)
sabato 28 maggio 2011
![Page 5: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/5.jpg)
Nello specifico
• Ottimo per moduli di presentation layer
• Fantastico per applicazioni Ajax
• Super per integrarsi con Webservice e servizi remoti via WS, REST, XML..
• Fichissimo per sviluppare, debuggare LIVE(è tutto online..!)
sabato 28 maggio 2011
![Page 6: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/6.jpg)
Contro...
• Curva di apprendimento non super easy
• Necessità di un cambio di paradigma nell’approccio allo sviluppo
• Poca documentazione..
• Occhio allo spaghetti-code (che poi code non è ... :)
sabato 28 maggio 2011
![Page 7: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/7.jpg)
Installazione
• http://sourceforge.net/projects/r2iopenwebstudi/files/r2iopenwebstudio/
• sito ufficiale : www.openwebstudio.com
• si installa come un normale modulo DotNetNuke (PA module)
sabato 28 maggio 2011
![Page 8: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/8.jpg)
Ecco com’e’...
sabato 28 maggio 2011
![Page 9: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/9.jpg)
Concetti base
• Ogni “programma” in OWS è una “Configuration”
• Ogni istanza del modulo OWS viene piazzato in una pagina ed associato ad una Configuration
sabato 28 maggio 2011
![Page 10: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/10.jpg)
Configuration
• General settings
• Code Tree
• Actions (azioni, template...)
• Script, Variables, Formatters
• persistite nel DB con serializzazione JSON
• con versioning !!
sabato 28 maggio 2011
![Page 11: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/11.jpg)
Actions
• Actions
• eseguono comandi
• deteminano il flusso di esecuzione
• input / output
• esempi : QUERY, INPUT, IF, LOOP...
sabato 28 maggio 2011
![Page 12: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/12.jpg)
Template
• Sorgente dati : Query Template
• Presentazione dati
• header, footer, detail template....
• no results, no query....
• Un solo template “settato” per configurazione
sabato 28 maggio 2011
![Page 13: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/13.jpg)
Script
• Azioni o comandi da eseguire nei template
• sintassi { ... }
• tranne [FORMAT,,{...}]
sabato 28 maggio 2011
![Page 14: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/14.jpg)
Formatters
• Trasformano un valore in un altro...
• si applicano allo script
• [FORMAT,valore,{formatter}]
sabato 28 maggio 2011
![Page 15: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/15.jpg)
Variables
• Sintassi [nomevariabile, Collection]
• Alcuni namespaces (abbreviato) :
• System (*) , es [*TabId]
• Session , QueryString (Q) ,Form (F)
• Action (A) : variabili custom..
• @variable : tipi speciali per le query parametriche
sabato 28 maggio 2011
![Page 16: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/16.jpg)
L’ambiente : Actions
sabato 28 maggio 2011
![Page 17: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/17.jpg)
Home
• Operazioni sulle configurazioni
• new, open..
• Import / Export (JSON)
• Publish
sabato 28 maggio 2011
![Page 18: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/18.jpg)
General
sabato 28 maggio 2011
![Page 19: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/19.jpg)
Tools
• Gestisce il Repository del codice
• possibilità di Revert & Rollback
• Debugger & Event Viewer
sabato 28 maggio 2011
![Page 20: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/20.jpg)
iniziamo...
sabato 28 maggio 2011
![Page 21: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/21.jpg)
DEMO
• un modulo per editare le pagine in blocco
• 1) autonomo...
• 2) uso del query builder....
sabato 28 maggio 2011
![Page 22: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/22.jpg)
Presentazione
• Query Template (query in senso lato)
• header (multiply... group by...)
• detail
• footer
• no result
• No Query (per tutto il resto... :)
sabato 28 maggio 2011
![Page 23: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/23.jpg)
Comandi al DB
• Action QUERY
• tutto è template....
• accetta @variable (x Sql Injection)
• query SQL o altro...
• iteratore automatico..
• crea [xxx,collection]
• sotto sotto tutto è DataTable
sabato 28 maggio 2011
![Page 24: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/24.jpg)
Ajax
• Chiamate Ajax built-in
• ows.fetch( ModuleId, TabId, ‘querystring’ [, container] )
• due modalità
• Ajax
• Ajax Enhancement Interaction
sabato 28 maggio 2011
![Page 25: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/25.jpg)
Debugger
sabato 28 maggio 2011
![Page 26: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/26.jpg)
Estendibilità
• è possibile creare custom Action, Formatters, Query...
• openwebstudio.dotnetnuke_extensions.config
sabato 28 maggio 2011
![Page 27: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/27.jpg)
Esempi :
• FILEDOWNLOAD
• estendere un limite della ACTION INPUT
• Esempio Live
• www.nelsalento.com
• chiamate asincrone ad un BookingEngine esposto via webservice
sabato 28 maggio 2011
![Page 28: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/28.jpg)
FILEDOWNLOAD :
• Custom Query
• DEMO
sabato 28 maggio 2011
![Page 29: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/29.jpg)
BookingEngine :
• Custom Query + DNN Scheduler
• DEMO
sabato 28 maggio 2011
![Page 30: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/30.jpg)
BookingEngine :
• Custom Query + DNN Scheduler
• DEMO
sabato 28 maggio 2011
![Page 31: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/31.jpg)
BookingEngine :
• Custom Query + DNN Scheduler
• DEMO
sabato 28 maggio 2011
![Page 32: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/32.jpg)
BookingEngine :
• Custom Query + DNN Scheduler
• DEMO
sabato 28 maggio 2011
![Page 33: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/33.jpg)
BookingEngine :
• Custom Query + DNN Scheduler
• DEMO
sabato 28 maggio 2011
![Page 34: Open Web Studio (Roberto Caporale)](https://reader034.fdocument.pub/reader034/viewer/2022052306/547d7155b47959c0508b491a/html5/thumbnails/34.jpg)
Conclusioni
• Rapidità di sviluppo
• Online, adatto alla condivisione
• Potente, estendibile, veloce
sabato 28 maggio 2011