Python @classmethod

Python @classmethod

Slides da lightning talk apresentada no meetup de Python na Resultados Digitais

F6d5a605df582ab9ea419ebef9f400b7?s=128

Caio Carrara

January 23, 2020
Tweet

Transcript

  1. Python @classmethod Caio Carrara www.caiocarrara.com/contato.html 1

  2. Caio Carrara • Paulista • Desenvolvedor de software • Pythonista

    • Djangonauta • Trabalhando na Loadsmart 2
  3. Lightning Talks 2019 • 2019/07 - Pyramid e uma questão

    de interface @ Neoprospecta • 2019/08 - make + pip + pip-tools @ Hostgator • 2019/08 - Viés Algorítmico @ Mercado Livre • 2019/12 - Code reviews @ Geek Hunder https://speakerdeck.com/cacarrara/ 3
  4. @classmethod (?) 4

  5. Python Class Methods 5

  6. Python Class Methods 6

  7. Python Class Methods 7

  8. Programação Orientada a Objetos 8

  9. Programação Orientada a Objetos • Classes • Objects • Attributes

    • Methods 9
  10. Programação Orientada a Objetos • Classes -> Blueprints, projetos, especificação

    • Objects -> Instâncias • Attributes -> Estado, dados • Methods -> Comportamento, funcionalidade, ação 10
  11. Programação Orientada a Objetos 11

  12. Programação Orientada a Objetos “Em Python tudo é objeto. Até

    mesmo as classes.” 12
  13. Tudo é objeto 13

  14. Tudo é objeto 14

  15. Tudo é objeto 15

  16. Tudo é objeto 16

  17. @classmethods 17

  18. Programação Orientada a Objetos • Classes -> Blueprints, projetos, especificação

    • Objects -> Instâncias • Attributes -> Estado, dados • Methods -> Comportamento, funcionalidade, ação 18
  19. @classmethods Class methods Métodos de classe Comportamentos de classe Ações

    sobre uma classe 19
  20. Quando usar @classmethod? • Para ampliar os comportamentos de uma

    classe • Um dos comportamentos mais comuns de uma classe é prover (construir) uma instância de seu tipo 20
  21. Quando usar @classmethod? 21

  22. Quando usar @classmethod? 22

  23. Riscos de @classmethods sem controle 23

  24. Riscos de @classmethods sem controle 24

  25. Riscos de @classmethods sem controle 25

  26. Obrigado! Caio Carrara www.caiocarrara.com/contato.html 26