Desenvolvimento de um Jogo de Xadrez em Java

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

Download "Desenvolvimento de um Jogo de Xadrez em Java"

Transcrição

1 Desenvolvimento de um Jogo de Xadrez em Java Bruno Fontana Canella 1, Fabricio Giordani 2 1 Acadêmico do curso de Ciência da Computação Unidade Acadêmica de Ciências, Engenharias e Tecnologias - Universidade do Extremo Sul Catarinense (UNESC) Criciúma, SC - Brasil 2 Professor(a) do curso de Ciência da Computação - Unidade Acadêmica de Ciências, Engenharias e Tecnologias - Universidade do Extremo Sul Catarinense (UNESC) Criciúma, SC - Brasil [email protected], fgiordani@gmail Resumo. Desenvolvido durante as aulas do curso de ciências da computação da UNESC, e aprimorado durante o decorrer do ano, este artigo irá demonstrar alguma das características presentes no desenvolvimento de um jogo de Xadrez. Para sua codificação, foi utilizado principalmente a linguagem de programação Java, em conjunto da linguagem Lua, a qual foi utilizada para realizar os cálculos de movimentação das peças no tabuleiro. Palavras chave: Programação; Java; Lua; Jogo; Xadrez. 1. Proposta do Trabalho Durante a disciplina de Tópicos Especiais I, até então presente na 5ª fase da grade do curso de ciências da computação da UNESC, foi sugerido o desenvolvimento de um software simples, o qual deveria aproveitar o conhecimento adquirido até então durante o curso, principalmente os da disciplina em questão. Este trabalho deveria fazer uso intensivo dos componentes de interface Swing, bem como outros objetos presentes no pacote de desenvolvimento distribuído na JDK. Este software também deveria ser capaz de persistir informações que o usuário informaria, além de manipulação de arrays e objetos personalizados. Sendo assim, foi discutido com o professor Fabrício Giordani a possibilidade na confecção de um jogo de Xadrez, feito inteiramente em Java, que implementasse todos os quesitos pré estipulados. Uma vez confirmado, o projeto foi levado adiante e apresentado com sucesso no decorrer das aulas. Contudo, como forma de alcançar um objetivo mais audacioso, o projeto do Jogo de Xadrez foi expandido, recebendo mais algumas características para sua apresentação no Workshop de trabalhos da SulComp, evento realizado anualmente na UNESC e que atualmente se encontra em sua quarta edição. Os tópicos que seguem apresentarão algumas das principais características presentes no projeto do jogo.

2 2. Características Principais do Projeto Originalmente, o jogo de xadrez desenvolvido em aula possuía uma interface gráfica, a qual demonstrava opções como controles do jogo, para inicio de uma nova partida, carregar uma partida salva e salvar uma partida em andamento, além do controle de movimentação das peças pelo tabuleiro com o auxilio de um mouse, onde ao clicar em uma peça, esta era transferida para o cursor do mouse, e ao clicar novamente no tabuleiro a peça era devolvida novamente para o mesmo, sendo que se houvesse uma peça ocupando a posição em que a peça em movimento foi designada, a peça que estava na posição ocupada era eliminada e substituída pela peça em movimento. É importante ressaltar que nesta etapa do projeto, não havia nenhum controle de regras do jogo, sendo que era possível matar suas próprias peças, ou então jogar diversas vezes com as peças de uma mesma cor. Na versão final do projeto, existe todo um controle das regras do jogo, sendo que cada peça possui sua limitação baseada no tipo de peça que ela é, Ex: Peão, Cavalo. Também não é mais possível matar peças de seu próprio time, nem jogar diversas vezes as peças de mesma cor. A movimentação agora é alternada entre as peças de cor branca e preta. Foi implementado também uma lista, demonstrando o histórico de jogadas da partida, o qual foi adicionada a classe de persistência do jogo. Como forma de desafio, a parte de controle de movimentação das peças no tabuleiro foi implementada com o uso da linguagem de programação Lua, desenvolvida pela PUC do Rio de Janeiro. Está linguagem é muito utilizada em jogos para a criação de scripts, permitindo assim que possam ser feitas alterações nas regras do jogo, mesmo enquanto este se encontra em execução, evitando assim diversas compilações do código fonte do jogo para alterar o mesmo, seguindo os princípios dos motores de jogos (Game Engine). 3. Detalhes do projeto Uma das requisições na construção da primeira fase do projeto, era de que o software em questão deveria ser fortemente orientado a objetos. A figura que segue, assim como os demais sub tópicos, irão explicar em detalhes como ficou a estruturação do código:

