Algoritmos e Programação II

Documentos relacionados
Processo de Desenvolvimento de Software

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

Programação Orientada a Objetos

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação Orientada a Objetos

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO

1.1. Definição do Problema

Programação em JAVA. Subtítulo

PROGRAMAÇÃO ORIENTADA A OBJETOS -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

Bacharelado em Ciência da Computação 2009

Modelando sistemas em UML - Casos de uso.

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

Tipos de Banco de Dados - Apresentação

Nº horas ESTRATÉGIAS RECURSOS AVALIAÇÃO

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas

Introdução. Parte 01. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Banco de Dados. Banco de Dados. Conceitos Básicos. Banco de Dados SGBD SGBD. Fundamentos. Fernando Fonseca Ana Carolina.

Programação Orientada a Objetos SANTOS, Rafael

Universidade Paulista

Programação de Computadores I. Linguagem C Função

BANCO DE DADOS I AULA 2. Willamys Araújo willamysaraujo7@gmail.com

Programação Orientada a Objetos

Algoritmos APRENDENDO A PROGRAMAR COM C#

Modulo II Padrões GRASP

Métodos Formais. Agenda. Relações Binárias Relações e Banco de Dados Operações nas Relações Resumo Relações Funções. Relações e Funções

Computação Gráfica Aula 0. Alexandre de Barros Barreto - Ms

Aula 04 Introdução à Programação Orientada à Objetos

Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão

Refatoração Melhorando o sistema e preparando pra a Web

Linguagem de Programação I Apresentação da Disciplina

1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010

Linguagens e Técnicas de Programação II

Interpretações de Qualidade de Software. Interpretações de Qualidade de Software. Aspectos Importantes das Definições de Qualidade

SIG. USANDO A TECNOLOGIA COMO SUPORTE Tecnologias de Apoio

Arquitetura de Banco de Dados

Gerenciamento de Integração. Prof. Anderson Valadares

Montadores e Compiladores

7. Defina encapsulamento. R.: Encapsular é ocultar. Criar uma cápsula ao redor da classe, para proteger o que está dentro dela.

Requisitos de Software

Análise de Sistemas 3º Bimestre (material 2)

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Padrões de Projeto. Factory Method

Formação WEB com PHP. Subtítulo

PDS Aula 1.2 Introdução a Java, POO e Composição. Prof. Bruno Moreno

Maratona de Programação - Dicas Para Iniciantes

Exemplo, ao invés de você ter centenas de funções no mesmo contexto para atividades diferentes, você agrupa em objetos com comportamentos semelhantes

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

INTEGRAÇÃO JAVA COM ARDUINO

Informação-Prova de Equivalência à disciplina de: Aplicações Informáticas B. 1. Introdução. Ensino Secundário. Ano letivo de 2011/12

Desenvolvimento de Aplicações Desktop

Universidade Federal da Paraíba Centro de Informática Departamento de Informática

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Linguagens e Paradigmas de Programação

Introdução à Programação. Funções e Procedimentos. Prof. José Honorato F. Nunes honoratonunes@gmail.com

Introdução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos

Optativas Comércio Eletrônico Comunicação Oral e Escrita Customização de Sistemas Integrados Desenvolvimento Avançado de Software

Daniel Wildt

Sistemas de Informações Gerenciais

Aula II Orientação a Objetos. Pedro Baesse Alves Pereira

RESOLUÇÃO. Artigo 2º - O Curso, ora criado, será oferecido no turno noturno, com 10 semestres de duração e com 50 vagas iniciais.

Programação Orientada a Objetos

Programação Orientada a Objetos

RESOLUÇÃO N o RESOLVE

OpenPDV: Sistema aberto para gerenciamento de restaurantes

Modelo CMMI em Fábrica de Software

Inteligência Artificial Redes Neurais Artificiais

CRITÉRIOS ESPECÍFICOS DE AVALIAÇÃO

Algoritmo e Pseudo-código

Fundamentos de Arquitetura e Organização de Computadores

Análise e Projeto de Sistemas OO

Guia para Modelagem de Casos de Uso Metodologia CELEPAR

Conselho da Justiça Federal

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

Sistemas de Tempo Real

EN Engenharia Unificada I. O MÉTODO DE PROJETO EM ENGENHARIA Centro de Engenharia, Modelagem e Ciências Sociais Aplicadas

Glossário Versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Histórico de Revisão

Arquitetura de Software visão emergente

Projeto Integrador Gestão em TI II Gestão em Pessoas. Organograma DIRETOR DEPARTAMENTO DE T.I ANALISTA TÉCNICO

