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
Evaldo Barbosa
January 10, 2014
Programming
0
49
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
21
Conhecendo o Firebase
evaldobarbosa
0
100
Web Apis
evaldobarbosa
0
42
Estendendo o HTML com diretivas AngularJS
evaldobarbosa
0
34
Montagem de equipes de software
evaldobarbosa
0
30
GET /AngularJS 200 OK
evaldobarbosa
0
61
Other Decks in Programming
See All in Programming
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
160
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
2.3k
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
930
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
21
8.7k
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
150
Porting a visionOS App to Android XR
akkeylab
0
640
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
1
150
すべてのコンテキストを、 ユーザー価値に変える
applism118
4
1.4k
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
710
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Six Lessons from altMBA
skipperchong
28
3.9k
Code Reviewing Like a Champion
maltzj
524
40k
Statistics for Hackers
jakevdp
799
220k
A designer walks into a library…
pauljervisheath
207
24k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
320
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Facilitating Awesome Meetings
lara
54
6.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
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