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
Dicas de Orientação a Objetos
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Evaldo Barbosa
January 10, 2014
Programming
0
51
Dicas de Orientação a Objetos
Pequenos tópicos sobre orientação a objetos falado no 11o. PHPub. #phpma
Evaldo Barbosa
January 10, 2014
Tweet
Share
More Decks by Evaldo Barbosa
See All by Evaldo Barbosa
Vamos falar a mesma língua
evaldobarbosa
0
22
Conhecendo o Firebase
evaldobarbosa
0
100
Web Apis
evaldobarbosa
0
43
Estendendo o HTML com diretivas AngularJS
evaldobarbosa
0
37
Montagem de equipes de software
evaldobarbosa
0
33
GET /AngularJS 200 OK
evaldobarbosa
0
63
Other Decks in Programming
See All in Programming
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
140
Oxlintはいいぞ
yug1224
5
1.3k
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
310
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.3k
Fluid Templating in TYPO3 14
s2b
0
130
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.4k
SourceGeneratorのススメ
htkym
0
200
Oxlint JS plugins
kazupon
1
970
並行開発のためのコードレビュー
miyukiw
0
280
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
130
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Rails Girls Zürich Keynote
gr2m
96
14k
Thoughts on Productivity
jonyablonski
74
5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
Abbi's Birthday
coloredviolet
1
4.8k
The browser strikes back
jonoalderson
0
390
Into the Great Unknown - MozCon
thekraken
40
2.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Speed Design
sergeychernyshev
33
1.5k
Transcript
Dicas sobre Orientação a Objetos
Analista de Sistemas Presidente do Grupo PHP Maranhão Membro da
ABRAPHP Evaldo Barbosa
None
Mas que raio é um objeto? Objeto é uma classe
instanciada. Uma classe é o grupo ou conjunto de características que representa UMA coisa.
Coisas importantes da OOP Herança Polimorfismo Visibilidade Encapsulamento
Polimorfismo ($obj instanceof A)
Herança (Child extends Parent)
Encapsulamento (abstract class SomeClass)
Operadores de visibilidade (private, protected ou public)
É muito mais fácil explicar utilizando abstração de objetos do
que utilizando qualquer notação baseada em SQL. (Eu, aqui e agora)
Como a orientação a objetos ajuda no aprendizado? Objetos simulam
coisas Coisas interagem entre si Objetos encapsulam processos Interações são processos entre objetos
Objetos por si só são burros, faça-os inteligentes
Objetos por si só são burros, faça-os inteligentes Mapeamento dos
processos: gaste tempo pensando mais e codando menos
Objetos por si só são burros, faça-os inteligentes Classes abstratas
encapsulam processos comuns: os pais protegem o patrimônio e os filhos usam sem gastar
Objetos por si só são burros, faça-os inteligentes Pense em
interfaces e não nos objetos concretos: abstração é a saída
Objetos por si só são burros, faça-os inteligentes Inverta a
dependência entre os objetos: aproveite o tempo que sobra para o café
Estude os ORMs padrão de mercado e veja se eles
te atendem. Se não, use Reflection e crie o que te fará feliz. Tá, mas e o banco de dados?
Traits, o quê?
! Um sistema baseado nas suas classes de domínio e
não somente nas entidades de banco é mais fácil de manter. É altamente testável.
Perguntas?
#aceito #obrigado