GESTÃO DA MANUTENÇÃO

Arquiteturas para Sistemas Distribuídos I

Avaliação e Desempenho Aula 1 - Simulação

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.

Transcrição:

Algoritmos e Programação II

Agenda Desenvolver Software Objetos Classes Estudo de algumas Classes da API Estudo de algumas Classes da API Pacotes Criando nossa primeira classe

Desenvolver SOFTWARE

GAP Semântico Distância entre o problema no mundo real e o modelo abstrato construído; Quanto menor, mais rápida será a construção da solução; Portanto, diminuir o gap semântico tornou-se um dos objetivos da Engenharia de Software; O paradigma orientado a objetos busca meios de diminuir este gap.

Paradigmas de desenvolvimento O que é um paradigma? Um exemplo, um modelo, um padrão; Um conjunto de idéias, uma base filosófica. Um paradigma de desenvolvimento agrupa métodos e técnicas que seguem um mesmo conjunto de princípios; Os dois mais conhecidos são: Desenvolvimento Estruturado; Orientação a Objetos (OO).

Paradigmas de desenvolvimento Estruturado: Modelo entrada processamento saída; Dados separados das funções. Orientado a Objetos (OO): O mundo é composto por objetos; Objetos combinam dados e funções; Conceitos do problema são modelados como objetos que são associados e interagem entre si.

Paradigma OO x Estruturado

Desvantagens do Paradigma Estruturado O gap semântico é maior; Frequentemente gera sistemas difíceis de serem mantidos: As funções tem que conhecer a estrutura dos As funções tem que conhecer a estrutura dos dados; Mudanças na estrutura dos dados acarreta alteração em todas as funções relacionadas.

Benefícios esperados pela OO Capacidade de enfrentar novos domínios; Melhoria da interação analistas x especialistas; Aumento da consistência interna da análise; Uso de uma representação básica consistente para análise e projeto; Alterabilidade, legibilidade e extensibilidade; Possibilidade de ciclos de vida variados; Apoio à reutilização.

Filosofia O mundo é composto por objetos; OO tenta gerenciar a complexidade dos problemas do mundo real abstraindo o conhecimento relevante e encapsulando-o em objetos.

Programação Orientada a Objetos POO é o paradigma de programação dominante nos dias de hoje, apesar de ter mais de 30 anos!!! (Simula 67 e SmallTalk 72); Demorou muito tempo pra ser adotada, mas hoje em dia é o paradigma principal; Anos 70 e 80: Programação estruturada. Enfatiza o uso de procedimentos que modificam o estado do programa.

Programação Orientada a Objetos POO é um paradigma de programação de computadores onde se usam classes e objetos, para representar e processar os dados em um programa de computador; Geralmente em um programa orientado a objetos (por exemplo em Java) temos várias definições de classes e um aplicativo (a classe que contém o main em Java), que cria os objetos partindo das classes e usa as operações desses objetos.

Objetos

Objetos Pode ser descrito por um conjunto de atributos e seu comportamento (operações). Podem ser coisas abstratas (ex.: uma reserva de passagem aérea) ou concretas (ex.: um documento). Ex:

Objetos Atributos: são as características deste objeto, por exemplo, CARRO. Cor Marca Velocidade

Objetos Comportamento: são os métodos que o objeto pode executar, por exemplo, CARRO. Acelerar Freiar Parar

Objetos Estado definido pelo valor de seus atributos; Comportamento são os métodos; Identidade são as referências.

Grupo de Objetos Com os mesmos atributos e mesmo comportamento pertencem a mesma classe. Exemplo: CARRO COR MARCA VELOCIDADE ACELERAR FREIAR PARAR Nome da CLASSE Atributos Métodos

Grupo de Objetos CARRO 1 COR: azul MARCA: gol VELOCIDADE: 60 ACELERAR FREIAR PARAR CARRO 2 COR: branca MARCA: vectra VELOCIDADE: 70 ACELERAR FREIAR PARAR CARRO 3 COR: verde MARCA: fiesta VELOCIDADE: 50 ACELERAR FREIAR PARAR 3 Objetos da Classe CARRO

Classes

Classe É um modelo que define os atributos e métodos comuns a um conjunto de objetos. Um objeto é uma instância de uma CLASSE. Exemplo: O objeto CARRO 1 é uma instância da classe carro.

Classes na Linguagem Java Possui inúmeras classes distribuídas em vários pacotes. PACOTES é uma espécie de recipiente para classes que estão logicamente relacionadas. API (Application Programming Interface) Link: http://download.oracle.com/javase/1.4.2/docs/api