Programação Orientada pelos Objectos. Code Invaders

Tamanho: px
Começar a partir da página:

Download "Programação Orientada pelos Objectos. Code Invaders"

Transcrição

1 Programação Orientada pelos Objectos Code Invaders

2 Nesta aula vamos Perceber o que é um motor de jogo Instalar um motor de jogo no eclipse Revisitar o conceito de interfaces Discutir as interfaces oferecidas pelo motor de jogo instalado Desenvolver um jogo de computador Testar o jogo, num duelo emocionante

3 Motor de jogo O motor de jogo é o componente central nos jogos de computador modernos Os jogos são construídos em cima desse componente para reaproveitar: Motor de gráficos 2D, ou 3D Motor de física e detector de colisões Gestor de som Gestor de tarefas

4 Porquê jogos de computador, na cadeira de POO? Muitos estudantes de informática gostam de jogos de computador Alguns podem vir a trabalhar no seu desenvolvimento, no futuro Um motor de jogo tem uma API: Classes e interfaces desenvolvidas por terceiros Código fonte indisponível Vamos reutilizar um componente de software programando em Java, claro.

5 Vamos construir um jogo catita CodeInvaders: um jogo com até 6 jogadores Cada jogador programa uma nave espacial e três drones para recolher energia para o seu planeta de origem Ganha quem fizer mais pontos: Acumulando no planeta de origem energia recolhida no espaço Guardando energia na nave e drones Dando tiros nos malditos adversários

6

7 Instalação do plug-in no eclipse Em casa: Fazer download do plug-in: Descompactar os dois ficheiros da directoria plugins, para a directoria plugins da instalação do eclipse Entrar no eclipse Fazer File > New > Project, seleccionar Other > Game Project, e escoher o nome do projecto No default package surge o ficheiro MySpaceShip.java onde podemos programar o comportamento das nossas naves

8 Instalação do plug-in no eclipse Nos laboratórios: Fazer download do plugin em: Descompactar o zip Correr o eclipse No eclipse ir a: Help->Software Updates->Manage Configuration->Add an Extension Location e seleccionar a directoria eclipse (criada pelo zip) Reiniciar o eclipse Fazer File > New > Project, seleccionar Other > Game Project, e escoher o nome do projecto No default package surge o ficheiro MySpaceShip.java onde podemos programar o comportamento das nossas naves

9 Criação de um projecto

10 Uma nave bastante inútil

11 Como experimentar?

12 Documentação: Help > Help Contents

13 Recordando as interfaces Utilizamos tipos interface para aumentar a facilidade de reutilização de código Na interface, vamos declarar um conjunto de métodos e suas assinaturas Também podemos declarar constantes Não vamos implementar esses métodos na interface, ao contrário do que fazemos nas classes.

14 Sobre a API do CodeInvaders 6 interfaces (IObject, IShip, ISpaceShip, IControlledShip, IBullet, IPulse) A biblioteca tem classes que implementam estas interfaces, mas estão todas escondidas, e ainda bem para nós (facilidade de reutilização). 2 Classes que não vamos editar (World, SpaceShip) 1 Classe que vamos editar (MySpaceShip) Há um esqueleto desta classe disponível Temos de implementar as duas funções do esqueleto Podemos implementar outras funções auxiliares

15

16 Exemplo 1: Barata tonta // rotate ship and drones in random directions protected Random rand = new Random(); public void move(int lastmovetime) { baratatonta(); } private void baratatonta() { setrotationthrust(rand.nextint(20) - 10); IControlledShip[] drones = getmydrones(); int size = drones.length; for (int i = 0; i < size; i++) drones[i].setrotationthrust(rand.nextint(20) - 10); }