3 Figure 1. Figura demonstrando a esquematização das classes do jogo Classe Xadrez Esta classe é responsável por fazer toda a inicialização do programa, criando os objetos de persistência, interface, e controle do tabuleiro. É a classe principal do projeto Classe XadrezRegra Nesta classe estão contidas boa parte das verificações das regras do jogo, como a determinação das condições de fim de jogo, vitória ou empate, turno dos jogadores, entre outros Classe XadrezInterface A classe XadrezInterface é responsável por criar todos os componentes que servirão para comunicação com o usuário do jogo. Nela são criadas as opções do jogo, são montadas as partes visuais do tabuleiro, e também demonstra o histórico de jogadas em uma lista Classe XadrezPersistencia Encarregada da persistência dos dados do jogo, ou seja, a gravação e recuperação de dados. Em geral, as informações persistentes são as posições das peças e o histórico de jogadas Classe XadrezTabuleiro Responsável por manter um registro das peças que estão em jogo, além do formato do tabuleiro em si. Ela possui diversos objetos do tipo XadrezPiso, os quais ficam armazenados em uma array, que por padrão possui tamanho 8x8, igual ao do jogo.

4 3.6. Classe XadrezPiso Possui herança no componente JPanel, onde além das propriedades comuns, recebe também o código necessário para armazenar e representar graficamente uma peça do jogo de xadrez Classe XadrezPeca É a representação de uma peça de xadrez do mundo real, no jogo. Ela possui um método abstrato de movimentação e detecção de movimentos válidos, os quais são sobreescritos pelas classes que herdam desta peça Classes que herdam de XadrezPeca Estas seriam as classes PeaoPeca, CavaloPeca, BispoPeca, TorrePeca, RainhaPeca e ReiPeca. Cada classe sobre escreve os métodos de movimentação de XadrezPeca, bem como possui sua própria constante, contendo o endereço de sua imagem de exibição 4. Linguagem Lua Como citado anteriormente no projeto, um pequeno trecho do código foi escrito em Lua, mais precisamente a parte de verificação e movimentação em sí das peças do tabuleiro. Para realizar esta integração entre as duas linguagens, foi utilizado uma biblioteca chamada LuaJava, a qual realize todas as chamadas das DLL s da linguagem Lua para o código em Java. Cada classe que herda de XadrezPeca é obrigada a especificar a sua rotina de movimentação. Nesta parte do programa, foi realizada a chamada de funções escritas em Lua, que estavam em arquivos separados do projeto principal, para avaliar a movimentação de cada peça. Esta chamada dinâmica de verificação permite a alteração nas regras de movimentação das peças, sem a necessidade de recompilação do software, ou até mesmo o seu fechamento. 5. Conclusão Com o fim deste trabalho, foi possivel contruir um pequeno e funcional jogo de xadrez, utilizando apenas ensinamentos adquiridos no curso de ciencias da comutação da UNESC até a 5ª fase. A adição de recursos extras, como a utilização de uma linguagem de scripts, como a Lua, tiveram de ser aprendidos por conta do acadêmico, mas são de facil acesso e aprendizagem. Referencias Davison, Andrew. (2005) Killer Game Programming in Java, Edited by Brett McLaughlin, O Reilly Media, United States of America.

5 Buckland, Mat. (2005) Programming Game AI by Example, Wordware Publishing Inc, United States of America. Martins, Guilherme e Eduardo Jason Santos, Luis e Ponte, Thiago. (2004) LuaJava: A Script Tool for Java, Junho. Tecnologia em Computação Gráfica da PUC Rio. (1997) A Linguagem de Programação Lua, Fevereiro. Sun MicroSystems. Java SE at a Glance, Janeiro.

Design de Interface - Avaliação Final

Design de Interface - Avaliação Final Design de Interface - Avaliação Final A proposta deste trabalho era adaptar a interface gráfica de um jogo de tabuleiro clássico tomando como base os conhecimentos de Consistência, Hierarquia e Personalidade.

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS 7ª Série Linguagens Formais e Autômatos Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensino-aprendizagem desenvolvido por meio de um

Leia mais

JOGOS LIVRO REGRAS M AT E M Á T I CO S. 11.º Campeonato Nacional

