desenvolvimento web com python, zope e plone

36
Desenvolvimento web com Jacson Tiola

Upload: jacson-tiola

Post on 01-Nov-2014

8.800 views

Category:

Technology


6 download

DESCRIPTION

Desenvolvimento web com Python, Zope e Plone

TRANSCRIPT

Page 1: Desenvolvimento web com Python, Zope e Plone

Desenvolvimento web com

Jacson Tiola

Page 2: Desenvolvimento web com Python, Zope e Plone

Apresentação

Jacson Tiola Membro Efetivo da Associação Python Brasil Desenvolvedor Certificado Zope e Plone

Experiências DoctumTec Incubadora Virtual – FAPESP Flux Softwares Senado Federal ­ Interlegis

Page 3: Desenvolvimento web com Python, Zope e Plone

O que é Python?

Python é uma linguagem fácil e agradável de ser utilizada.

É uma linguagem interpretada. Não há pré­declaração de variáveis, e os tipos das variáveis 

são determinados dinamicamente. O controle de bloco é feito apenas por identação; não há 

delimitadores do tipo BEGIN e END ou { e }. Oferece tipos de alto nível: strings, listas, tuplas, dicionários, 

arquivos, classes. É orientada a objetos; aliás, em Python, tudo é um objeto. 

Atualmente sendo usada por Google, NASA, Distros Linux e em outros grandes projetos.

Google App Engine

Page 4: Desenvolvimento web com Python, Zope e Plone

O que é Zope?● Z Object Publishing Environment ● Zope é um servidor de aplicações web, que permite a criações de aplicações WEB baseadas em componentes.

● Ambiente de Desenvolvimento e Gerenciamento de Aplicações para a Web

● Open Source aos moldes da GPL● Escrito em Python

● Uma linguagem 100% orientada a objetos● Possui alguns módulos em C

● Possui o seu próprio banco de dados, o ZODB

Page 5: Desenvolvimento web com Python, Zope e Plone

O Zope

Page 6: Desenvolvimento web com Python, Zope e Plone

Banco de Dados ZODB

Banco de dados Orientado a Objetos Data.fs Sem linguagem de consultas padrão Indexa objetos que podem ser pesquisados por 

funções do Zope Indexa metadados

Métodos para implementar BD relacionais.

Page 7: Desenvolvimento web com Python, Zope e Plone

Mais Zope

Conceitos do Zope ZMI, eficiente para gerência mas não para 

desenvolvimento Zope Page Templates(ZPT) Tools Python Script Extenal Methods

Page 8: Desenvolvimento web com Python, Zope e Plone

Funcionalidades do Zope

● Servidor Web Zserver (aos moldes do Apache)● Servidor de FTP● Servidor CGI● Ambiente de desenvolvimento 100% via Web● Ambiente de desenvolvimento 100% Orientado 

a Objetos

Page 9: Desenvolvimento web com Python, Zope e Plone

O que é o Plone?

Plone é um Content Management System(CMS) ou Sistema Gerenciador de Conteúdo (SGS) de código livre e aberto baseado nas melhores práticas e padrões web.

Ele permite que usuários façam a gestão de  conteúdo de um site web, intranet ou portal  sem se preocupar com detalhes técnicos a  respeito da mídia web, navegadores ou  clientes remotos.

Page 10: Desenvolvimento web com Python, Zope e Plone

O que é Plone?

● Um CMS (Content Management System) completo e flexível

● I18n ­ Internacionalizado● 100% baseado em software livre:

● CMF (Content Management Framework)● Zope (servidor de aplicações)● Python (linguagem de scripting OO)

● Arquitetura PZP (Python, Zope, Plone)

Page 11: Desenvolvimento web com Python, Zope e Plone

O que o Plone oferece?

Uma solução para criação de portais de conteúdo e  serviços, intranet e sites web de maneira fácil e  produtiva.

Tipos de dados pré­definidos.

Mecanismo de indexação, busca livre e pré­  configurada.

Mecanismo de Workflow.

Editores web “amigáveis” para gestores de  conteúdo que não conhecem HTML.

Page 12: Desenvolvimento web com Python, Zope e Plone

Plone

Page 13: Desenvolvimento web com Python, Zope e Plone

Benefícios Imediato do Plone

● Fácil aprendizado para o usuário final● Foco no conteúdo, não na tecnologia● Foco em um layout e designs coerentes● Facilita o trabalho colaborativo● Níveis de interação

● Definidos pelos papéis de usuários● Administrador● Revisor● Membro● Autenticado● Anônimo

Page 14: Desenvolvimento web com Python, Zope e Plone

Herança do Zope

● ZODB: banco de dados transacional orientado a objetos● undo: desfazer modificações no site

● Segurança● permissionamento a nível de métodos (funções)● permissões associadas a perfis de usuário

● Aquisição contextual● templates sensíveis ao contexto

Page 15: Desenvolvimento web com Python, Zope e Plone

Arquitetura PZP

Page 16: Desenvolvimento web com Python, Zope e Plone

