Conceitos básicos de programação orientada a objetos
-
Upload
leonardo-santos -
Category
Technology
-
view
4.187 -
download
1
description
Transcript of Conceitos básicos de programação orientada a objetos
![Page 1: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/1.jpg)
Básico de programação orientada a objetosAbril/2010
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCOUNIVERSIDADE ABERTA DO BRASILDEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICACurso de Bacharelado em Sistemas de Informação
Leonardo Melo [email protected]
![Page 2: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/2.jpg)
Introdução a orientação a objetos
Capítulo 1
![Page 3: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/3.jpg)
Evolução das linguagens de programação Linguagem de máquina e linguagem
montadora Muitos comandos para fazer alto simples; Exigência de muito conhecimento; Códigos não tão legíveis;
Linguagens de alto nível Popularização do uso dos computadores; Códigos mais amigáveis devido à
complexidade dos problemas;
![Page 4: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/4.jpg)
Paradigmas de programação 1) Paradigma imperativo
Código mais amigágel que linguagens montadoras;
Código sequencial; 2) Paradigma procedural
Paradigma imperativo mas com o uso de subrotinas (funções e procedimentos);
![Page 5: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/5.jpg)
Paradigmas de programação 3) Programação Modular e
EstruturadaSurgiu com a demanda de grandes
projetos;Agrupamento de código-fonte através
de módulos;Mais facilidade na manutenção do
código-fonte;
![Page 6: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/6.jpg)
Paradigmas de programação 4) Paradigma orientado a objetos
O problema é partido em vários pedaços, a ponto de definirmos objetos/entidades;
Visa aproximar a maneira como construímos os programas com o mundo real;
![Page 7: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/7.jpg)
Vamos comparar!!!
![Page 8: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/8.jpg)
Introdução a orientação a objetos
Capítulo 2
![Page 9: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/9.jpg)
Conceitos de Orientação a Objetos
Classe e Objeto Abstração
Classificação/Instanciação;Agregação/Composição;Associações simples;Encapsulamento;Generalização/Especialização;Polimorfismo;
![Page 10: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/10.jpg)
O que é classe e o que é objeto? Classe: Uma classe é a descrição de um
grupo de objetos com propriedades (atributos), comportamentos (métodos), e relacionamentos com outros objetos (associações e agregações);
Objeto: Denota uma entidade, seja ela de natureza física, conceitual ou de software. Elementos como pessoas, organizações, máquinas, animais ou eventos podem ser considerados objetos.
![Page 11: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/11.jpg)
O que é abstração???
Abstração é considerada a habilidade de modelar
características do mundo real do problema que o programador
esteja tentando resolver.
![Page 12: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/12.jpg)
Classificação/Instanciação
Classificar significa agrupar objetos com base em estruturas e comportamentos semelhantes;
Instanciar objetos significa gerar novos exemplares a partir de uma descrição abstrata de um objeto genérico.
![Page 13: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/13.jpg)
Classificação/Instanciação
![Page 14: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/14.jpg)
Agregação/Composição
A ideia de agregação ou composição estabelece a criação de novas classes de objetos a partir da junção de classes já existentes.Agregação: Quando unimos um conjunto de
objetos para formarmos um novo objeto;Decomposição: Quando, analisando um
objeto, isolamos cada um de seus componentes.
![Page 15: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/15.jpg)
Agregação/Composição
![Page 16: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/16.jpg)
Associações simples
As entidades envolvidas apresentam existências independentes, mas existe uma ligação entre elas. A agregação não é única forma de relacionamento entre objetos e classes.
![Page 17: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/17.jpg)
Associações simples
![Page 18: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/18.jpg)
Encapsulamento
Um dos aspectos mais positivos da programação modular foi a ideia de encapsulamento de informações.
![Page 19: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/19.jpg)
Encapsulamento
![Page 20: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/20.jpg)
Generalização/Especialização Generalização e especialização são
abstrações que permitem o reuso de objetos através da criação de classes de objetos a partir de outras classes.
![Page 21: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/21.jpg)
Generalização/Especialização
![Page 22: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/22.jpg)
Polimorfismo
um mesmo tipo de objeto, sob certas condições, pode realizar ações diferentes ao receber uma mesma mensagem. Ou seja, objetos podem ter reações diferentes ao mesmo estímulo.
![Page 23: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/23.jpg)
Polimorfismo
![Page 24: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/24.jpg)
Dicas de estudo
Foquem seus estudos em Abstração: Classificação/Instanciação; Agregação/Composição; Associações simples; Encapsulamento; Generalização/Especialização; Polimorfismo;
Instalem o Java SDK , Eclipse e
pratiquem!!!
![Page 25: Conceitos básicos de programação orientada a objetos](https://reader033.fdocument.pub/reader033/viewer/2022061210/54912c11b4795993058b493d/html5/thumbnails/25.jpg)
Dúvidas?