JOGOS LIVRO REGRAS M AT E M Á T I CO S. 11.º Campeonato Nacional Vila Real JOGOS M AT E M Á T I CO S.º Campeonato Nacional LIVRO DE REGRAS Semáforo Autor: Alan Parr Material Um tabuleiro retangular por. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores.

Leia mais

LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL:

LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL: LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL: JOGO DA FORCA ALUNOS: LEANDRO LUIS BELLINI JONATA PEREIRA MARTINS ROGER DOS SANTOS AGUERA PROFESSOR: SEIJI ISOTANI UNIVERSIDADE DE

Leia mais

2 Versão 1: Funcionalidade Básica e Interface Web

2 Versão 1: Funcionalidade Básica e Interface Web Técnicas de Projeto e Implementação de Sistemas II Descrição do Projeto da Disciplina 1 Introdução O projeto da disciplina consiste na implementação de um sistema de busca de tarifas de passagens aéreas.

Leia mais

Trabalho Final de SISTEMAS INTEGRADOS DE MANUFATURA

Trabalho Final de SISTEMAS INTEGRADOS DE MANUFATURA UNIVERSIDADE DE BRASÍLIA - UnB FACULDADE DE TECNOLOGIA - FT DEPARTAMENTO DE ENGENHARIA MECÂNICA - EME Trabalho Final de SISTEMAS INTEGRADOS DE MANUFATURA Período: 1º/2001 Desenvolvimento de Applets JAVA

Leia mais

Aula 10 Arquitetura de Software e Exercício. Alessandro Garcia LES/DI/PUC-Rio Abril de 2017

Aula 10 Arquitetura de Software e Exercício. Alessandro Garcia LES/DI/PUC-Rio Abril de 2017 Aula 10 Arquitetura de Software e Exercício Alessandro Garcia Abril de 2017 Não Esquecer... Preencher tabela de atividades ao longo do processo. NÃO DEIXE PARA ÚLTIMA HORA, POIS VOCÊ NÃO SE LEMBRARÁ DO

Leia mais

Gatos & Cães Simon Norton, 1970s

Gatos & Cães Simon Norton, 1970s Gatos & Cães Simon Norton, 970s Um tabuleiro quadrado 8 por 8. 8 peças gato e 8 peças cão (representadas respectivamente por peças negras e brancas). Ganha o jogador que realizar a última jogada. zona

Leia mais

EDITAL DO 2º TORNEIO DE XADREZ DEL REI XADREZ

EDITAL DO 2º TORNEIO DE XADREZ DEL REI XADREZ EDITAL DO 2º TORNEIO DE XADREZ DEL REI XADREZ 2014 1. DISPOSIÇÕES GERAIS O Grupo PET MATERIAIS E INOVAÇÃO TECNOLÓGICA torna público o presente edital para o 2º Torneio de Xadrez Del Rei Xadrez. 2. INTRODUÇÃO

Leia mais

Semáforo. Um tabuleiro retangular 4 por 3. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores.

Semáforo. Um tabuleiro retangular 4 por 3. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores. Semáforo Autor: Alan Parr Um tabuleiro retangular por. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores. Ser o primeiro a conseguir uma linha de três peças da mesma cor na horizontal,

Leia mais

Gatos & Cães Simon Norton, 1970s

Gatos & Cães Simon Norton, 1970s Gatos & Cães Simon Norton, 1970s Um tabuleiro quadrado 8 por 8. 28 peças gato e 28 peças cão (representadas respectivamente por peças negras e brancas). Ganha o jogador que realizar a última jogada. zona

Leia mais

Protótipo de Software de Reconhecimento de Voz Para Navegação em Jogos, Utilizando Rede Neural Artificial

Protótipo de Software de Reconhecimento de Voz Para Navegação em Jogos, Utilizando Rede Neural Artificial Protótipo de Software de Reconhecimento de Voz Para Navegação em Jogos, Utilizando Rede Neural Artificial Orientando: Derlei Brancher Orientador: Prof. Jacques Robert Heckmann - Mestre 1. Introdução Roteiro

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CAMPUS CURITIBA ENGENHARIA ELETRÔNICA FELIPE GONÇALVES GARCIA FELIPE MARTINS DE LIMA

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CAMPUS CURITIBA ENGENHARIA ELETRÔNICA FELIPE GONÇALVES GARCIA FELIPE MARTINS DE LIMA UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CAMPUS CURITIBA ENGENHARIA ELETRÔNICA FELIPE GONÇALVES GARCIA FELIPE MARTINS DE LIMA LUZIA SAYURI KATAOKA HIGASKINO CLUE SUSPEITOS CURITIBA JULHO,2014 FELIPE

