Introdução à Programação Orientada a Objetos



Documentos relacionados
Introdução à Programação. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

Técnicas de Programação Avançada TCC Profs.: Anselmo Montenegro Conteúdo: Introdução à Orientação a Objetos

Análise e Projeto Orientados por Objetos

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos

ITIL v3 - Operação de Serviço - Parte 1

PCS LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA

Psicologia Social. É a área da Psicologia que procura estudar a interação social.

Programação Orientada a Objetos. Encapsulamento

Engenharia de Software II

Modelagem com UML. Fabio Perez Marzullo. IEEE Body of Knowledge on Services Computing Committee on Services Computing, IEEE Computer Society

DESENVOLVENDO O SISTEMA

Secretaria de Desenvolvimento Social e Direitos Humanos Secretaria Executiva de Desenvolvimento e Assistência Social Gerência de Planejamento,

AKNA SOFTWARE. Configurações. de DNS

Montagem e Manutenção. Luís Guilherme A. Pontes

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes

Implementando uma Classe e Criando Objetos a partir dela

Gustavo Malavota Administrador Vendedor Palestrante Professor de Marketing

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Prof. Jhonatan Fernando

Orientação a Objeto e UML Questões 2014 Prof. Felipe Leite

Núcleo de Pós-Graduação Pitágoras Escola Satélite. Curso de Especialização em Engenharia de Segurança do Trabalho

Influenciam nossa percepção; ajudam-nos a organizar e a coordenar a Classes estimulam projeto centrado em dados:

REDES DE COMPUTADORES. Detecção e Correção de Erros

Assine e coloque seu número de inscrição no quadro abaixo. Preencha, com traços firmes, o espaço reservado a cada opção na folha de resposta.

MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.

POO Programação Orientada a Objetos. Classes em Java

Um mercado de oportunidades

Processos de gerenciamento de riscos. Planejamento Identificação Análise Resposta Monitoramento

PROGRAMAÇÃO ORIENTADA A OBJETOS

Permitir a troca de mensagens de texto entre os dois alunos; Permitir que um aluno enviasse para o outro uma cópia de prova;

Diagrama de Estrutura Composta

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS. 2º TRIMESTRE Patrícia Lucas

ÇÃO COM OBJECTOS PROGRAMAÇÃ. Programação com Objectos. Programação com Objectos TUDO É UM OBJECTO TUDO É UM OBJECTO ÍNDICE.

CTIC - Centro de Pesquisa e Desenvolvimento em Tecnologias Digitais para Informação e Comunicação CHAMADA DE PROJETOS

Orientação a Objetos com Java

Gestão por Competências

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais prof@edison.eti.

Sistemas Operacionais. Prof. André Y. Kusumoto

Programação Orientada a Objetos. Introdução à Análise Orientada a Objetos (AOO)

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

13/10/11 TIPOS DE UTILITÁRIOS UTILITÁRIOS 0798 INTRODUÇÃO À PROGRAMAÇÃO TIPOS DE UTILITÁRIOS TIPOS DE UTILITÁRIOS

UNIVERSIDADE DO OESTE PAULISTA CURSO DE ZOOTECNIA. Regulamento do Estágio Supervisionado I e II

Curso: Diagnóstico Comunitário Participativo.

Recepção de novos servidores: orientações para gestores. DP, DDRH e PRODIRH UFG/2015

Análise e Projeto de Software

EDUCAÇÃO PARA O TRÂNSITO

Tabelas vista de estrutura

Linguagem de Programação I. Orientação a Objetos em Java

Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira

Psicossociologia do Trabalho. I didn t say that I didn t say it. I said that I didn t say that I said it. I Want to make that very clear

Profa. Dra. Amanda Liz Pacífico Manfrim Perticarrari.

Programação Orientada a Objetos (DPADF 0063)

AVALIAÇÃO DE DESEMPENHO

Programação Orientada a Objetos

RELAÇÕES DE GÊNERO E VIOLÊNCIA

REGULAMENTO DE ESTÁGIO OBRIGATÓRIO DO CURSO DE NUTRIÇÃO CURRÍCULO 2 I INTRODUÇÃO

Administração em Enfermagem Aula 1

Universidade Federal de Uberlândia Disciplina: POO2 Prof. Fabiano Dorça. Padrões de Projeto. Padrão Command

ÍNDICE PRIMEIRA PARTE A ARTE DA COMUNICAÇÃO

Risco de projeto é um evento ou condição incerta que, se ocorrer, tem um efeito positivo ou um negativo no objetivo de um projeto.

Professor: Venicio Paulo Mourão Saldanha Site:

ISO 9001: SISTEMAS DE GESTÃO DA QUALIDADE

FUNDAÇÃO CULTURAL PLANALTO DE PASSO FUNDO Rádio Planalto AM / FM e Revista Somando

PORTARIA Nº 47 DE 20 DE AGOSTO DE 2007

Arquitetura dos Sistemas Operacionais

4.4. UML Diagramas de interacção

Gestão de Projetos com o uso do dotproject

Curso de Especialização Lato Sensu - Gestão em Saúde EaD. MATRIZ CURRICULAR. Módulo/1 - Módulo Básico Carga horária total: 270 Hs

Introdução. Gerência de Projetos de Software. Sumário. Sistemas de Informação para Processos Produtivos

