Upload
davide-marzioni
View
318
Download
0
Embed Size (px)
DESCRIPTION
Slides for Workshop entitled "Modern web development with python and Web2py" held at IDEA Soc. Coop. of Ancona (IT)
Citation preview
MODERN WEB DEVELOPMENT
WITH PYTHON AND WEB2PY
Workshop 15 Gennaio 2014
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Sommario
• Web– Applicazione web– L'interazione web– Le ultime tecnologie
• Python– Introduzione– Chi lo utilizza– Esempi
• Web2py– Introduzione– Model View Controller– Admin Interface– Features
• Conclusione
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Applicazione web
Applicazione che usa il browser web come client.
• Facilità di installazione/nessuna installazione• Poco/nessuno spazio su disco richiesto• Facilità di upgrade• Multipiattaforma
• Necessita di una connessione continua
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
L'interazione web
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Le ultime tecnologie
• tag audio/video• canvas• tag semantici• geolocalizzazione• web SQL database
CSS 3• bordi/ombre• transizioni• animazioni• gradienti
Responsive Design"Tecnica che permette alle pagine di adattare automaticamente il layout per fornire una visualizzazione ottimale in funzione dell'ambiente nelle quali vengono visualizzate"
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Python
• Sintassi chiara e semplice• Facile da imparare• Orientato agli oggetti• Typing dinamico• Multipiattaforma• Modulare ed estendibile (C, C++, C#, Java, .Net)• Utilizzato come linguaggio di scripting
Python rilasciato da Guido van Rossum in 1991. Il linguaggio è basato su un modello aperto e sviluppato dalla comunità e gestito dalla fondazione no-profit Python Software Foundation.
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Python - Chi lo usa
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Python - Esempi
def Add(x, y): result = x + y; return result
a = 5b = 2c = Add(a, b)print "Il risultato e'", c
using System;namespace AddFunction{ class Program { static void Main() { int a = 5; int b = 2; int c = Add(a, b); System.Console.WriteLine( "Il risultato e' {0}", c); }
public int Add(int x, int y) { int result = x + y; return result; } }
}
PythonC#
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Web2py
Free open source full-stack framework
for rapid development of
• fast
• scalable
• secure
• portable
database-driven web-based applications.
Written and programmable in Python.
http://www.web2py.com
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Web2py - Model View Controller
ModelRappresentazione dei datiChe dati ho a disposizione, di che tipo sono, ...
ViewPresentazione dei datiChe dati voglio che siano visualizzati e come
ControllerLogica dell'applicazioneCome processo i dati che ho a disposizione
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Web2py - Request workflow
URL Esempiohttp://server/app/controller/function.ext
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Web2py - Admin interface
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Web2py - Features
• Internationalization• SQLFORM• Access Control• Background tasks• Logging e Ticketing system• Remote procedure calls e servizi REST• Componenti e plugins• Fast deployment
• Bootstrap Framework• jQuery
Il presente documento è di proprietà della IDEA Soc. Coop. che se ne riserva tutti i diritti di privativa ivi compresi il divieto di divulgazione, riproduzione e/o copia del contenuto, in parte o per intero, senza autorizzazione.
Conclusione
• Domande?
• Chiarimenti?
• Commenti?
Grazie per l'attenzione!