17 Exemplo 2: Centrão public void move(int lastmovetime) { //baratatonta(); centrao(); } //... //move all ships to the center of the world public void centrao(icontrolledship ship) { double head = ship.getheadingto(world.width/2,world.height/2); ship.turntoheading(head); ship.setthrust(max_thrust / 2); } public void centrao() { centrao(this); IControlledShip[] drone = getmydrones(); int size = drone.length; for (int i = 0; i < size; i++) centrao(drone[i]); }

18 Exemplo 3: Rambo public void move(int lastmovetime) { //baratatonta(); //centrao(); rambo(); } // Shoot as soon as possible, no matter where to. public void rambo() { if (getremainingreloadtime() == 0) fire(); }

19 Exemplo 4: Caceteiro //Aggressive, stupid ship. Goes to the center of the world //and shoots whenever it can, hitting whatever possible //target. Including its own drones... //Likely to drain all its energy. public void move(int lastmovetime) { baratatonta(); centrao(); rambo(); }

20 Claramente, podemos de fazer melhor que isto, não é? Ler atentamente o manual de instruções. Agir em função dos outros objectos do mundo Podemos dirigir as naves e drones para as fontes de energia, fazer pontaria antes de disparar, voltar à base para enviar energia para o nosso planeta, etc Devemos observar o estado de energia das nossas naves e drones Naves sem energia deixam de fazer pontos Nem só de tiros vive a pontuação

21 Pontuação Tiros em: nave adversária: 5 pontos drone adversário: 2 pontos Nota prévia: Bater em mortos NÃO DÁ PONTOS Onda de choque em: nave adversária: 10 pontos em drone adversário: 5 pontos Energia: 5 unidades de energia enviadas para a base: 1 ponto 10 unidades de energia restantes na nave no fim do jogo: 1 ponto 20 unidades de energia restantes em cada drone no fim do jogo: 1 ponto

22 Controlo O que é que se ganha ao usar um motor de jogo, no desenvolvimento de jogos? O conceito é extensível a outro tipo de programas? Quando programar a minha nave, devo declarar um objecto do tipo World? Porquê? As interfaces do CodeInvaders não têm construtores Porquê? E agora? Como posso interagir com as fontes de energia, os planetas, ou mesmo os meus drones, por exemplo?

23 Exercícios As naves dos slides conseguem fazer menos pontos do que se estivessem paradas. Servem apenas para ilustrar a sua programação. Temos de experimentar mais. Por exemplo: Enviar os seus drones em busca de energia, voltando à nave para a abastecer; usar a nave para abastecer o planeta. Dar tiros, ou enviar ondas de choque quando há naves e drones adversários sob mira. Activar os escudos, quando em perigo. Usar os drones como caças, enquanto a nave recolhe energia para o planeta. Usar a nave para reabastecer os drones, quando necessário.

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos) Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private

Leia mais

Programação Orientada pelos Objectos CodeRuler

Programação Orientada pelos Objectos CodeRuler Programação Orientada pelos Objectos CodeRuler O trabalho deste guião consiste em implementar um jogo. Os objectivos do guião são os seguintes: Perceber o que é um motor de jogo. Instalar um motor de jogo

Leia mais

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java. P. Fazendeiro & P. Prata POO FP0/1 ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java. 0 Iniciar o ambiente de desenvolvimento integrado

Leia mais

Índice. 1. Introdução Instalação: Eclipse e Android Primeira aplicação em Android... 11

Índice. 1. Introdução Instalação: Eclipse e Android Primeira aplicação em Android... 11 Índice 1. Introdução... 03 2. Instalação: Eclipse e Android... 04 3. Primeira aplicação em Android... 11 1. Introdução Android trata-se de um sistema operacional baseado em Linux. No dia 05 de novembro

Leia mais

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS - ORIENTAÇÃO A OBJETOS

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS - ORIENTAÇÃO A OBJETOS 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS - ORIENTAÇÃO A OBJETOS Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br

Leia mais

Teste Automatizado POO. Prof. Marcio Delamaro

Teste Automatizado POO. Prof. Marcio Delamaro Teste Automatizado POO Prof. Marcio Delamaro 1/51 Teste Ato de executar um programa e verificar se os resultados produzidos estão corretos Manual: realizado passando-se os parâmetros e olhando se o resultado

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Pacotes e Encapsulamento Msc. Paulo de Tarso F. Júnior 1 Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes e interfaces

Leia mais

ESQUEMA AULA PRÁTICA 1

ESQUEMA AULA PRÁTICA 1 P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente JBuilder Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado JBuilder. Start

Leia mais

TECNOLOGIAS DE ACESSO A BASES DE DADOS. Profª Ana Paula Cação Maio de 2018

TECNOLOGIAS DE ACESSO A BASES DE DADOS. Profª Ana Paula Cação Maio de 2018 PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO MÓDULO 17-A TECNOLOGIAS DE ACESSO A BASES DE DADOS Profª Ana Paula Cação Maio de 2018 CONTEÚDOS 1. Métodos de Ligação a Bases de Dados 2. Arquitectura de Componentes

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Tutorial ROBOCODE. Quando você executar o Robocode a seguinte tela será exibida:

Tutorial ROBOCODE. Quando você executar o Robocode a seguinte tela será exibida: Tutorial ROBOCODE Baixando e instalando o Robocode Robocode é uma criação de Mathew Nelson, um engenheiro de software em Tecnologia Avançada, na divisão de internet da IBM. Para fazer o download basta

Leia mais

ESQUEMA AULA PRÁTICA 1

ESQUEMA AULA PRÁTICA 1 P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente JBuilder Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado JBuilder. Start

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Múltiplos aliens Por enquanto todos os nossos aliens se parecem e se comportam do mesmo jeito, mas e se

Leia mais

Linguagem de Programação IV Introdução

Linguagem de Programação IV Introdução Linguagem de Programação IV Introdução Prof. Alessandro Borges 2 Tópicos Orientação a objetos Classe Objeto Abstração Encapsulamento Herança Polimorfismo Plataforma Java 3 4 POO é um paradigma de programação

Leia mais

Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA. Fazer explodir a espaçonave inimiga quando um tiro acertá-la.

Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA. Fazer explodir a espaçonave inimiga quando um tiro acertá-la. META Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA Conteudista: André Luiz Brazil Aula 10: PRODUZINDO EFEITOS DURADOUROS (EXPLOSÕES) NO JOGO Fazer explodir a espaçonave inimiga quando um tiro acertá-la.

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Instalando o Eclipse e o Android

Instalando o Eclipse e o Android Instalando o Eclipse e o Android Para a elaboração desse material, eu fiz o uso do Eclipse Galileo (Eclipse 3.5.1 para Windows) e o SDK do Android Revisão 5 e o plugin do Android para o Eclipse ADT-0.9.6.

Leia mais

Programação Orientada pelos Objetos B. Desenvolvimento orientado pelos objectos

Programação Orientada pelos Objetos B. Desenvolvimento orientado pelos objectos Programação Orientada pelos Objetos B Desenvolvimento orientado pelos objectos 2 Slides elaborados pelos Professores Miguel Goulão e Adriano Lopes, no âmbito do ensino da programação orientada pelos objectos

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.1 http://www.dcc.ufrj.br/~fabiom/java Visibilidade Nem todos os campos e operações de um objeto são para consumo externo; várias delas podem

Leia mais

1.5 PROGRAMAÇÃO DE JOGOS EM AMBIENTE DE REA LIDADE AUMENTADA AMBIENTES INTEGRADOS DE DESENVOLVIMENTO DE JOGOS 19

1.5 PROGRAMAÇÃO DE JOGOS EM AMBIENTE DE REA LIDADE AUMENTADA AMBIENTES INTEGRADOS DE DESENVOLVIMENTO DE JOGOS 19 ÍNDICE GERAL SOBRE O LIVRO XI 1 INTRODUÇÃO 1 1.1 GERAÇÃO DIGITAL NATIVE 2 1.2 ALGORITMIA E PROGRAMAÇÃO DE COMPUTADORES 2 1.3 COMPUTAÇÃO EM NUVEM 4 1.4 PROGRAMAÇÃO DE DISPOSITIVOS MÓVEIS 6 1.5 PROGRAMAÇÃO

Leia mais

Sobre o envio de trabalhos para o Mooshak

Sobre o envio de trabalhos para o Mooshak Sobre o envio de trabalhos para o Mooshak Nota prévia Este documento é relativamente extenso, em boa parte pela quantidade de imagens que o ilustram. Está dividido em 3 partes. A primeira diz respeito

Leia mais

No final deste curso, saberás criar programas através da linguagem de programação Java.

No final deste curso, saberás criar programas através da linguagem de programação Java. Programação em Java Programação Formato: Mentored - Online Preço: 415 ( Os valores apresentados não incluem IVA. Oferta de IVA a particulares e estudantes. ) Horário: Flexível das 24h/24h Duração: ~45h

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Curso Profissional de Gestão e Programação de Sistemas Informáticos Disciplina: Programação e Sistemas de Informação Programação Orientada a Objetos Módulos 9/10/11 POO 2016/2017 História A OO surgiu no

Leia mais

UFCD SISTEMA OPERATIVO INSTALAÇÃO E CONFIGURAÇÃO

UFCD SISTEMA OPERATIVO INSTALAÇÃO E CONFIGURAÇÃO ÍNDICE 1 ÍNDICE 3. FUNÇÕES DE UM SISTEMA OPERATIVO... 3 A Gestão dos programas... 3 A.1) Monotarefa... 3 A.2) Multitarefa... 4 B Controlo dos recursos de hardware... 5 B.1) GESTÃO DO MICROPROCESSADOR...