PRODUTOS DO COMPONENTE Modelo de Gestão Organizacional Formulado e Regulamentado

PALAVRAS-CHAVE Lixo-eletrônico. Reciclagem. Tecnologia.

Capítulo II Modelos de Programação Distribuída

Tribunais Exercícios Gestão de Pessoas Atendimento Ao Público Keyvila Menezes

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Departamento de Informática

Engenharia de Software III

REDES DE COMPUTADORES

Orientação à Objetos. Aécio Costa

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

1 Introdução. 2 Funcionamento

Manual de Comunidades RIPALC

QUESTÕES PARA ESTUDO DIAGRAMA DE CLASSE

GengScann Automação Comercial e Industrial. Soluções Inteligentes para Empilhadeiras

Fundamentos de Banco de Dados e Modelagem de Dados

ADMINISTRAÇÃO GERAL GESTÃO DO DESEMPENHO

Transcrição:

Introdução à Programação Orientada a Objetos Prof. Marcelo Cohen 1. Contextualizando o problema O que leva um programador a mudar do paradigma procedimental para um novo? A resposta esta na complexidade crescente dos sistemas e nas limitações da capacidade humana de compreensão de um sistema como um todo. Sistema complexo = conjunto grande e diverso de comportamentos tendo um longo ciclo de vida e muitos usuários dependendo dele. A complexidade está na quantidade e diversidade. 1

2. Orientação a Objetos Paradigma Paradigma é um conjunto de regras que estabelecem fronteiras e descrevem como resolver os problemas dentro destas fronteiras. Os paradigmas influenciam nossa percepção; ajudam-nos a organizar e a coordenar a maneira como olhamos para o mundo... Reengenharia - Reestruturando a Empresa Daniel Morris e Joel Brandon Como assim??? Em Ciência da Computação: Paradigmas explicam como os elementos que compõem um programa são organizados e como interagem entre si. 2

Orientação a Objetos Conceito No mundo real, tudo é objeto! Os objetos se relacionam entre si de diversas maneiras Orientação a Objetos Conceito (2) Um programa orientado a objetos é estruturado como uma comunidade de agentes que interagem entre si, denominados objetos. Cada objeto tem um papel a cumprir Cada objeto oferece um serviço ou realiza uma ação que é usada por outros membros da comunidade 3

Exemplo real: montagem de um computador Composto por vários componentes: placa-mãe CPU placa de vídeo disco rígido teclado, etc. Cada componente é bastante sofisticado, mas o usuário não precisa saber como funciona internamente. Cada componente é independente dos demais. Para quem está montando, interessa apenas como os componentes interagem entre si: a placa de vídeo encaixa no slot? O monitor funciona com essa placa? A CPU é compatível com a placa-mãe? Objeto - representação Operações / métodos / interface (público) Dados / propriedades / atributos (privado) 4

Exemplo: Lâmpada Operações: ligar desligar Dados: ligada (s/n) potência voltagem Encapsulamento (data hiding) É definido como uma técnica para minimizar as interdependências entre módulos, através da definição de interfaces externas. Caixa preta - não é necessário saber como funciona internamente, mas sim como utilizar. 5

Encapsulamento A interface (pública) de um objeto declara todas as operações permitidas (métodos) Todo o acesso aos dados é feito através da chamada a um método definido pelo objeto Mudanças na implementação interna do objeto (que preservem a sua interface externa) não afetam o resto do sistema Encapsulamento - benefícios Segurança: protege os objetos de terem seus atributos corrompidos por outros objetos. Independência: escondendo seus atributos, um objeto protege outros de complicações de dependência da sua estrutura interna. 6

Mensagens Objetos interagem e se comunicam através de mensagens... Receptor (servidor) Emissor (cliente) Métodos...as mensagens identificam os métodos a serem executados no objeto receptor. 7

Mensagens e Métodos Para invocar um método, deve-se enviar uma mensagem para o objeto desejado Para enviar uma mensagem, deve-se identificar o objeto que receberá a mensagem identificar o método que o objeto deverá executar passar os argumentos requeridos pelo método Abstração Focalizar o essencial, ignorar propriedades acidentais AERONAVE 8

Classes Uma classe determina um conjunto de objetos com: propriedades semelhantes comportamentos semelhantes relacionamentos comuns com outros objetos Objetos ou instâncias classificação instanciação Classe Lamp Atributos ligada potência voltagem Métodos ligar desligar Classe: uma fábrica de objetos Classe Lamp Lamp 3 Lamp 1 Lamp 2 Objetos ou instâncias da classe Lamp 9

Código da Classe Lamp import java.lang.*; class Lamp { private int potencia; private int voltagem; private boolean ligada; public Lamp(int pot,int volt){ potencia = pot; voltagem = volt; public void ligar { ligada = true; public void desligar { Código da Classe Lamp import java.lang.*; class Lamp { private int potencia; private int voltagem; private boolean ligada; public Lamp(int pot,int volt){ potencia = pot; voltagem = volt; Dados / atributos public void ligar { ligada = true; public void desligar { 10

Código da Classe Lamp import java.lang.*; class Lamp { private int potencia; private int voltagem; private boolean ligada; public Lamp(int pot,int volt){ potencia = pot; voltagem = volt; public void ligar { ligada = true; Operações / métodos public void desligar { 11