Leia mais

Programação orientada a objetos

Programação orientada a objetos J100 com Programação orientada a objetos TM SE Helder da Rocha ([email protected]) argonavis.com.br 1 Objetivos Este curso tem como objetivo iniciá-lo em Java... mas não apenas isto Visa também a ajudá-lo

Leia mais

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F. Diagramas UML Classe, Seqüência e Atividades Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 15 de maio

Leia mais

IrrRPG Builder Uma Ferramenta Livre Para Desenvolvimento de Jogos Eletrônicos de RPG

IrrRPG Builder Uma Ferramenta Livre Para Desenvolvimento de Jogos Eletrônicos de RPG IrrRPG Builder Uma Ferramenta Livre Para Desenvolvimento de Jogos Eletrônicos de RPG Andres Jessé Porfirio Tony Alexander Hild Universidade Estadual do Centro Oeste Sumário Introdução Trabalhos Correlatos

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Introdução Alguns conceitos importantes Orientação a Objetos Alguns conceitos importantes Programação Estruturada X Programação OO Classes Objetos Construtores e Destrutores

Leia mais

GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA

GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA Introdução O TFA tem por objetivo avaliar todo o conhecimento adquirido pelo aluno ao longo das disciplinas

Leia mais

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Ederson Evaristo Jantsch Orientador: Marcel Hugo 09/07/2002 Roteiro Introdução Aplicação multicamadas Tecnologias

Leia mais

1ª Colocação 10 pontos. 2ª Colocação 08 pontos. 3ª Colocação 06 pontos

1ª Colocação 10 pontos. 2ª Colocação 08 pontos. 3ª Colocação 06 pontos Regras: Jogo do Xadrez 1. Sorteio: Os confrontos serão definido através de sorteio e relacionados no chaveamento da competição; A ordem de disputa será de acordo com a ordem de retira no sorteio. PS: 2

Leia mais

Introdução ao Zend Framework 2

Introdução ao Zend Framework 2 Introdução ao Zend Framework 2 #laryssa-muniz Graduada em Telemática - Estácio de Sá Especialista em Engenharia de Software - UECE Mestranda em Ciências da Computação - UECE Analista de Sistemas - Brain

Leia mais

Plano de Ensino PROGRAMAÇÃO ORIENTADA A OBJETOS

Plano de Ensino PROGRAMAÇÃO ORIENTADA A OBJETOS Plano de Ensino PROGRAMAÇÃO ORIENTADA A OBJETOS Título PE - Programação Orientada a Objetos Código da disciplina SIA CCT0079 16 Número de semanas de aula 6 Número de créditos Quantidade total de horas

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Prof. Esp. Fabiano Taguchi

Prof. Esp. Fabiano Taguchi UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] UML COMPETÊNCIA: Conhecer e desenvolver estudos de caso usando modelagem orientada a objeto. HABILIDADE: Conhecer

Leia mais

XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de

XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de dados ou das cartas que são tiradas do baralho. O resultado

Leia mais

WAR. Equipe de desenvolvimento. Sumário

WAR. Equipe de desenvolvimento. Sumário Universidade Tecnológica Federal do Paraná Disciplina: IF62C - Fundamentos de Programação 2 Professores: Robinson Vida Noronha Equipe de desenvolvimento WAR Everton Plotchkacz Herica Batista Sumário Introdução...

Leia mais

CAPÍTULO 1. Os elementos. O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ

CAPÍTULO 1. Os elementos. O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ CAPÍTULO 1 Os elementos O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ Joga-se xadrez sobre um tabuleiro quadrado, formado por 64 casas quadradas, sendo sua cor, alternadamente,

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

Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa:

Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa: Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri Trabalho

Leia mais

» O jogo: - é dividido em 3 semanas, cada uma com 7 dias/turnos. Cada turno divide-se em 2 fases:

» O jogo: - é dividido em 3 semanas, cada uma com 7 dias/turnos. Cada turno divide-se em 2 fases: » Preparação do jogo: - coloca-se o Supervisor (peão branco) na casa central da estrada no tabuleiro. - coloca-se um cubo branco na casa I do contador de semanas (I a III) e um cubo branco na casa 1 do

Leia mais

