Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python @classmethod
Search
Caio Carrara
January 23, 2020
Programming
0
130
Python @classmethod
Slides da lightning talk apresentada no meetup de Python na Resultados Digitais
Caio Carrara
January 23, 2020
Tweet
Share
More Decks by Caio Carrara
See All by Caio Carrara
Pythonic OOP pt. 1
cacarrara
1
210
Python para web 101
cacarrara
1
90
Anti-patterns - o que são e como se livrar deles em Python
cacarrara
1
190
Distributed Systems of Microservices using Docker and Serfnode
cacarrara
0
110
Revisão de Código - Desafios, soluções e experiências
cacarrara
0
250
Viés Algorítmico
cacarrara
0
83
make + pip + pip-tools
cacarrara
0
64
Pyramid e uma questão de interface
cacarrara
0
51
Tecnologia da Informação: carreira e mercado
cacarrara
1
85
Other Decks in Programming
See All in Programming
高セキュリティ・高耐障害性・サブシステム化。そして2億円
tasukulab280
2
390
オレを救った Cline を紹介する
codehex
16
15k
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
1
850
【AI 自走型】Figma からデザインコーディングを行うプロンプト
tetsuro_b
0
110
The Price of Micro Frontends… and Your Alternatives @bastacon 2025 in Frankfurt
manfredsteyer
PRO
0
300
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
270
Swift Testingのモチベを上げたい
stoticdev
2
220
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
若手バックエンドエンジニアが Elasticsearch を使ってみた話
hott0mott0
1
100
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
150
はじめての Go * WASM * OCR
sgash708
1
130
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
140
Featured
See All Featured
Building an army of robots
kneath
303
45k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Designing Experiences People Love
moore
140
23k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Side Projects
sachag
452
42k
The Cost Of JavaScript in 2023
addyosmani
47
7.5k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
How GitHub (no longer) Works
holman
314
140k
Code Reviewing Like a Champion
maltzj
521
39k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
YesSQL, Process and Tooling at Scale
rocio
172
14k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Transcript
Python @classmethod Caio Carrara www.caiocarrara.com/contato.html 1
Caio Carrara • Paulista • Desenvolvedor de software • Pythonista
• Djangonauta • Trabalhando na Loadsmart 2
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
@classmethod (?) 4
Python Class Methods 5
Python Class Methods 6
Python Class Methods 7
Programação Orientada a Objetos 8
Programação Orientada a Objetos • Classes • Objects • Attributes
• Methods 9
Programação Orientada a Objetos • Classes -> Blueprints, projetos, especificação
• Objects -> Instâncias • Attributes -> Estado, dados • Methods -> Comportamento, funcionalidade, ação 10
Programação Orientada a Objetos 11
Programação Orientada a Objetos “Em Python tudo é objeto. Até
mesmo as classes.” 12
Tudo é objeto 13
Tudo é objeto 14
Tudo é objeto 15
Tudo é objeto 16
@classmethods 17
Programação Orientada a Objetos • Classes -> Blueprints, projetos, especificação
• Objects -> Instâncias • Attributes -> Estado, dados • Methods -> Comportamento, funcionalidade, ação 18
@classmethods Class methods Métodos de classe Comportamentos de classe Ações
sobre uma classe 19
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
Quando usar @classmethod? 21
Quando usar @classmethod? 22
Riscos de @classmethods sem controle 23
Riscos de @classmethods sem controle 24
Riscos de @classmethods sem controle 25
Obrigado! Caio Carrara www.caiocarrara.com/contato.html 26