SlideShare a Scribd company logo
1 of 36
Download to read offline
Desenvolvimento web com




      Jacson Tiola
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
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
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
O Zope
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.
Mais Zope
   Conceitos do Zope
       ZMI, eficiente para gerência mas não para 
        desenvolvimento
       Zope Page Templates(ZPT)
       Tools
       Python Script
       Extenal Methods
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
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.
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)
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.
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
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
Arquitetura PZP
Tipos de Dados do Plone

●   Documentos (HTML, ResT)
●   Imagens
●   Notícias
●   Eventos
●   Links
●   Arquivo
●   Personalizados (Archetypes)
Archetypes
   Desenvolvido em UML
       ArgoUML
       Poseidon




   ArchGenXML gera o código do Archetypes
   Usado para desenvolvimento de novos tipos e 
    produtos para Plone.
Workflow Padrão do Plone
  Cada tipo de item está associado a um ou mais workflows
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...
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
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
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/
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
Oportunidades no mundo

   Seção de “Jobs”
       http://www.python.org/community/jobs/
   Diversas outras empresas internacionais 
    oferecem vagas para trabalhar a remotamente
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
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
IDG Now
Brasil.gov
DCC ­ UFMG
Carta Capital
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
Central Intelligence Agency ­ USA
NASA
Discover Magazine
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/ 
Agradecimentos!
      Para mais informações, contatos,
    download da palestra e outros acesse:
   www.tiolatec.objectis.net

               Parceria:


       www.fluxsoftwares.com

                 Jacson Tiola
            jacsontiola@gmail.com

More Related Content

Viewers also liked

Desbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus LimaDesbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus LimaMatheus Dos Santos Lima
 
It's Not Magic - Explaining classification algorithms
It's Not Magic - Explaining classification algorithmsIt's Not Magic - Explaining classification algorithms
It's Not Magic - Explaining classification algorithmsBrian Lange
 
Tutorial DOCman em portugues
Tutorial DOCman em portuguesTutorial DOCman em portugues
Tutorial DOCman em portuguesJennifer Payne
 
Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Marcel Caraciolo
 
Mini-Curso Python para Symbian
Mini-Curso Python para SymbianMini-Curso Python para Symbian
Mini-Curso Python para SymbianMarcel Caraciolo
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Jonh Edson
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução BásicaChristian Perone
 
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?Humberto Diógenes
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyRelsi Maron
 
Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonJanderson Campêlo
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do GoogleLuciano Ramalho
 
2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com PythonJardel Weyrich
 
Ensinando a programar através do Python turtle graphics
Ensinando a programar através do Python turtle graphicsEnsinando a programar através do Python turtle graphics
Ensinando a programar através do Python turtle graphicsGuilherme Medeiros
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBRodrigo Hjort
 
Jogos em Python utilizando PyGame
Jogos em Python utilizando PyGameJogos em Python utilizando PyGame
Jogos em Python utilizando PyGameMayron Cachina
 

Viewers also liked (20)

Desbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus LimaDesbravando a web com python - Matheus Lima
Desbravando a web com python - Matheus Lima
 
It's Not Magic - Explaining classification algorithms
It's Not Magic - Explaining classification algorithmsIt's Not Magic - Explaining classification algorithms
It's Not Magic - Explaining classification algorithms
 
Tutorial DOCman em portugues
Tutorial DOCman em portuguesTutorial DOCman em portugues
Tutorial DOCman em portugues
 
Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Introduction to Python for Symbian S60
Introduction to Python for Symbian S60
 
Python na Web
Python na WebPython na Web
Python na Web
 
Mini-Curso Python para Symbian
Mini-Curso Python para SymbianMini-Curso Python para Symbian
Mini-Curso Python para Symbian
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução Básica
 
Python e MongoDB - Ensol
Python e MongoDB - EnsolPython e MongoDB - Ensol
Python e MongoDB - Ensol
 
Introducao python 2010
Introducao python 2010Introducao python 2010
Introducao python 2010
 
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
 
Diversidade na Comunidade Python
Diversidade na Comunidade PythonDiversidade na Comunidade Python
Diversidade na Comunidade Python
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2py
 
Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - Python
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do Google
 
2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python
 
Ensinando a programar através do Python turtle graphics
Ensinando a programar através do Python turtle graphicsEnsinando a programar através do Python turtle graphics
Ensinando a programar através do Python turtle graphics
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDB
 
Jogos em Python utilizando PyGame
Jogos em Python utilizando PyGameJogos em Python utilizando PyGame
Jogos em Python utilizando PyGame
 
Canivete python
Canivete pythonCanivete python
Canivete python
 

Similar to Desenvolvimento web com Python, Zope e Plone

Desenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoDesenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoIgor Sobreira
 
Melhorando a performance de aplicações com o uso do MemCache
Melhorando a performance de aplicações com o uso do MemCacheMelhorando a performance de aplicações com o uso do MemCache
Melhorando a performance de aplicações com o uso do MemCacheElton Minetto
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetMarcos Petry
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel PetryTchelinux
 
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...IT4biz IT Solutions
 
Pentaho inteligência de negócios utilizando software livre campus party 2011
Pentaho  inteligência de negócios utilizando software livre   campus party 2011Pentaho  inteligência de negócios utilizando software livre   campus party 2011
Pentaho inteligência de negócios utilizando software livre campus party 2011Campus Party Brasil
 
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011Caio Moreno
 
Portlets: Let them make your virtual world
Portlets: Let them make your virtual worldPortlets: Let them make your virtual world
Portlets: Let them make your virtual worldelliando dias
 
