3. Evaldo Junior - InFog
• Processamento de dados - Fatec
• MBA Gestão Estratégica de TI - Unimonte
• Professor universitário - Unimonte
• Empreendedor - CaSoft
• GNU/Linux - 7 anos
• Desenvolvedor - 5 anos
11. Qualidade de
Software
Produtividade
Portabilidade
Inúmeras
bibliotecas
Integração com
outras
linguagens
12. Qualidade de
Software
Produtividade
Portabilidade
Inúmeras
bibliotecas
Integração com
outras
linguagens
Livre!
13. Qualidade de
Software
Produtividade
Portabilidade
Inúmeras
bibliotecas
Integração com
outras
linguagens
Diversão!
Livre!
14. Um pouco de história...
• Guido van Rossum
• 1989 - 1991
• Foco em produtividade
• 1994 - Funcional
o lambda
• 2.0 - list compreension
o haskell
• 3.0 - grandes mudanças
55. OOP: self
• Todos os métodos, de quaisquer métodos,
recebem o self
• self é uma referência do objeto instanciado.
• self é sempre o primeiro parâmetro, e é
automático.
57. Convenções para OOP
• Todos herdam de "object"
• Contrutores se chamam __new__
o Nunca vi um construtor...
• Inicializadores de chamam __init__
o Esses sim, tem aos montes por aí
o Na verdade o __init__ é o que as outras linguagens
usam como "construtor"
• __init__ recebe uma instância pronta, para
incializar os atributos.
• __new__ é usada raramente, mais para
metaprogramação.
58. Visibilidades
• Não existe operador de visibilidade!
• Nada de public
• Nada de protected
• Nada de private
59. Visibilidades, como faz?
• public = sem prefixos
• protected = prefixo "_"
• private = prefixo "__"
o two underlines
o two under
o thunder