marcosmarcos390314
44 views
32 slides
Aug 30, 2025
Slide 1 of 32
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
About This Presentation
Programação Orientada a objetos, conceitos do que programação
Size: 18.58 MB
Language: pt
Added: Aug 30, 2025
Slides: 32 pages
Slide Content
Programação Orientada a Objetos Aula 00 – Apresentação da Disciplina
Você tem a liberdade de: Compartilhar: copiar, distribuir e transmitir esta obra. Remixar: criar obras derivadas. Sob as seguintes condições: Atribuição: você deve creditar a obra da forma especificada pelo autor ou licenciante (mas não de maneira que sugira que estes concedem qualquer aval a você ou ao seu uso da obra). Uso não comercial: você não pode usar esta obra para fins comerciais. Compartilhamento pela mesma licença: se você alterar, transformar ou criar em cima desta obra, poderá distribuir a obra resultante apenas sob a mesma licença, ou sob uma licença similar à presente.
Objetivos da Aula Compreender o conceito de Programação Orientada a Objetos (POO). Entender a motivação histórica para o uso desse paradigma. Conhecer os principais pilares da POO. Diferenciar programação procedural de programação orientada a objetos. Conceituar e diferenciar classe, objeto, atributo e método.
O que é programação orientada a objetos A Programação Orientada a Objetos (POO) é um paradigma de programação baseado no conceito de objetos , que representam entidades do mundo real ou abstratas. Esses objetos possuem atributos (características) e métodos (comportamentos). Ela foi criada para lidar melhor com a complexidade crescente dos softwares, permitindo modularidade , reuso e manutenção mais eficiente.
O que é programação orientada a objetos A Programação Orientada a Objetos (POO) utilizam Conceitos: Classe e Objeto Atributos e Métodos Mas...........
Relembrando Estrutura de Dados O que aprendemos Estruturas básicas: Vetores e Matrizes Listas (simples, duplas, circulares) Pilhas ( Stack ) Filas ( Queue , Fila Circular, Fila de Prioridade)
Relembrando Estrutura de Dados O que aprendemos Estruturas básicas: Árvores (binária, balanceada, AVL, B- tree etc.) Grafos (representação e percursos)
Relembrando Estrutura de Dados O que aprendemos Algoritmos associados: Ordenação ( Bubble , Quick , Merge, Heap etc.) Busca (sequencial, binária, em árvores e grafos)
Relembrando Estrutura de Dados O que aprendemos Algoritmos associados: Complexidade de algoritmos ( Big-O ) : medir eficiência. Aplicações práticas: bancos de dados, sistemas operacionais, inteligência artificial etc. .
O que é programação orientada a objetos Foco principal: como modelar o mundo real em software , criando objetos que interagem entre si. Conceitos fundamentais: Classe e Objeto Atributos (características) Métodos (comportamentos)
O que é programação orientada a objetos Exemplo do mundo real: Um Carro tem atributos como cor, modelo, ano, e métodos como acelerar(), frear() e ligar(). Um Cachorro tem atributos como ....
POO X AED Estrutura de Dados = como organizar e manipular os dados internamente . POO = como estruturar e modelar o sistema usando objetos que representam o mundo real . Ou seja: Estrutura de Dados → pensa na eficiência . POO → pensa na modelagem e organização do código .
POO X AED A diferença entre POO (Programação Orientada a Objetos) e Estrutura de Dados é bem marcante — apesar de ambas fazerem parte do mundo da programação, elas tratam de coisas diferentes. O que é : É um paradigma de programação — ou seja, um estilo/maneira de organizar o código — baseado no uso de objetos que possuem atributos (dados) e métodos (funções).
Programação Orientada a Objetos Facilitar a organização, reutilização e manutenção do código. Princípios principais : Encapsulamento — esconder detalhes internos e expor apenas o necessário. Herança — uma classe “filha” pode herdar características de uma “classe pai”. Polimorfismo — um mesmo método pode ter comportamentos diferentes dependendo do contexto. Abstração — simplificar conceitos complexos criando representações claras.
Estrutura de Dados É o modo de organizar e armazenar dados na memória para que possam ser usados de forma eficiente. Objetivo : Melhorar o desempenho do programa, garantindo rapidez e economia de memória .
Resumo da diferença Aspecto POO (Paradigma) Estrutura de Dados (Conceito) Foco Organizar o código Organizar os dados Finalidade Melhorar a manutenção e legibilidade Melhorar a eficiência no uso de dados Abrangência Paradigma de programação Conceito aplicado em qualquer paradigma Relação Usa estruturas de dados para implementar objetos Pode ser usada sem POO (ex.: programação procedural)
Programação Orientada a Objetos Na programação orientada a objetos (ou POO, para encurtar), os programas são coleções de objetos » Cada objeto é uma entidade que representa uma parte do programa Os objetos comunicam-se trocando mensagens O programa funciona a partir da “conversa” entre os objetos
Programação Orientada a Objetos
Programação Orientada a Objetos
Programação Orientada a Objetos
Programação Orientada a Objetos
Programação Orientada a Objetos
Programação Orientada a Objetos Jogo
Programação Orientada a Objetos Jogo Cena CONSTRUIR
Programação Orientada a Objetos Jogo Cena CONSTRUIR Personagem (Sobrevivente) Personagem (Killer) ESCONDER DETECTAR
Programação Orientada a Objetos Objetos encapsulam comportamento e dados O comportamento do objeto é determinado pelo seu conjunto de métodos Os dados do objeto são variáveis controladas por ele chamadas atributos
Histórico e Motivação Antes da POO, predominava a Programação Estruturada , que organizava o código em funções e procedimentos. Com o aumento da complexidade dos sistemas, tornou-se difícil manter e expandir grandes projetos, pois alterações em uma parte do código afetavam várias outras.
Histórico e Motivação Nos anos 1960–1970 surgiram as primeiras linguagens orientadas a objetos, como Simula e Smalltalk . Na década de 1980, a POO ganhou força com linguagens como C++ e, nos anos 1990, com Java , tornando-se um padrão na indústria.
Comparação — Programação Estruturada vs Orientada a Objetos Característica Programação Estruturada Programação Orientada a Objetos Organização do código Funções e procedimentos Classes e objetos Foco principal Passos e lógica Entidades e interações Reuso Menos flexível Alto, via herança e composição Facilidade de manutenção Baixa em projetos grandes Alta
Dúvidas?
Em Java class Carro { String modelo; String cor; int ano; void ligar() { System.out.println ("O carro está ligado."); } void acelerar() { System.out.println ("O carro está acelerando."); } } public class Main { public static void main ( String [] args ) { Carro meuCarro = new Carro(); meuCarro.modelo = "Fusca"; meuCarro.cor = "Azul"; meuCarro.ano = 1970; meuCarro.ligar (); meuCarro.acelerar (); } } . using System; class Carro { public string Modelo; public string Cor; public int Ano; public void Ligar() { Console.WriteLine ("O carro está ligado."); } public void Acelerar() { Console.WriteLine ("O carro está acelerando."); } } class Program { static void Main ( string [] args ) { Carro meuCarro = new Carro(); meuCarro.Modelo = "Fusca"; meuCarro.Cor = "Azul"; meuCarro.Ano = 1970; meuCarro.Ligar (); meuCarro.Acelerar (); } }
Exercício Prático Tarefa: Crie uma classe Pessoa com: Atributos: nome e idade. Método: .