Melhores Práticas para o Desenvolvimento com Plone 4

1.976 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.976
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
53
Comentários
0
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Melhores Práticas para o Desenvolvimento com Plone 4

  1. 1. Melhores Práticas para desenvolvimento com Plone 4 http://www.slideshare.net/dorneles/melhores-praticas-dev-plone-4 Curitiba, PythonBrasil[6] 23 de Outubro de 2010 Dorneles Treméa X3ng / Enfold / APyB / GTiC 1 quinta-feira, 4 de novembro de 2010
  2. 2. Crise de Identidade! • Segundo Grau: Codorna (?) • Universidade: Cortininha (???) • Sidnei: Dorna • APyB: Big Kahuna (2009) • Limi:“Dolores” (??????????????????????????) • Família: Déo • 007: Neles, Dorneles. • Eu:Apenas um rapaz latino-americano 2 quinta-feira, 4 de novembro de 2010
  3. 3. O que faço? • Empreendedor na X3ng • Desenvolvedor na Enfold Systems • Presidente (office-boy, ...) na APyB • Mestre de cerimônia na PythonBrasil :-) • Tento ser um bom pai em casa! • Colaborador no projeto Plone 3 quinta-feira, 4 de novembro de 2010
  4. 4. 4 Plone? (WTF?) quinta-feira, 4 de novembro de 2010
  5. 5. Por que estão aqui? • A outra sala estava lotada • O Wifi é mais rápido • Único lugar com tomadas sobrando • Curitiba não tem praia • Talvez tenham interesse no tema! 5 quinta-feira, 4 de novembro de 2010
  6. 6. Plone • “Plone é atualmente o CMS mais completo presente no mercado.” -- Dorneles, PythonBrasil[6] • E um dos mais rápidos também! :-) 6 quinta-feira, 4 de novembro de 2010
  7. 7. 7 quinta-feira, 4 de novembro de 2010
  8. 8. Plone é RÁPIDO! 8 quinta-feira, 4 de novembro de 2010
  9. 9. Primeiros Passos • Sistema Operacional • Python • Buildout • Coca-Cola Código • Profit! 9 quinta-feira, 4 de novembro de 2010
  10. 10. Desenvolvimento & Produção Sistema Operacional 10 quinta-feira, 4 de novembro de 2010
  11. 11. Versões do Python Plone 3.x Python 2.4.x Plone 4.x Python 2.6.x Plone 5.x Python ? 11 quinta-feira, 4 de novembro de 2010
  12. 12. Buildout “Live together, die alone!” -- Lost S02E23 12 quinta-feira, 4 de novembro de 2010
  13. 13. Controle deVersões Não interessa qual, mas use alguma coisa, pelamordedeus! :-P 13 quinta-feira, 4 de novembro de 2010
  14. 14. Dica: cache 14 Ative o cache do buildout $ mkdir -p ~/cache/{zope,download,eggs,extends} $ cat ~/.buildout/default.cfg [buildout] zope-directory=/home/dorneles/cache/zope download-cache=/home/dorneles/cache/download download-directory=/home/dorneles/cache/download eggs-directory=/home/dorneles/cache/eggs extends-cache=/home/dorneles/cache/extends quinta-feira, 4 de novembro de 2010
  15. 15. Dica: python Use seu próprio Python $ cd ~ $ svn co http://svn.plone.org/svn/collective/buildout/python $ cd python $ python bootstrap.py $ bin/buildout $ ls python* 15 quinta-feira, 4 de novembro de 2010
  16. 16. Dica: virtualenv 16 Ative o virtualenv a ser usado $ python -V Python 2.6.1 $ source ~/python/python-2.6/bin/activate $ python -V Python 2.6.6 quinta-feira, 4 de novembro de 2010
  17. 17. Dica: ZopeSkel 17 Conjunto templates para paster $ pip install ZopeSkel $ zopeskel plone3_buildout teste $ cd teste $ python bootstrap.py $ bin/buildout $ bin/instance start quinta-feira, 4 de novembro de 2010
  18. 18. Dica: novos pacotes 18 Utilize o zopeskel, ora bolas! $ zopeskel --help $ zopeskel plone3_buildout teste $ zopeskel plone_app package.one $ zopeskel plone_pas package.two quinta-feira, 4 de novembro de 2010
  19. 19. Dica: fixar versões 19 Define a versão exata dos pacotes $ cat buildout.cfg extends = ... versions.cfg $ cat versions.cfg [versions] package.one = 1.0 package.two = 0.666-satan++ quinta-feira, 4 de novembro de 2010
  20. 20. Dica: dump versions 20 Lista todos pacotes não pinados $ cat buildout.cfg [buildout] extensions = buildout.dumppickedversions ... quinta-feira, 4 de novembro de 2010
  21. 21. Dica: road runner 21 Pré-carrega testes para TDD $ cat buildout.cfg ... [roadrunner] recipe = roadrunner:plone packages-under-test = package.one package.two quinta-feira, 4 de novembro de 2010
  22. 22. Dica: omelette 22 Gera árvore explodida pacotes $ cat buildout.cfg ... [omelette] recipe = collective.recipe.omelette eggs = ${instance:eggs} location = ${buildout:directory}/source quinta-feira, 4 de novembro de 2010
  23. 23. Dica: produtos úteis • Products.Clouseau • Products.Gloworm • Products.DocFinderTab • Products.PDBDebugMode 23 quinta-feira, 4 de novembro de 2010
  24. 24. Problemas buildout? • bin/buildout -U • Evita ler o ~/.buildout/default.cfg • bin/buildout -D • Inicia o pdb no ponto da exceção • bin/buildout -t 2 • Reduz o timeout para 2 segundos 24 quinta-feira, 4 de novembro de 2010
  25. 25. Registro Usuários 25 • Introdução do plone.app.users • Permite personalizar o formulário de cadastro (e das preferências) do usuário sem editar templates • Exemplo: collective.examples.userdata quinta-feira, 4 de novembro de 2010
  26. 26. Generic Setup 26 • Crie um snapshot no portal_setup para ver todas as opções suportadas • Arquivos devem conter apenas o que realmente é necessário • Utilize os atributos disponívies: insert-before/.../purge/remove quinta-feira, 4 de novembro de 2010
  27. 27. Dexterity for the rescue? 27 • Archetypes não morreu (e não vai morrer tão cedo!) • Dexterity simplifica a criação de novos tipos de conteúdo, permitindo a edição do schema e a definição de comportamentos pelo navegador • ZopeSkel plugin: zopeskel.dexterity quinta-feira, 4 de novembro de 2010
  28. 28. Outras Regras de Ouro • Sempre alterar a senha do Manager após o primeiro acesso • Nunca mudar manualmente as permissões dos objetos na ZMI, a menos que saiba o que está fazendo! • Utilize o collective.recipe.backup para não se preocupar mais tarde... 28 quinta-feira, 4 de novembro de 2010
  29. 29. Contato • Dorneles Treméa • @dorneles • dorneles@tremea.com • deo @ irc://irc.freenode.net 29 quinta-feira, 4 de novembro de 2010

×