1
LibreOffice Productivity Suite
Python para Internet
Fabiano de Almeida
2
LibreOffice Productivity Suite
Python
3
LibreOffice Productivity Suite
Python?
Lançado em 1991 por Guido van Rossum
Linguagem de programação de alto nível de propósito geral.
Enfatiza a produtividade do programador e legibilidade do
código.
4
LibreOffice Productivity Suite
Python?
Sintaxe núcleo minimalista, com poucos comandos básicos e
semântica simples, mas também tem uma biblioteca padrão
grande e abrangente.
Inclui API para muitos dos sistemas operacionais.
Múltiplos paradigmas de programação: orientação a objetos
(class); imperativo (def); funcional (lambda)
5
LibreOffice Productivity Suite
Python?
Tipagem dinâmica
Gerenciamento automático de memória
6
LibreOffice Productivity Suite
Python?
Multiplataforma
Opensource
Interpretado
Possibilidade de ser compilado
7
LibreOffice Productivity Suite
Python?
Python Software Foundation
“A missão da Python Software Foundation é promover,
proteger e fazer avançar a linguagem de programação
Python, e apoiar e facilitar o crescimento de uma
comunidade diversificada e internacional de
programadores Python”
8
LibreOffice Productivity Suite
Quem usa Python?
9
LibreOffice Productivity Suite
Instalação do Python
Linux / UNIX: instalado por default
Mac: instalado por default
Windows: instalador disponível em
https://www.python.org/downloads/
10
LibreOffice Productivity Suite
Exemplos de programa Python
11
LibreOffice Productivity Suite
Exemplos de programa Python
12
LibreOffice Productivity Suite
Frameworks
13
LibreOffice Productivity Suite
+Informações
http://docs.python.org/
http://www.python.org.br/wiki
Livro em PDF “Python para desenvolvedores”, disponível em
http://ark4n.wordpress.com/python/
Python - Google Groups:
https://groups.google.com/d/forum/python
Python Brasil - Google Groups:
https://groups.google.com/d/forum/python-brasil
14
LibreOffice Productivity Suite
Plone: Speed, Power & Beauty
15
LibreOffice Productivity Suite
Plone?
CMS
Foco em mantenedores de conteúdo
Zope
Seguro
Padrões abertos
Acessibilidade – W3C
16
LibreOffice Productivity Suite
Plone?
Workflow
Gerenciamento de usuários e grupos
Suporte a novos tipos de conteúdo
HTML5 e CSS3
Suporte multi-liguagem: mais de 40 idiomas
17
LibreOffice Productivity Suite
Que bancos de dados o Plone integra?
ZODB: banco de dados orientado a objeto confiável, seguro,
fácil de administrar
Se comunica facilmente com Active Directory, LDAP,
Salesforce.com, bancos de dado SQL entre outros.
RelStorage: Oracle, MySQL e PostgreSQL, pode utilizar
ferramentas familiares, clustering e failover.
18
LibreOffice Productivity Suite
Plone?
19
LibreOffice Productivity Suite
Quem usa Plone?
20
LibreOffice Productivity Suite
Instalação do Plone
Unified Installer (source kit; installs on Linux, BSD, OS X)
OS X Lion/Mountain Lion/Mavericks Binary Installer
Windows installer
VirtualBox/Vagrant install kit
21
LibreOffice Productivity Suite
Exemplo de Plone Site
22
LibreOffice Productivity Suite
+Informações
http://plone.org/documentation
http://plone.org.br/documentacao
Livro em PDF “Manual do Plone”, disponível em
http://www.simplesconsultoria.com.br/tecnologia/plone/manual-do
Plone – Google Groups:
https://groups.google.com/d/forum/plone-users
http://www.zope.org/
23
LibreOffice Productivity Suite
web2py
24
LibreOffice Productivity Suite
web2py?
Framework gratuito full-stack para desenvolvimento rápido de
aplicações baseadas na web de bases de dados rápidos,
escaláveis,, seguras e portáteis
Web-Based IDE
Documentação
Paradigma de modelagem orientada a objetos
Design MVC
25
LibreOffice Productivity Suite
Web2py?
É multiplataforma. Roda em GNU/Linux, Mac, Windows,
Windows Mobile, e também no Google App Engine e
Amazon, sua única dependência é o Python;
Incentiva as boas práticas da engenharia de software: Design
MVC (Model-View-Controller), formulário de validação do
lado servidor e também postbacks;
26
LibreOffice Productivity Suite
Web2py?
Sofisticada camada de abstração de banco de dados,
automatizando códigos SQL em tempo de execução para
vários gerenciadores de banco de dados (SQLite ,
PostgreSQL , MySQL , MSSQL , FireBird , Oracle, Google Big
Table);
Inclui um sistema de banco de dados relacionais, o sqlite;
27
LibreOffice Productivity Suite
Web2py?
Inclui JQuery para efeitos e AJAX;
Possui poderosa linguagem de templates baseada no Python
que permite renderizar objetos para HTML ou qualquer outro
protocolo baseado em textos;
Gera automaticamente interface de administração de banco
de dados para as aplicações;
28
LibreOffice Productivity Suite
Web2py?
Possui bibliotecas para gerar e processar formulários de
criar/atualizar diretamente de um banco de dados;
Inclui bibliotecas de Autenticação (Login, Logout, registros,
alteração de senhas, etc...);
Bibliotecas de Autorização (Controle de acessos);
29
LibreOffice Productivity Suite
Web2py?
Bibliotecas para manipulação de HTML, ATOM, RSS, RTF,
JSON, AJAX, XML-RPC, CSV, REST e WIKI;
Manipula streaming automaticamente de upload e download
de grandes mídias;
Inclui funções de caching em RAM, disco, memcache, dentre
outras;
30
LibreOffice Productivity Suite
Web2py?
Suporte à internacionalização e interface de tradução;
Não há arquivos de configuração, basta descompactar para
usar;
Possui o Web server WSGI multiprocessos, mas também
suporta Apache e outros;
Inclui sistemas de tickets para auxiliar no Debug das
aplicações;
31
LibreOffice Productivity Suite
Web2py?
Previne as vulnerabilidades mais comuns, como Cross Site
Scripting, Injeção de Falhas e execução de arquivos
suspeitos;
Trabalha com Flash/Flex via PyAMF e com os Toolkits Web
do Google através do Pyjamas;
Possui mecanismo Cron portável, para criação e execução
de tarefas em segundo plano;
32
LibreOffice Productivity Suite
Web2py?
Possui IDE completa baseada no navegador;
É possível desenvolver utilizando qualquer dispositivo USB,
pois não precisa instalar;
Permite a compilação das aplicações em Bytecode,
distribuindo-as em código fechado.
Servidor Rocket incluído
33
LibreOffice Productivity Suite
Quem usa web2py?
Campus Online
Paradigm Shift TV
GlobaLeaks
Radbox
Northside Church of Richmond
Fluxo de Caixa
União Tecnologia
TerraVista Consultoria
Freewall
ITJP - Developer Web Systems
http://www.web2py.com/poweredby
34
LibreOffice Productivity Suite
Instalação do web2py
Linux/UNIX: Baixar, descompactar e usar
Mac: : Baixar, descompactar e usar
Windows: : Baixar, descompactar e usar
http://www.web2py.com/init/default/download
35
LibreOffice Productivity Suite
Exemplos de aplicativos
36
LibreOffice Productivity Suite
Exemplos de aplicativos
37
LibreOffice Productivity Suite
+Informações
http://www.web2py.com/init/default/documentation
http://www.web2pyslices.com/
http://web2pybrasil.appspot.com
Web2py Brasil – Google Groups
https://groups.google.com/d/.../web2py-users-brazil
Web2py – Google Groups
www.web2py.com/init/default/usergroups
38
LibreOffice Productivity Suite
All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License
(unless otherwise specified). "LibreOffice" and "The Document Foundation" are registered trademarks. Their respective logos
and icons are subject to international copyright laws. The use of these therefore is subject to the trademark policy.
Obrigado!!!
fabiano@techno7.com.br

Python e frameworks web