19
App Engine Take Off Febbraio 2015 Python Introduzione #gae #gdgmilano

GAE python GDG Milano - L01

Embed Size (px)

Citation preview

Page 1: GAE python GDG Milano - L01

App Engine Take OffFebbraio 2015PythonIntroduzione

#gae #gdgmilano

Page 2: GAE python GDG Milano - L01

Febbraio 2015Google App Engine

PythonIntroduzione

#gae #gdgmilano

Paolo Dadda

Membro IWA ITALY nr. 0307429 Professionista Web ai sensi della Legge 4/2013

Contatti:Tel.: 393.4298004

Ufficio: Via 4 Novembre, 94 Cislago (VA) WebSite: www.2dweb.it

Mail: [email protected]

Page 3: GAE python GDG Milano - L01

Photo: Google/Connie Zhou

Che cos’è GAE? Google App Engine

Page 4: GAE python GDG Milano - L01

Perché Google App Engine• Permette di creare siti ed applicazioni senza preoccuparci della loro architettura hardware

e sobbarcarsi l’onere di gestire scalabilità e picchi di traffico.

• Bassi costi di ingresso e fatturazione in base al consumo reale.

• Supporta diversi linguaggi di programmazione:Java, Python, GO e PHP.

• Fornisce un’ottima SDK per lo sviluppo e test in locale.

• E’ corredata da API già pronte e documentate.

• Eseguita in Sandbox.

Page 5: GAE python GDG Milano - L01

Perché Google App Engine

Ma cosa significa che le App possono “scalare” automaticamente?

• All’aumentare delle persone che utilizzano l'applicazione, App Engine, automaticamente stanzia più risorse per l’applicazione e gestisce da sé tali risorse.

• L'applicazione stessa non bisogno di sapere nulla riguardo le risorse utilizzate, né serve codice dedicato per queste operazioni.

Page 6: GAE python GDG Milano - L01

Perché Google App Engine

Bassi costi di ingresso e fatturazione sul consumo reale…

• Ogni applicazione ha un’ammontare di risorse gratuite giornaliere o mensili a disposizione, che sono sufficienti per piccole applicazioni con poco traffico.

• Se si attiva il “Billing” è possibile definire un tetto massimo di spesa giornaliera, oltre il quale , l’app, si “ferma”. (Nessuna strana sorpresa nella fatturazione a fine mese)

Page 7: GAE python GDG Milano - L01

Perché Google App Engine e Python

• App Engine gestisce applicazioni scritte in Python 2.7, utilizzando versione personalizzata di CPython, (interprete ufficiale di Python).

• Python è eseguito su GAE utilizzando WSGI:uno standard di interfaccia di applicazione utilizzato e supportato in molti server.

• Su GAE possono essere utilizzate la maggior parte delle librerie di Python (sono escluse ad esempio quelle che richiedono accesso al file system)

• Framework web supportati: Django, web2py, Pyramid e Flask

• App Engine include un framework proprio, denominato webapp2

Page 8: GAE python GDG Milano - L01

Perché Python

• Rapida curva di apprendimento

• Sintassi che spinge ad avere un codice chiaro, pulito e leggibile.

• E’ un linguaggio fortemente tipizzato a tipizzazione dinamica.

• Adatto sia per script di poche linee di codice sia per progetti complessi con migliaia di linee di codice

• E’ un linguaggio di programmazione orientato oggetti.

• Supporta l'ereditarietà multipla e l'overloading degli operatori.

Page 9: GAE python GDG Milano - L01

Vantaggi economici con GAEVediamo meglio nel dettaglio le soglie “free” gratuite: (https://cloud.google.com/appengine/docs/quotas)

Page 10: GAE python GDG Milano - L01

Vantaggi economici con GAEVediamo meglio nel dettaglio le soglie “free” gratuite: (https://cloud.google.com/appengine/docs/quotas)

Page 11: GAE python GDG Milano - L01

Vantaggi economici con GAEVediamo meglio nel dettaglio le soglie “free” gratuite: (https://cloud.google.com/appengine/docs/quotas)

Page 12: GAE python GDG Milano - L01

Vantaggi economici con GAEQuote a pagamento: (https://cloud.google.com/appengine/pricing)

Page 13: GAE python GDG Milano - L01

Vantaggi economici con GAEQuote a pagamento: (https://cloud.google.com/appengine/pricing)

Page 14: GAE python GDG Milano - L01

Google App EnginePython

Introduzione

#gae #gdgmilano

Programma serateSera 1 (19 Febbraio 2015)

Introduzione Unica serata Atipica rispetto al layout descritto

(Alfredo Morresi) Introduzione alla GCP (Alfredo Morresi) Cos’è la GCP

Introduzione a Google App Engine Python Perchè GAE e Python

Vantaggi economici di GAE Strumenti di Sviluppo utilizzati

Sera 2 (Fine Marzo 2015) WebApp2 & Model, Template, Handler

Introduzione a Webapp2 “introduzione base” per Model, Handler, Template

Sera 3 (Metà/Fine Aprile 2015) Model, Memcache

Page 15: GAE python GDG Milano - L01

Google App EnginePython

Introduzione

#gae #gdgmilano

Programma serateSera 4 (Metà/Fine Maggio 2015) Handler, Mail, Get, Post, Upload

Handler (Get, Post) Upload

Mail API

Sera 5 (Metà/Fine Giugno 2015) Template, Jinja2, Exception

Template (Jinja2) Eccezoni

Sera 6 (Fine/Mid Luglio 2015) Google Cloud Storage

GCS, approcci e casi d’uso come installarlo, usarlo

“serve” diretto e“serve” da applicazione

Page 16: GAE python GDG Milano - L01

Google App Engine - PythonIntroduzioneFine

#gae #gdgmilano

Page 17: GAE python GDG Milano - L01

Strumenti di sviluppo

Photo: Google/Connie Zhou

Page 18: GAE python GDG Milano - L01

Risorse PythonUn po’ di risorse per imparare o approfondire:

• Sito ufficiale italiano:http://www.python.it/

• Libro online “Pensare da informatico - Imparare con Python”: http://www.python.it/doc/Howtothink/HowToThink_ITA.pdf

• Dive Into Python - Python per programmatori esperti:http://it.diveintopython.net/

Page 19: GAE python GDG Milano - L01

PyCharmPyCharm è un ottimo IDE sviluppato da JetBrains, è ben integrato con GAE e fornisce alcune comode funzioni oltre che al completamento del codice anche con le librerie di App Engine.

Ne esistono due versioni: una Community ed una a pagamento. (Quella a pagamento ha funzionalità “comode” per GAE).

I prezzi delle licenze variano in base all’essere “single developer” o società. Esiste una versione Gratuita per la versione a pagamento, a patto di dimostrare di essere impegnati in un progetto OpenSource attivo

In via eccezionale è stata concessa per questo evento una licenza di 3 mesi gratuiti a partire da oggi:

—————————————————- —————————————————- —————————————————- —————————————————- —————————————————- —————————————————-

https://www.jetbrains.com/pycharm/