Tipos de Dados do Plone

● Documentos (HTML, ResT)● Imagens● Notícias● Eventos● Links● Arquivo● Personalizados (Archetypes)

Page 17: Desenvolvimento web com Python, Zope e Plone

Archetypes Desenvolvido em UML

ArgoUML Poseidon

ArchGenXML gera o código do Archetypes Usado para desenvolvimento de novos tipos e 

produtos para Plone.

Page 18: Desenvolvimento web com Python, Zope e Plone

Workflow Padrão do PloneCada tipo de item está associado a um ou mais workflows

Page 19: Desenvolvimento web com Python, Zope e Plone

Adicionando Produtos

Produtos Fácil instalação Feitos em python Devem estar no diretório Products Comportam parte lógica e apresentação Podem ser auto instaláveis

Milhares de produtos disponíveis: Blog, fórum, enquete, storage, webmail, 

gerenciamento de projeto, etc...

Page 20: Desenvolvimento web com Python, Zope e Plone

Desenvolver ou Evoluir

● Encare o Plone com o ponto de partida para um processo evolutivo:● Portal pronto no dia 1● Sua missão: evoluir o portal

● Ajuda a educar os usuários● O que esperar de um SGC● Como pensar a organização do conteúdo● Como alimentar e atualizar o site

Page 21: Desenvolvimento web com Python, Zope e Plone

Como aprender? 

Treinamentos em empresas:  Simples Consultoria, Paradigma, Flux Softwares. 

Comunidade:  Zope­pt, Pythonbrasil no yahoogroups

Documentação em português:  Tchezope.org

Documentação e produtos:  Plone.org

Page 22: Desenvolvimento web com Python, Zope e Plone

Como colaborar e participar?

Você pode colaborar com o desenvolvimento do sistema. 

Você pode traduzir produtos criados.  Com isso você contribui para a evolução do 

mesmo e ganha experiência e reconhecimento. Evento anual PyconBrasil

Este ano vai ser no Rio de Janeiro 18, 19 e 20 de setembro

http://pyconbrasil.com.br/

Page 23: Desenvolvimento web com Python, Zope e Plone

Oportunidades no Brasil

Seção especial de oportunidades: http://www.pythonbrasil.com.br/moin.cgi/OportunidadesDeEmprego

Ultimas oportunidades postadas 3 vagas Interlegis – 02/06/2008 3 vagas R&S Consultoria – 28/05/2008 2 vagas Inspira Tecnologia ­  26/05/2008  2 vagas Weimar Consultoria ­23/05/2008

Page 24: Desenvolvimento web com Python, Zope e Plone

Oportunidades no mundo

Seção de “Jobs” http://www.python.org/community/jobs/

Diversas outras empresas internacionais oferecem vagas para trabalhar a remotamente

Page 25: Desenvolvimento web com Python, Zope e Plone

Quem usa Plone no Brasil www.serpro.gov.br

www.embrapa.gov.br

www.interlegis.gov.br 

Cerca 100 Câmaras municipais www.camara.gov.br

www.abin.gov.br

www.idgnow.com.br

www.brasil.gov.br

www.presidencia.gov.br

Page 26: Desenvolvimento web com Python, Zope e Plone

Quem usa Plone no Brasil

www.inclusaodigital.gov.br

www.mds.gov.br

www.fomezero.gov.br

www.portalgoverno.gov.br

www.pcworld.uol.com.br

www.dnit.gov.br 

Incubadora Virtual ­ FAPESP

Cerca de 400 projetos

Page 27: Desenvolvimento web com Python, Zope e Plone

IDG Now

Page 28: Desenvolvimento web com Python, Zope e Plone

Brasil.gov

Page 29: Desenvolvimento web com Python, Zope e Plone

DCC ­ UFMG

Page 30: Desenvolvimento web com Python, Zope e Plone

Carta Capital

Page 31: Desenvolvimento web com Python, Zope e Plone

Quem usa Plone no mundo

https://www.cia.gov/ http://www.novell.com/ http://discovermagazine.com/ Nasa ­ http://nasascience.nasa.gov/ Otan ­ http://www.nato.int/ Governo da Nova Zelândia http://plone.org/about/sites

Page 32: Desenvolvimento web com Python, Zope e Plone

Central Intelligence Agency ­ USA

Page 33: Desenvolvimento web com Python, Zope e Plone

NASA

Page 34: Desenvolvimento web com Python, Zope e Plone

Discover Magazine

Page 35: Desenvolvimento web com Python, Zope e Plone

Referências Zope

www.zope.org

Plone www.plone.org

Comunidade PZP Brasil www.tchezope.org

Associação Python Brasil http://associacao.pythonbrasil.org/

Python Brasil http://www.pythonbrasil.com.br/ 

Page 36: Desenvolvimento web com Python, Zope e Plone

Agradecimentos!

www.tiolatec.objectis.net

Jacson [email protected]

Para mais informações, contatos,download da palestra e outros acesse:

Parceria:

www.fluxsoftwares.com