Leia mais

Guia de procedimentos para construir um programa java no IDE Sun One Studio 4 update 1, Community Edition

Guia de procedimentos para construir um programa java no IDE Sun One Studio 4 update 1, Community Edition 1 Guia de procedimentos para construir um programa java no IDE Sun One Studio 4 update 1, Community Edition Um Projecto é o conjunto de um ou mais ficheiros que constituem um programa, quer seja uma aplicação

Leia mais

Java Básico. Aula 1 por Thalles Cezar

Java Básico. Aula 1 por Thalles Cezar + Java Básico Aula 1 por Thalles Cezar + Quem sou eu? Thalles Cezar, muito prazer! Estudante de Ciências da Computação, indo para o 9º semestre. Quase lá!! =) Estagiário no projeto CIn/Samsung TVD. Professor

Leia mais

Introdução à Programação. Encapsulamento e Herança

Introdução à Programação. Encapsulamento e Herança Introdução à Programação Encapsulamento e Herança Tópicos da Aula Hoje, aprenderemos conceitos mais avançados de Orientação a Objetos Encapsulamento Usando modificadores de acesso em C++ Herança Importância

Leia mais

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU Aula 5 POO 1 Encapsulamento Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações

Leia mais

Classe Abstrata e Interface

Classe Abstrata e Interface Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public

