SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Python3 Patterns and Idioms
Ramiro Batista da Luz
Associação Python Brasil

3 de Outubro de 2013
Site ocial http://www.mindviewinc.com/Books/

Python3Patterns/Index.php
Criar conta em http://www.bitbucket.org
Fork (opcional) https://bitbucket.org/BruceEckel/
python-3-patterns-idioms/

Clone - hg clone
https://bitbucket.org/BruceEckel/python-3-patternsidioms
Se você criou um fork (Use o botão Clone para obter o
comando para clonar seu fork) - hg clone
https://ramiroluz@bitbucket.org/ramiroluz/python-3patterns-idioms
O livro é para quem já programa. Capítulo curto
introdutório.
Scripting vs. Programming.
Built-in containers.
Functions.
Strings.
Classes. (class, def, __init__, self, __name__,
herança.
Técnicas úteis. PythonForProgrammers/arguments.py,
PythonForProgrammers/utility.py e
PythonForProgrammers/compose.py
__new__() vs. __init__().
Initialization/new_vs_init.py
Atributos estáticos. Initialization/static.py
Clean Up. Initialization/cleanup.py
WeakRef. Initialization/weakref_clean.py
Escreva os testes primeiro.
Teste simples em python. code/SanityCheck.py
Um framework de testes muito simples.
UnitTesting/UnitTest.py
Escrevendo os testes. UnitTesting/UnitTest.py e
UnitTesting/TestDemo2.py
Testes White-Box e Black-Box. UnitTesting/Testable.py,
UnitTesting/TooMuchAccess.py,
UnitTesting/testable/Testable.py,
UnitTesting/BlackBoxTest.py
Rodando os testes. UnitTesting/RunUnitTests.py
História das macros.
Objetivos das macros.
o que pode ser feito com decorators?
PythonDecorators/entry_exit_function.py
Function decorators. PythonDecorators/my_decorator.py
Um pouco mais útil.
PythonDecorators/entry_exit_class.py
Usando funções como decorators.
PythonDecorators/entry_exit_function.py
Revisão: Decoradores sem argumentos.
PythonDecorators/decorator_without_arguments.py
Decorators com argumentos.
PythonDecorators/decorator_with_arguments.py
Iterators. Iterables/sum_rst_n_list.py,
Iterables/sum_rst_n_iterable.py
Generators. Iterables/gen.py e
sum_of_rst_n_generator.py
Itertools. Iterables/itertools_chain.py,
Iterables/itertools_izip.py, Iterables/itertools_islice.py
Compreensão de listas.
Compreensão aninhada.
Tecnicas.
Um exemplo mais complexo.
Compreensão de conjuntos.
Compreensão de dicionários.
O GIL
Multiprocessing. Concurrency/multiprocess_bar.py
Singleton pattern.
New singleton.
Borg singleton.
Class Variable singleton.
Singleton decorator.
Singleton MetaClass.
ProxyDemo.py
ProxyDemo2.py
StateDemo.py
StateMachine/State.py
StateMachine/StateMachine.py
StateMachine/mouse/MouseAction.py
StateMachine/mousetrap1/MouseTrapTest.py
StateMachine/mousetrap2/MouseTrap2Test.py
Decorator/nodecorators/CoeeShop.py
Decorator/alldecorators/EspressoDecorator.py
Decorator/alldecorators/CoeeShop.py
Decorator/compromise/CoeeShop.py
Util/TypedIterator.py
Factory/shapefact1/ShapeFactory1.py
Factory/shapefact1/NestedShapeFactory.py
Factory/shapefact2/ShapeFactory2.py
Factory/Games.py
Factory/Games2.py
FunctionObjects/CommandPattern.py
FunctionObjects/StrategyPattern.py
FunctionObjects/ChainOfResponsibility.py
http://www.mindviewinc.com/Books/

Thinking in Python
First Steps in Flex
Thinking in Java 4th Edition
Electronic book: Thinking in C++, Second Edition
(Volumes 1  2)
Thinking in C++, Volume 2: Practical Programming
Thinking in Patterns
ideia aqui

Revisão.
Tradução.
Revisão da Tradução.
Tânia, Rafahela, Cintia.
Patrocinadores.
Comunidade.

Más contenido relacionado

Similar a Python 3, patterns and indioms

Python-purple: Desenvolvendo bindings para Python usando o Cython
Python-purple: Desenvolvendo bindings para Python usando o CythonPython-purple: Desenvolvendo bindings para Python usando o Cython
Python-purple: Desenvolvendo bindings para Python usando o Cython
Bruno Abinader
 

Similar a Python 3, patterns and indioms (20)

Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Django Tem Ritmo
Django Tem RitmoDjango Tem Ritmo
Django Tem Ritmo
 
Python 3 e o futuro da linguagem
Python 3 e o futuro da linguagemPython 3 e o futuro da linguagem
Python 3 e o futuro da linguagem
 
Curso python
Curso pythonCurso python
Curso python
 
Como se tornar um programador melhor - Saci 2017 IFSul Bagé
Como se tornar um programador melhor - Saci 2017 IFSul BagéComo se tornar um programador melhor - Saci 2017 IFSul Bagé
Como se tornar um programador melhor - Saci 2017 IFSul Bagé
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação Python
 
Skytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxySkytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxy
 
Novidades do Django 1.2 e o que vem por ai
Novidades do Django 1.2 e o que vem por aiNovidades do Django 1.2 e o que vem por ai
Novidades do Django 1.2 e o que vem por ai
 
Python, CPython, Pythonico, Cython
Python, CPython, Pythonico, CythonPython, CPython, Pythonico, Cython
Python, CPython, Pythonico, Cython
 
Workshop Python.2
Workshop Python.2Workshop Python.2
Workshop Python.2
 
Python-purple: Desenvolvendo bindings para Python usando o Cython
Python-purple: Desenvolvendo bindings para Python usando o CythonPython-purple: Desenvolvendo bindings para Python usando o Cython
Python-purple: Desenvolvendo bindings para Python usando o Cython
 
CoGrOO 4.0 no FISL 13
CoGrOO 4.0 no FISL 13CoGrOO 4.0 no FISL 13
CoGrOO 4.0 no FISL 13
 
Aula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdfAula 02 - Análise de Dados - Introdução ao Python.pdf
Aula 02 - Análise de Dados - Introdução ao Python.pdf
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
De javaparapython
De javaparapythonDe javaparapython
De javaparapython
 
Relatório de análise da plataforma cultura digital
Relatório de análise da plataforma cultura digitalRelatório de análise da plataforma cultura digital
Relatório de análise da plataforma cultura digital
 
A lógica do Python e seus termos
A lógica do Python e seus termosA lógica do Python e seus termos
A lógica do Python e seus termos
 
Curso python
Curso pythonCurso python
Curso python
 

Más de Ramiro Luz

Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?
Ramiro Luz
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoption
Ramiro Luz
 

Más de Ramiro Luz (20)

Institutional Website - the longest project of my life
Institutional Website - the longest project of my lifeInstitutional Website - the longest project of my life
Institutional Website - the longest project of my life
 
Plone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsPlone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizations
 
Portal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsPortal Modelo - Plone for Parliaments
Portal Modelo - Plone for Parliaments
 
Para que serve o Python
Para que serve o PythonPara que serve o Python
Para que serve o Python
 
Minerando dados com Python
Minerando dados com PythonMinerando dados com Python
Minerando dados com Python
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.
 
Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015
 
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
 
Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015Não se repita - Django Generic Views - FLISOL Curitiba 2015
Não se repita - Django Generic Views - FLISOL Curitiba 2015
 
Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com Plone
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014
 
Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
 
Teaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleTeaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo Style
 
Usando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDUsando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDD
 
Sabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonSabores do desenvolvimento web com Python
Sabores do desenvolvimento web com Python
 
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoption
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitec
 
Testes de Unidade para C++
Testes de Unidade para C++Testes de Unidade para C++
Testes de Unidade para C++
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
Natalia Granato
 

Último (6)

ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Python 3, patterns and indioms