Trabalho GA - Editor de Cenário Isométrico

Trabalho GA - Editor de Cenário Isométrico Objetivo A tarefa consiste em criar um editor gráfico de cenários para jogos 2D com visão isométrica. O editor deve permitir que o usuário possa criar, abrir e editar mapas (tilemaps) com tileset de visão

Leia mais

Projeto Xadrez Entrega 01: Polimorfismo e Herança

Projeto Xadrez Entrega 01: Polimorfismo e Herança Professore: Aluno PAE (Turma A): Aluno PAE (Turma C): João do E.S. Batista Neto (jbatista at icmc.usp.br) Felipe S. L. G. Duarte (fgduarte at icmc.usp.br) Oscar Cuadros Linares (ocuadrosl at gmail.com)

Leia mais

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso. Engenharia de Software Aula 07 Tópicos da Aula Introdução à UML e Introdução a UML Visão geral de alguns diagramas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 28 Março 2012 A

Leia mais

Exercícios: Arquivos

Exercícios: Arquivos Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Arquivos 1. Codifique, compile e execute um programa que: (a) crie/abra

Leia mais

Spider 4 em Linha. (Trabalho 12) Relatório de Avaliação Intercalar do 1º Trabalho Prático da Disciplina de Programação em Lógica

Spider 4 em Linha. (Trabalho 12) Relatório de Avaliação Intercalar do 1º Trabalho Prático da Disciplina de Programação em Lógica Relatório de Avaliação Intercalar do 1º Trabalho Prático da Disciplina de Programação em Lógica Spider 4 em Linha (Trabalho 12) Grupo 55 (Turma 5) 80509011 [email protected] André Daniel Moreira Pinto Riboira

Leia mais

CONTEÚDO PROGRAMÁTICO

CONTEÚDO PROGRAMÁTICO CONTEÚDO PROGRAMÁTICO Java Básico Carga horária: 24 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO 1 - Um pouco sobre o

Leia mais

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan Introdução aos computadores, à Internet e à World Wide Web Prof. Marcelo Roberto Zorzan História do Java Origem Linguagem desenvolvida pela Sun Microsystems Sintaxe similar ao C++ Inicialmente chamada

Leia mais

Prof. Fabiano Taguchi

Prof. Fabiano Taguchi BANCO DE DADOS Prof. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] INTRODUÇÃO À BANCO DE DADOS Banco de dados desempenha um papel fundamental em todas as áreas em que os

Leia mais

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software AJA Software www.ajasoftware.wordpress.com De Olho na Pista Documento de Arquitetura Confidencial De Olho na Pista, 2013 1 Sumário 1. Introdução 3 2. Metas e Restrições da Arquitetura 3 3. Padrão da Arquitetura

Leia mais

O uso da Teoria dos Grafos no Jogo Icosiano

O uso da Teoria dos Grafos no Jogo Icosiano O uso da Teoria dos Grafos no Jogo Icosiano Leandro Natal Coral 1, Rafael Spilere Marangoni 1, Kristian Madeira 2 1 Acadêmico do curso de Ciência da Computação Unidade Acadêmica de Ciências, Engenharias

Leia mais

PROGRAMACAO E INTEGRACAO DE JOGOS I

PROGRAMACAO E INTEGRACAO DE JOGOS I PROGRAMACAO E INTEGRACAO DE JOGOS I Aula 4 Mestrado em Educação (em andamento) Pós-graduação em Negócios em Mídias Digitais (em andamento) MBA em Marketing e Vendas Especialista em games : Produção e Programação

Leia mais

Card Tree Creator. Um Sistema para a criação de árvores de cartões.

Card Tree Creator. Um Sistema para a criação de árvores de cartões. Card Tree Creator Um Sistema para a criação de árvores de cartões. 1. Introdução Card Tree Creator é um sistema escrito em linguagem JAVA que tem por objetivo fornecer uma ferramenta para a criação de

Leia mais

O peão Se um peão consegue chegar até a outra extremidade do tabuleiro(linha 8), ele é promovido. Um peão promovido é substituído, ainda na mesma jogada em que o movimento foi feito, por um cavalo, bispo,torreoudamadamesmacor.

Leia mais

Manual do Sistema CorteBi Interface Gráfica

Manual do Sistema CorteBi Interface Gráfica Campus de São José do Rio Preto Manual do Sistema CorteBi Interface Gráfica Socorro Rangel Renato Brigido Lemos São José do Rio Preto - SP 2005 (revisto em fevereiro 2007) Instituto de Biociências Letras