Leia mais

Classes e Objetos POO

Classes e Objetos POO Classes e Objetos POO Prof. Marcio Delamaro 1/40 POO (wikipedia) Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which are data structures that contain data,

Leia mais

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

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos Linguagem de Programação II Programação Orientada a Objetos Orientação a Objetos Prof. Alessandro Borges 2 Tópicos Introdução à Programação Orientada a Objetos Conceitos Objetivos Classes e Objetos Atributos

Leia mais

Conceitos de Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos Conceitos de Programação Orientada a Objetos Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 02 Conceitos de 1 Conceitos Fundamentais Classe; Ocultamento de informação; Encapsulamento; Atributo; Método;

Leia mais

Editor Eclipse para Programas F

Editor Eclipse para Programas F Editor Eclipse para Programas F Guia de instalação e utilização Instalação Comece por descarregar a aplicação de instalação CP_setup.exe do endereço http://www.math.ist.utl.pt/~jabr/cp/ Uma vez descarregada,

Leia mais

Gestão Documental. Gestão Documental

Gestão Documental. Gestão Documental Alcides Marques, 2007 Actualizado por Ricardo Matos em Junho de 2009 Neste capítulo pretende-se analisar a temática da, começando por apresentar um breve resumo dos conceitos subjacentes e apresentando

Leia mais

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 24/09/2010. Carlos Eugênio Torres Engenheiro de Informática

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 24/09/2010. Carlos Eugênio Torres Engenheiro de Informática Módulo I - Introdução Aula 3 Carlos Eugênio Torres Engenheiro de Informática http://cetorres.com Faculdade Christus Sistemas de Informação 24/09/2010 Graduado em Ciência da Computação pela UFC, Brasil

