18
Orientação a Objetos e Java MSc. Luiz Barboza [email protected] http://barbozaluiz.blogsp ot.com/

0 Intro

  • Upload
    lcbj

  • View
    1.385

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 0 Intro

Orientação a Objetos e Java

MSc. Luiz Barboza

[email protected]

http://barbozaluiz.blogspot.com/

Page 2: 0 Intro

Sobre mim... Mestre em Ciência da Computação com 10 anos de experiência de

mercado, atuando como Arquiteto de Software, com 04 anos direcionados para a área Financeira e com os 03 últimos focados na Garantia de Qualidade para o setor de Telecomunicações.

Qualificação Mestre em Engenharia de Software pelo IPT/USP MBA em Gestão Empresarial pela FGV Especialista em Gestão de TI pela FIAP Bacharel em Ciência da Computação pela UFPE

Certificações SCEA - Sun Certified Enterprise Architect TIBCO Enterprise Message Service Certified ITIL - ITIL Foundation Certified Professional IBM/Rational Specialist for Rational Requirements Management with Use

Cases(+ReqPro) IBM/Rational Certified Solution Designer - IBM Rational Unified Process V7.0 IBM/Rational Solution Designer – Object Oriented Analysis and Design(+Rose) SCWCD - Sun Certified Web Component Developer for the J2EE SCPJ - Sun Certified Programmer for Java 2 Platform

Page 3: 0 Intro

Programação Ementa

Apresenta os conceitos e as principais características das técnicas de programação orientada a objeto, bem como terminologia e tecnologia correlatas.

Objetivos Exercitar a programação orientada a objetos utilizando as etapas do desenvolvimento de

software orientado a objetos com UML Bibliografia

BARNES, D. J. KÖLLING, M. Programação Orientada a Objetos com Java - Uma introdução prática ao BlueJ. Prentice Hall, 2004.

MEYER, Bertrand., Object Oriented Software Construction. 2nd ed. New Jersey: PH, 1997. CHEN, P., GOLDBERG, S., BAGNALL, B. C# para programadores de Java. Alta Books -

Informática, 2002. FOWLER, Martin, UML Essencial.. 3ª ed. Porto Alegre: Bookman, 2005.LIMA, da A. S. UML 2.0. Do requisito à solução. Érica, 2005.MEDEIROS, de E. S. Desenvolvendo

software com UML 2.0: definitivo. São Paulo, Makron Books, 2006.

Page 4: 0 Intro

Agenda

OO e C# Apresenta os conceitos e as principais características das técnicas de

programação orientada a objeto, bem como terminologia e tecnologia correlatas.

Conceitos e terminologia de orientação a objetos Linguagens Orientadas a Objetos vs. baseadas em objetos Histórico e "survey" sobre linguagens orientadas a objetos Técnicas de modularização / Decomposição de Software Herança simples e múltipla Tendências (BD OO, SOs OO) Uma Linguagem orientada a objetos: C#

OOAD - Analise e Projeto Orientado a Objetos Padrões de Projeto

Page 5: 0 Intro

Programação Orientada a Objetos

Foco nos dados (objetos) do sistema, não nas funções

Estruturação do programa é baseada nos dados, não nas funções

As funções mudam mais do que os dados

Page 6: 0 Intro

Um Objeto…

Um objeto é uma entidade com limites bem definidos com uma identidade que encapsula um estado e um comportamento.

Objeto

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

Page 7: 0 Intro

Um Objeto tem Estado O estado de um objeto é uma das possíveis

condições sob a qual o objeto pode estar O estado é composto pelos valores internos do objeto

e suas relações com outros objetos.

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matemática

Professora Clark

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

Page 8: 0 Intro

Um Objeto tem Comportamento

O comportamento determina como um objeto reage interage com o mundo externo

Esta interação é feita a através de troca de mensagens

Comportamento da Professora ClarkOrientar AlunosMinistrar AulaLançar NotasPreparar Prova

Orie

ntarA

lunos(

)

PrepararProva()

LançarNotas()

Professora Clark

MinistrarAula()

Page 9: 0 Intro

Um Objeto tem Identidade

Cada objeto tem um identidade única, mesmo que seu estado seja idêntico ao de outro objeto.

Professor “J Clark” ensina Biologia

Professor “J Clark” ensina Biologia

Page 10: 0 Intro

E uma Classe…

Uma classe a descrição de um conjunto de objetos que compartilham os mesmos atributos, operações, relacionamentos e semântica. Um objeto é uma instância de uma classe

Page 11: 0 Intro

Uma Classe tem Atributos

Um atributo é uma propriedade identificada que especifica um conjunto de valores possíveis a ser atribuído por cada objeto da classe.

Atributos

Estudante

- nome- endereço- identidade- nascimento

Page 12: 0 Intro

Um Classe tem Operações Operações especifica as mensagens que

podem ser enviadas aos objetos Tem uma assinatura que determina os parâmetros

de entrada e saída.

Operações

Student

+ atenderAula()+ realizarProva()+ estudar()

Page 13: 0 Intro

Princípios da Orientação à Objetos

Orientação à Objetos

Enca

psul

amen

to

Abs

traç

ão

Hie

rarq

uia

Mod

ular

idad

e

Page 14: 0 Intro

Abstração Representação simplificada de uma entidade

realrecord Pessoa nome : string; dataNasc : integer;end

procedure idade begin .....

nome

dataNasc idade

29/1/74João =9&%2!1abstraçãoformalização

Page 15: 0 Intro

Encapsulamento Esconde a implementação dos clientes

Orie

ntarA

lunos(

)

PrepararProva()

LançarNotas()

MinistrarAula()

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

DeterninarDisciplina(Inglês)

Det

erni

narD

isci

plin

a()

Page 16: 0 Intro

Modularidade?

Quebra algo complexo em partes menores mais simples mais especializadas

Melhora a extensibilidade e manutenabilidade

Page 17: 0 Intro

Hierarquia

Especialização

Generalização

Poupança

ContaBancaria

ContaCorrentePoupança

CobrarMensalidade()

Define uma relação de Herança entre classes A herenca caracteriza a Generalização

de e Especialização Fundamenta o Polimorfismo

Polimorfismo

Page 18: 0 Intro

Orientação a Objetos e Java

MSc. Luiz Barboza

[email protected]

http://barbozaluiz.blogspot.com/