Leia mais

SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Prof. Dr. Daniel Caetano 2014-1 DISCUSSÃO Visão Geral dos Paradigmas Quais os paradigmas mais comuns? Do que é composto um programa

Leia mais

Orientação a Objetos (OO)

Orientação a Objetos (OO) CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 04 APRESENTAÇÃO: Hoje vamos discutir os conceitos de Orientação a Objetos.

Leia mais

Desenvolvendo aplicações Java

Desenvolvendo aplicações Java José Roberto Madureira Junior Adaní Cusin Sacilotti Adriana Rodrigues Reginaldo Sacilotti Desenvolvendo aplicações Java Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO JAVA... 1 1.1 A PLATAFORMA

Leia mais

Gerando um programa executável a partir de um módulo Python

Gerando um programa executável a partir de um módulo Python Gerando um programa executável a partir de um módulo Python Wendel Melo (Departamento de Ciência da Computação UFRJ), Notas de aula de Computação II 15/03/2012 A linguagem de programação Python segue o

Leia mais

Programação Estruturada Orientada a Objetos

Programação Estruturada Orientada a Objetos INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: [email protected] [email protected]

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

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Classes e Objetos Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia de Sistemas Lembrando Na Unidade II Modelagem Orientada a Objetos, vimos: Como utilizar

Leia mais

Técnicas Avançadas de Programação

Técnicas Avançadas de Programação Sumário Técnicas Avançadas de Programação Prof. João Marcos M. da Silva Departamento de Engenharia de Telecomunicações Escola de Engenharia Universidade Federal Fluminense Agosto de 2011 Prof. João Marcos

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 3 Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia Civil Linguagens de Programação Uma linguagem

Leia mais

Tutorial de instalação e configuração do Software Giga VMS

Tutorial de instalação e configuração do Software Giga VMS Tutorial de instalação e configuração do Software Giga VMS Passo 1 Execute o instalador do Software Giga VMS. Passo 2 Marque a opção Português (br). Passo 3 Clique em Próximo. Passo 4 Aguarde a instalação

Leia mais

XADREZ NA UFG. Módulo I -Introdução. Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva

XADREZ NA UFG. Módulo I -Introdução. Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva XADREZ NA UFG Módulo I -Introdução Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva História do Xadrez Benjamin Franklin disputando uma partida de xadrez, quadro do artista Edward Harrison

Leia mais

Licenciatura em Informática

Licenciatura em Informática Licenciatura em Informática Unidade Curricular Programação I Programming I Objetivos -Técnicas Fundamentais de Programação; -A linguagem C e C++: fundamentos; -Aplicações em linguagem C; -Aplicações em

Leia mais

Manual do KSquares. Matt Williams Revisor: Eugene Trounev Tradução: Luiz Fernando Ranghetti Tradução: André Marcelo Alvarenga

Manual do KSquares. Matt Williams Revisor: Eugene Trounev Tradução: Luiz Fernando Ranghetti Tradução: André Marcelo Alvarenga Matt Williams Revisor: Eugene Trounev Tradução: Luiz Fernando Ranghetti Tradução: André Marcelo Alvarenga 2 Conteúdo 1 Introdução 5 2 Como jogar 6 3 Regras do jogo, estratégias e dicas 7 3.1 Regras do

Leia mais

Aula 11 Introdução ao Java Script

Aula 11 Introdução ao Java Script Aula 11 Introdução ao Java Script Java Script é uma linguagem que permite trabalhar com a Lógica em páginas escritas em HTML (HiperText Mark-up Language). As páginas HTML podem ser escritas utilizando-se

Leia mais

SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo

SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo SME0230 - Introdução à Programação de Computadores Primeiro semestre de 2017 Professora: Marina Andretta ([email protected]) Monitores: Douglas Buzzanello Tinoco ([email protected]) Amanda Carrijo

Leia mais

Árvore de Jogos Minimax e Poda Alfa-Beta

Árvore de Jogos Minimax e Poda Alfa-Beta Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Árvore de Jogos Minimax e Poda Alfa-Beta Inteligência Artificial Site: http://jeiks.net E-mail: [email protected]

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

Introdução a Tecnologia da Informação

Introdução a Tecnologia da Informação Introdução a Tecnologia da Informação Informática Básica Software de apresentação Prof. Jonatas Bastos Power Point p Faz parte do pacote Microsoft Office; p Software com muitos recursos para construção