Leia mais

Encapsulamento. Alberto Costa Neto DComp - UFS

Encapsulamento. Alberto Costa Neto DComp - UFS Encapsulamento Alberto Costa Neto DComp - UFS 1 Motivação O que aprendemos até agora? O que diferencia a POO da Programação Imperativa? Estas informações são suficientes para construir um projeto OO eficiente?

Leia mais

POO Programação Orientada a Objetos

POO Programação Orientada a Objetos POO Programação Orientada a Objetos Mãos à Obra Jefferson S. Silva IFET - PI Copyright Jefferson S. Silva Slide 1 O sistema Nossa empresa foi contratada por uma pequena gravadora de música que deseja entrar

Leia mais

Guerra dos Clones. Introdução. Scratch. Neste projeto você aprenderá a criar um jogo no qual você terá que salvar a Terra de monstros espaciais.

Guerra dos Clones. Introdução. Scratch. Neste projeto você aprenderá a criar um jogo no qual você terá que salvar a Terra de monstros espaciais. Scratch 2 Guerra dos Clones All Code Clubs must be registered. By registering your club we can measure our impact, and we can continue to provide free resources that help children learn to code. You can

Leia mais

Tecnologias de Jogos de Vídeo

Tecnologias de Jogos de Vídeo Tecnologias de Jogos de Vídeo Abel J. P. Gomes & Gonçalo Amador LAB. 9 Departamento de Informática Universidade da Beira Interior Portugal 2012 Copyright 2009-2012 All rights reserved. 1. Objectivos 2.

Leia mais

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática Programação Orientada a Objectos - 25/26; P. Prata, P. Fazendeiro 2 A tecnologia Java Uma ideia base da linguagem JAVA é a de que um programa em JAVA deve poder ser executado em qualquer tipo de computador

Leia mais

Guião 4: Draw a Grid

Guião 4: Draw a Grid Guião 4: Draw a Grid Versão 1.1 INTRODUÇÃO O objectivo deste guião é que resolva um problema do concurso de programação ACM ICPC (International Collegiate Programming Contest). O problema escolhido é o

Leia mais

Strings e Arrays POO

Strings e Arrays POO Strings e Arrays POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/27 String Uma sequência de caracteres que representa uma informação textual Em Java existe um

Leia mais

LINGUAGEM DE PROGRAMAÇÃO

LINGUAGEM DE PROGRAMAÇÃO Técnico em Informática LINGUAGEM DE PROGRAMAÇÃO Profª Ana Paula anapaula_mandelli@hotmail.com JAVA Como qualquer linguagem de programação, a linguagem Java tem sua própria estrutura, regras de sintaxe

Leia mais

1 Introdução e Conceitos básicos

1 Introdução e Conceitos básicos 1 Introdução e Conceitos básicos Aula 02 Sumário Capítulo 1 Introdução e Conceitos básicos 1.1 Modelos 1.2 Tipos primitivos de dados 1.3 Tipo Abstrato de dados 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2

Leia mais

Programação Orientada a Objetos. Prof. André Gustavo Duarte de Almeida www3.ifrn.edu.br/~andrealmeida Robocode

Programação Orientada a Objetos. Prof. André Gustavo Duarte de Almeida www3.ifrn.edu.br/~andrealmeida Robocode Programação Orientada a Objetos Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br www3.ifrn.edu.br/~andrealmeida Robocode Introdução O robocode é jogo de programação. O objetivo é construir

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Faculdade de Computação Aula Revisão Marcelo Zanchetta do Nascimento Material elaborado pela Profa. Ana Carolina Lorena - UNIFESP Desenvolvimento de Software ANÁLISE IMPLEMENTAÇÃO

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

CONTRUCT 2. Tainá Medeiros