Desenvolvimento Web com Software Livre
Desenvolvimento Web com Software LivreDesenvolvimento Web com Software Livre
Desenvolvimento Web com Software LivreGivanaldo Rocha
 
Django: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoDjango: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoBernardo Fontes
 
O que podemos fazer com Python?
O que podemos fazer com Python?O que podemos fazer com Python?
O que podemos fazer com Python?Izabela Guerreiro
 
Utilização do Plone para desenvolvimento de portais corporativos e intranet
Utilização do Plone para desenvolvimento de portais corporativos e intranetUtilização do Plone para desenvolvimento de portais corporativos e intranet
Utilização do Plone para desenvolvimento de portais corporativos e intranetJacson Tiola
 
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...Caio Moreno
 
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...IT4biz IT Solutions
 
Workshop gratuito sobre Acessibilidade na Web
Workshop gratuito sobre Acessibilidade na WebWorkshop gratuito sobre Acessibilidade na Web
Workshop gratuito sobre Acessibilidade na WebCentro Web
 
SEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesSEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesEveraldo Wanderlei Uavniczak
 
Rascunho do Seminário sobre Acessibilidade na Web
Rascunho do Seminário sobre Acessibilidade na WebRascunho do Seminário sobre Acessibilidade na Web
Rascunho do Seminário sobre Acessibilidade na WebLucas Augusto Carvalho
 

Similar to Desenvolvimento web com Python, Zope e Plone (20)

Desenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoDesenvolvimento web ágil com Django
Desenvolvimento web ágil com Django
 
Melhorando a performance de aplicações com o uso do MemCache
Melhorando a performance de aplicações com o uso do MemCacheMelhorando a performance de aplicações com o uso do MemCache
Melhorando a performance de aplicações com o uso do MemCache
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internet
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
 
Seminário Final
Seminário FinalSeminário Final
Seminário Final
 
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...
Pentaho: Inteligência de Negócios utilizando Software Livre @ Telefonica Camp...
 
Pentaho inteligência de negócios utilizando software livre campus party 2011
Pentaho  inteligência de negócios utilizando software livre   campus party 2011Pentaho  inteligência de negócios utilizando software livre   campus party 2011
Pentaho inteligência de negócios utilizando software livre campus party 2011
 
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011
Pentaho: Inteligência de Negócios utilizando software livre @Campus Party 2011
 
Portlets: Let them make your virtual world
Portlets: Let them make your virtual worldPortlets: Let them make your virtual world
Portlets: Let them make your virtual world
 
Apresentacao Ondaweb 2010
Apresentacao Ondaweb 2010Apresentacao Ondaweb 2010
Apresentacao Ondaweb 2010
 
Desenvolvimento Web com Software Livre
Desenvolvimento Web com Software LivreDesenvolvimento Web com Software Livre
Desenvolvimento Web com Software Livre
 
Django: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoDjango: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazo
 
O que podemos fazer com Python?
O que podemos fazer com Python?O que podemos fazer com Python?
O que podemos fazer com Python?
 
Utilização do Plone para desenvolvimento de portais corporativos e intranet
Utilização do Plone para desenvolvimento de portais corporativos e intranetUtilização do Plone para desenvolvimento de portais corporativos e intranet
Utilização do Plone para desenvolvimento de portais corporativos e intranet
 
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
 
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
Pentaho: Inteligência de Negócios utilizando Software Livre - FliSOL São Paul...
 
Web 2.0 e Mídias Sociais
Web 2.0 e Mídias SociaisWeb 2.0 e Mídias Sociais
Web 2.0 e Mídias Sociais
 
Workshop gratuito sobre Acessibilidade na Web
Workshop gratuito sobre Acessibilidade na WebWorkshop gratuito sobre Acessibilidade na Web
Workshop gratuito sobre Acessibilidade na Web
 
SEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesSEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de Sites
 
Rascunho do Seminário sobre Acessibilidade na Web
Rascunho do Seminário sobre Acessibilidade na WebRascunho do Seminário sobre Acessibilidade na Web
Rascunho do Seminário sobre Acessibilidade na Web
 

Desenvolvimento web com Python, Zope e Plone

  • 1. Desenvolvimento web com Jacson Tiola
  • 2. 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
  • 3. 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
  • 4. 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
  • 6. 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.
  • 7. Mais Zope  Conceitos do Zope  ZMI, eficiente para gerência mas não para  desenvolvimento  Zope Page Templates(ZPT)  Tools  Python Script  Extenal Methods
  • 8. 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
  • 9. 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.
  • 10. 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)
  • 11. 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.
  • 12. Plone
  • 13. 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
  • 14. 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
  • 16. Tipos de Dados do Plone ● Documentos (HTML, ResT) ● Imagens ● Notícias ● Eventos ● Links ● Arquivo ● Personalizados (Archetypes)
  • 17. Archetypes  Desenvolvido em UML  ArgoUML  Poseidon  ArchGenXML gera o código do Archetypes  Usado para desenvolvimento de novos tipos e  produtos para Plone.
  • 19. 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...
  • 20. 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
  • 21. 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
  • 22. 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/
  • 23. 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
  • 24. Oportunidades no mundo  Seção de “Jobs”  http://www.python.org/community/jobs/  Diversas outras empresas internacionais  oferecem vagas para trabalhar a remotamente
  • 25. 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
  • 26. 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
  • 31. 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
  • 33. NASA
  • 35. 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/ 
  • 36. Agradecimentos! Para mais informações, contatos, download da palestra e outros acesse: www.tiolatec.objectis.net Parceria: www.fluxsoftwares.com Jacson Tiola jacsontiola@gmail.com