Leia mais

Aula 9 Especificação de Requisitos Exercício

Aula 9 Especificação de Requisitos Exercício Aula 9 Especificação de Requisitos Exercício Alessandro Garcia LES/DI/PUC-Rio Abril 2017 Exercício Faça a especificação de requisitos do programa do jogo FreeCell com base no que foi apresentado na aula

Leia mais

PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL

PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL IV Congresso RIBIE, Brasilia 1998 PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL ahmed ali abdalla esmin [email protected] fax : (049) 566-1422 Introdução

Leia mais

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software INTRODUÇÃO AO SWEBOK Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Origens do corpo de conhecimentos da Engenharia de Software: Engenharia da Computação Ciência da

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

Introdução à Ciência da Computação

Introdução à Ciência da Computação 1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: [email protected] site:

Leia mais

INF ALGORITMOS E PROGRAMAÇÃO TRABALHO PRÁTICO

INF ALGORITMOS E PROGRAMAÇÃO TRABALHO PRÁTICO INF01202 - ALGORITMOS E PROGRAMAÇÃO TRABALHO PRÁTICO Objetivo: Exercitar as habilidades e conceitos de programação desenvolvidos ao longo da disciplina através da implementação de uma aplicação em C, proposta

Leia mais

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise

Leia mais

[GUIA RÁPIDO: OFFICE SWAY]

[GUIA RÁPIDO: OFFICE SWAY] [GUIA RÁPIDO: OFFICE SWAY] O Sway é uma ferramenta para a criação de materiais online, funcionando como um painel em que podem ser colocados elementos dinâmicos e interativos. Ele se baseia no conceito

Leia mais

Diagrama de Componentes e Implantação

Diagrama de Componentes e Implantação Diagrama de Componentes e Implantação Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User

Leia mais

Obs.: para realizar estas atividades tenha certeza de que já tenha instalado no sistema operacional o Java JDK e o NetBeans.

Obs.: para realizar estas atividades tenha certeza de que já tenha instalado no sistema operacional o Java JDK e o NetBeans. 1 - Criando meu primeiro programa em Java Para criar um programa Java podemos utilizar um editor de textos (Bloco de Notas/Windows, Notepad ++ ou GEdit/Linux) e o console do sistema operacional, ou um

Leia mais

Introdução à Engenharia ENG1000

Introdução à Engenharia ENG1000 Introdução à Engenharia ENG1000 Aula 04 Introdução a Linguagem Lua 2016.1 Prof. Augusto Baffa Linguagem Lua Lua é uma linguagem de programação projetada para dar suporte à programação

Leia mais

COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1

COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 Márcia Da Silva 2, Igor Gamste Haugg 3, Eliézer Silveira Prigol 4, Édson L. Padoin 5, Rogério S. M. Martins

Leia mais

AULA 1 INTRODUÇÃO AO JAVA

AULA 1 INTRODUÇÃO AO JAVA AULA 1 INTRODUÇÃO AO JAVA Ao término dessa aula você terá aprendido: História e características do Java Ambientes e plataformas Java O Java é a base para praticamente todos os tipos de aplicações em rede

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Prof. André Luiz Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Engenharia de Software Tópicos O que é Engenharia de Software? Engenharia de Software em camadas Processo

Leia mais

Introdução a Programação Web com PHP

Introdução a Programação Web com PHP AULA: Introdução a Programação Web com PHP Programação para Internet http://docentes.ifrn.edu.br/albalopes [email protected] Breve histórico A primeira versão surgiu em meados de 1995, escrita por

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE EMENTA ENGENHARIA DE SOFTWARE DISCIPLINA: Estrutura e Fluxo de Informação EMENTA: A disciplina Estrutura e Fluxo de Informação se propõe a capacitar o aluno sobre os fundamentos da Gestão da Informação

Leia mais

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Verificação e Validação Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Objetivos Apresentar a verificação e validação de software e discutir a distinção entre elas Descrever

Leia mais

Engenharia de Software Orientada a objetos. Prof. Rogério Celestino dos Santos

Engenharia de Software Orientada a objetos. Prof. Rogério Celestino dos Santos Engenharia de Software Orientada a objetos Prof. Rogério Celestino dos Santos http://sites.google.com/site/rogeriocsaulas/ Estereótipos são uma maneira de destacar determinados componentes do diagrama,

Leia mais