CONTRUCT 2. Tainá Medeiros CONTRUCT 2 1 Tainá Medeiros O QUE IREMOS VER HOJE! Conhecendo a ferramenta Construct 2. Eventos; Sprintes; Objetos; Comportamentos. Programar de maneira visual e lógica. 2 O QUE É UMA GAME ENGINE? 3 O

Leia mais

p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos fonte de Java.

p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos fonte de Java. Pacotes e Jar 1 Pacotes p Usamos pacotes em java para organizar as classes semelhantes. p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos

Leia mais

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2002/ Valores

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2002/ Valores ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2002/2003 TRABALHO PRÁTICO Nº

Leia mais

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados ALGORITMOS Professor: Diego Oliveira Aula 06 - Tipos Primitivos de Dados Netbeans Para testar nossos exemplos criaremos uma classe no Netbeans Nesta disciplina não será visto nada de orientação a objetos,

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Interfaces Uma interface é uma forma abstrata de descrever um objeto A classe fixa a forma de um objeto

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA PÁTIO DE MATERIAIS Discente: Nielson Soares Disciplina: Algoritmo e Estrutura de Dados INTRODUÇÃO Orientação a objetos. Linguagem de programação JAVA. Pátio de matérias

Leia mais

Desenvolvimento Modular de Procedimentos

Desenvolvimento Modular de Procedimentos Desenvolvimento Modular de Procedimentos Em Java os Procedimentos implementam-se com Métodos Desenho Modular de Procedimentos A melhor metodologia para o desenvolvimento de procedimentos com alguma dimensão

Leia mais

Trabalho Prático Data de Entrega : 30 de Maio

Trabalho Prático Data de Entrega : 30 de Maio Escola Superior de Tecnologia / Instituto Politécnico de Setúbal Algoritmos e Tipos Abstractos de Informação 2005/2006 Trabalho Prático Data de Entrega : 30 de Maio O problema Pretende-se realizar um jogo

Leia mais

Aula teórica 4. Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.)

Aula teórica 4. Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.) Aula teórica 4 Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.) Tipos de dados básicos: Representação de números inteiros Representação de números decimais Instrução de

Leia mais

Comunicação entre PC e Arduino

Comunicação entre PC e Arduino Comunicação entre PC e Arduino Date : 16 de Fevereiro de 2011 Por Cristiano Silva para o PPLWARE.COM Numa sociedade, todo o indivíduo necessita de comunicar com os restantes. Para tal, desenvolveu e adquiriu,

Leia mais

Manual Dos Técnicos. Meu Primeiro Projecto Java IGRP JAVA OPEN SOURCE NOSI - NÚCLEO OPERACIONAL DA SOCIEDADE DE INFORMAÇÃO

Manual Dos Técnicos. Meu Primeiro Projecto Java IGRP JAVA OPEN SOURCE NOSI - NÚCLEO OPERACIONAL DA SOCIEDADE DE INFORMAÇÃO IGRP JAVA OPEN SOURCE NOSI - NÚCLEO OPERACIONAL DA SOCIEDADE DE INFORMAÇÃO 07-11-2017 Manual Dos Técnicos Meu Primeiro Projecto Java Integrated Government Resources Planning IGRP JAVA OPEN SOURCE Índice

Leia mais

Biblioteca Gráfica. Adriano Cruz. 28 de Abril de 2015

Biblioteca Gráfica. Adriano Cruz. 28 de Abril de 2015 Biblioteca Gráfica Adriano Cruz 28 de Abril de 2015 1 Introdução Nesta aula prática vamos continuar a usar uma biblioteca gráfica de um curso de Introdução à Programação em Java da Universidade de Princeton.

Leia mais

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos)

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos) Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos) Histórico Gerações de Linguagens de Programação Primeira Geração: Linguagem de máquina Segunda Geração: Linguagem de montagem

Leia mais

Criando um Editor de Diagramas com Sirius

Criando um Editor de Diagramas com Sirius Criando um Editor de Diagramas com Sirius Sirius é um plugin do Eclipse dedicado a criação de ambientes gráficos de trabalho personalizados para modelagem. Em outras palavras, Sirius foi criado para prover

Leia mais

POO29004 Programação Orientada a Objetos

POO29004 Programação Orientada a Objetos POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Análise e Projeto Orientados a Objetos

Análise e Projeto Orientados a Objetos Análise e Projeto Orientados a Objetos Testes de unidade Diretoria Acadêmica de Gestão e Tecnologia da Informação Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Introdução Por que testar?

Leia mais

AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação

AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação 1 Vector Os vectores são semelhantes aos arrays, pois também podem conter um conjunto de objectos aos quais é atribuído um índice.

Leia mais

Curso Profissional de Técnico de Informática - Sistemas

Curso Profissional de Técnico de Informática - Sistemas Planificação Anual 2018/2019 Curso Profissional de Técnico de Informática - Sistemas LINGUAGENS DE PROGRAMAÇÃO 11º ANO 1 MÓDULO 4 - UFCD 0785 - Programação em C/C++ - Formas complexas Data Início/Final:

Leia mais

Instituto Superior de Engenharia de Lisboa

Instituto Superior de Engenharia de Lisboa Instituto Superior de Engenharia de Lisboa Introdução à Programação (PG) Docente: Pedro Viçoso Fazenda (pfazenda@cedet.isel.ipl.pt) Professor Responsável: Pedro Alexandre Pereira (palex@cc.isel.ipl.pt)

Leia mais

Criar um recurso para QIM com ActivInspire - Studio

Criar um recurso para QIM com ActivInspire - Studio Como criar um recurso com o Software ActivInspire Studio Depois de abrir o Software ActivInspire deve criar uma nova página, ficheiro Novo e de seguida escolher o formato desejado. Nota: De forma a este

Leia mais

Interfaces POO. Prof. Marcio Delamaro

Interfaces POO. Prof. Marcio Delamaro Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso

Leia mais

Instruções de Instalação dos Guias Móveis (versão 1.0, PT)

Instruções de Instalação dos Guias Móveis (versão 1.0, PT) Instruções de Instalação dos Guias Móveis (versão 1.0, PT) No presente documento são apresentados os vários passos necessários à instalação da aplicação dos Guias Móveis VARD e respectivos percursos. Requisitos

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

Algoritmia e Programação APROG. Tecnologia JAVA. IDE Netbeans. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

Algoritmia e Programação APROG. Tecnologia JAVA. IDE Netbeans. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 APROG Algoritmia e Programação Tecnologia JAVA IDE Netbeans Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 Tecnologia Java Sumário Tecnologia Java Desenvolvimento de Programas Ambientes de Desenvolvimento

Leia mais

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 Jean Rafael Reus Da Silva 2, Rafael Zancan Frantz 3, Sandro Sawicki 4. 1 Projeto de Iniciação Científica. 2 Aluno do Curso de Graduação

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 2 A tecnologia Java Uma ideia base da linguagem JAVA é a de que, um programa em JAVA deve poder ser executado em qualquer tipo de computador sem ter que ser alterado ou compilado novamente. Em Java o código

Leia mais

Apresentação do trabalho Dots-and-Boxes aos alunos de IIA 2007/2008

Apresentação do trabalho Dots-and-Boxes aos alunos de IIA 2007/2008 Apresentação do trabalho Dots-and-Boxes aos alunos de IIA 2007/2008 João Craveiro 12 e 13 de Novembro de 2007 Trabalho realizado para a edição 2006/2007 de IIA, por: Nuno Oliveira, João Craveiro, João

Leia mais

Conceitos de Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos Conceitos de Programação Orientada a Objetos Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 02 Conceitos de Programação Orientada a Objetos 1 Conceitos Fundamentais Classe; Ocultamento de informação;

Leia mais

Ambiente de Programação JAVA POO

Ambiente de Programação JAVA POO Ambiente de Programação JAVA POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/28 Java e POO Antes de entrarmos propriamente em POO vamos ver algumas ferramentas

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Herança e Polimorfismo Prof. Francisco de Assis S. Santos, Dr. São José, 2015. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos

Leia mais

9 Classes Abstractas e Interfaces

9 Classes Abstractas e Interfaces 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

1 - Ambiente de desenvolvimento

1 - Ambiente de desenvolvimento Neste documento começa-se por apresentar o ambiente de desenvolvimento integrado do Visual Basic (menu bar, toolbars, toolbox, project explorer window, properties window, form designer e code editor window).

Leia mais

PLANIFICAÇÃO

PLANIFICAÇÃO PLANIFICAÇÃO 2016-2017 DISCIPLINA: Técnicas de Programação CURSO: Vocacional Informática e Tecnologias Web 2 Módulo V: Fundamentos de linguagem JAVA CONTEÚDOS/CONCEITOS Programação orientada por objetos

Leia mais

Mundo Arduino: Vamos começar a programar?

Mundo Arduino: Vamos começar a programar? Mundo Arduino: Vamos começar a programar? Date : 2 de Janeiro de 2014 Por Jorge Alcino para o Pplware O Arduino é uma plataforma de hardware livre, projectado com um microcontrolador Atmel AVR. É uma placa

Leia mais

Instituto de Informática Estrutura de Dados II

Instituto de Informática Estrutura de Dados II Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O

Leia mais

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

Linguagem de Programação II Programação Orientada a Objetos. Ambientes de Programação Linguagem de Programação II Programação Orientada a Objetos Ambientes de Programação Prof. Alessandro Borges 2 Tópicos Prompt de comando JDK IDE NetBeans Eclipse Jbuilder Visual Café Visual J++ NetBeans

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais.

Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais. Capítulo 3 Implementação de classes Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais. Identificação de

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br www3.ifrn.edu.br/~andrealmeida Aula VIII Herança e Interface Roteiro Herança Classes Abstratas Interface

Leia mais

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU Aula 6 POO 1 Construtores Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações

Leia mais

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores Engenharia Informática (5374) - 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) - 1º ano, 1º semestre Bioengenharia (9099) 2º ano, 1º semestre Ciências Biomédicas (10135) 2º ano, 1º semestre

Leia mais

Ferramentas Web, Web 2.0 e Software Livre em EVT

Ferramentas Web, Web 2.0 e Software Livre em EVT E s t u d o s o b r e a i n t e g r a ç ã o d e f e r r a m e n t a s d i g i t a i s n o c u r r í c u l o d a d i s c i p l i n a d e E d u c a ç ã o V i s u a l e T e c n o l ó g i c a XPivot Animator

Leia mais

Laboratório 01 NetBeans

Laboratório 01 NetBeans Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Renato Pimentel Atividade individual. Laboratório 01 NetBeans 1 Introdução Os

Leia mais

Collections Framework

Collections Framework Collections Framework 1 Arrays p Manipular array é bastante trabalhoso. p Dificuldades aparecem em diversos momentos: n não podemos redimensionar um array em Java; n é impossível buscar diretamente por

Leia mais

Informática. Professor: Diego Oliveira. Conteúdo 04: Orientação a Objetos

Informática. Professor: Diego Oliveira. Conteúdo 04: Orientação a Objetos Informática Professor: Diego Oliveira Conteúdo 04: Orientação a Objetos Conteúdo da Aula Introdução à Programação Orientada a Objetos Linguagem Java Classes Objetos Atributos Métodos e Construtores Parâmetros

Leia mais

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias 1 IDES E PROGRAMAÇÃO Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias {claudio,macdias}@icmc.usp.br 2 Agenda Conceitos Instalação e Configuração Compilação e Execução de Código IDEs Exemplo

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 03: Tipos Abstratos de Dados (TADs) Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

Instituto Politécnico de Setúbal. Escola Superior de Tecnologia. Departamento de Sistemas e Informática. Guia para codificação em JAVA

Instituto Politécnico de Setúbal. Escola Superior de Tecnologia. Departamento de Sistemas e Informática. Guia para codificação em JAVA Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Guia para codificação em JAVA Disciplina de Introdução à Programação Ano Lectivo 2003/2004 CONTEÚDO

Leia mais

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Sumário } Encapsulamento } Propriedades } Relacionamentos } Composição } Herança 2 O que é encapsulamento? } O que vocês entendem por encapsular?!

Leia mais