DESENVOLVIMENTO DE JOGOS COM JME

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

Download "DESENVOLVIMENTO DE JOGOS COM JME"

Transcrição

1 UNIVERSIDADE DO PLANALTO CATARINENSE DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE SISTEMAS DE INFORMAÇÃO (BACHARELADO) DESENVOLVIMENTO DE JOGOS COM JME FERNANDA ELISE MORETTO LAGES, DEZEMBRO DE 2006.

2 UNIVERSIDADE DO PLANALTO CATARINENSE DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE SISTEMAS DE INFORMAÇÃO (BACHARELADO) DESENVOLVIMENTO DE JOGOS COM JME Relatório do Trabalho de Conclusão de Curso submetido à Universidade do Planalto Catarinense para obtenção dos créditos de disciplina com nome equivalente no curso de Sistemas de Informação - Bacharelado. FERNANDA ELISE MORETTO Orientação: Profª. Sabrina Bet, M.Sc. Prof. Angelo Augusto Frozza, Esp. LAGES, DEZEMBRO DE 2006

3 DESENVOLVIMENTO DE JOGOS COM JME FERNANDA ELISE MORETTO ESTE RELATÓRIO, DO TRABALHO DE CONCLUSÃO DE CURSO, FOI JULGADO ADEQUADO PARA OBTENÇÃO DOS CRÉDITOS DA DISCIPLINA DE TRABALHO DE CONCLUSÃO DE CURSO DO VIII SEMESTRE, OBRIGATÓRIA PARA OBTENÇÃO DO TÍTULO DE: BACHAREL EM SISTEMAS DE INFORMAÇÃO Profª. Sabrina Bet, M.Sc. Orientador Prof. Angelo Augusto Frozza, Esp. Co-Orientador BANCA EXAMINADORA: Prof. Marcos André Pisching, M.Sc. UNIPLAC Prof. Wilson Castello Branco Neto, Dr. UNIPLAC Prof. Angelo Augusto Frozza, Esp. Professor de TCC Prof. Wilson Castello Branco Neto, Dr. Coordenador de Curso Lages, 07 de Dezembro de 2006

4 Dedico a realização deste trabalho aos meus pais Guido e Maria, pelo apoio e confiança que dedicaram a mim desde o meu ingresso no curso de Sistemas de Informação, ás minhas irmãs Luciane e Caroline pela amizade e carinho que me deram durante todo esse período, e ao meu noivo Fernando, pelo amor e compreensão.

5 Agradeço a todos aqueles que de algum modo contribuíram para a realização deste trabalho, especialmente ao meu noivo Fernando, à minha orientadora Sabrina, ao meu co-orientador Ângelo e à UNIPLAC, pelo apoio e oportunidades que oferece aos acadêmicos do curso de Sistemas de Informação.

6 SUMÁRIO LISTA DE ILUSTRAÇÕES...VIII LISTA DE SIGLAS... IX RESUMO...X ABSTRACT... XI 1 INTRODUÇÃO Apresentação Descrição do problema Justificativa Objetivo geral Objetivos específicos Metodologia DESENVOLVIMENTO DE JOGOS PARA DISPOSITIVOS MÓVEIS Os dispositivos móveis Desenvolvimento de jogos no Brasil Distribuição geográfica das empresas Plataforma alvo Faturamento do mercado brasileiro Jogos para celular Desenvolvendo jogos Classificação Metodologia de desenvolvimento de jogos Conclusão A PLATAFORMA JME A plataforma de desenvolvimento Java Edições da plataforma Java A plataforma Java Micro Edition A arquitetura JME Configurações Perfis A Game API Máquina Virtual K Distribuição de aplicativos Kit de ferramentas do JME...23

7 3.3 Conclusão MODELAGEM DO JOGO Definição da modelagem Plataforma-alvo Público-alvo Regras do jogo Layout do jogo Arte do jogo Conclusão IMPLEMENTANDO O JOGO Ferramentas e tecnologias necessárias Codificação Conceitos iniciais Leitura das teclas Elementos visuais do jogo O LayerManager Animando os personagens do jogo Loop principal do jogo Colisões Demonstração do jogo Leão Baio Conclusões CONSIDERAÇÕES FINAIS...48 REFERÊNCIAS BIBLIOGRÁFICAS...50 APÊNDICES INTRODUÇÃO A PLATAFORMA JME METODOLOGIA IMPLEMENTAÇÃO REFERÊNCIAS...59

8 LISTA DE ILUSTRAÇÕES FIGURA 1 - Dispositivos móveis...7 FIGURA 2 - Ano de criação das empresas...8 FIGURA 3 - Distribuição geográfica dos desenvolvedores...9 FIGURA 4 - Faturamento por estado...9 FIGURA 5 - Plataforma de desenvolvimento...10 FIGURA 6 - Jogo Sudeki FIGURA 7 - Diagrama do processo de criação...13 FIGURA 8 - Camadas de software de um dispositivo JME...19 FIGURA 9 - Classes principais para jogos...21 FIGURA 10 - Layout do jogo...29 FIGURA 11 - Legenda do Layout...29 FIGURA 12 - Arte do Jogo...30 FIGURA 13 - Animação do Leão Baio...40 QUADRO 1 - Atualização da tela do jogo...34 QUADRO 2 - Identificando o estado atual das teclas...35 QUADRO 3 - Classe que representa o cenário do jogo QUADRO 4 - Posicionando a tela visível ao usuário...38 QUADRO 5 - Código fonte da classe LeaoSprite...41 QUADRO 6 - Loop principal do jogo QUADRO 7 - Método que verifica as colisões....45

9 LISTA DE SIGLAS API CDC CLDL HTML IDE JME JAD JAR JCP JEE JSE JSP JVM KVM MIDP NES PC PDA PNG RPG VM WTK XML - Application Program Interface - Connected Device Configuration - Connected Limited Device Configuration - Hypertext Markup Language - Integrated Development Environment - Java Micro Edition - Java Application Descriptor - Java Archive - Java Community Process - Java Enterprise Edition - Java Standard Edition - Java Server Pages - Java Virtual Machine - Kilo Virtual Machine - Mobile Information Device Profile - Nintendo Entertainment System - Personal Computer - Personal Digital Assistant - Portable Network Graphics - Role-Playing Game - Virtual Machine - Wireless Toolkit - Extensible Markup Language

10 RESUMO Juntamente com o crescimento no número das vendas de aparelhos celulares nos últimos anos, cresceu também a procura por atrativos que representem um diferencial na hora da compra destes aparelhos. Entre os atrativos estão os jogos desenvolvidos para celular, utilizados como forma de entretenimento. Porém, o processo para o desenvolvimento de jogos para dispositivos móveis se difere do desenvolvimento para computadores pessoais, principalmente por existirem limitações de recursos de memória, vídeo e processamento nesses dispositivos. Levando isto em consideração, a plataforma de desenvolvimento JME (Java Micro Edition) disponibiliza a Game API voltada para o desenvolvimento de jogos para estes dispositivos, a qual é explorada neste trabalho, através do desenvolvimento do jogo do Leão Baio. Visto, ainda, as peculiaridades dos jogos para celular, apresenta-se aqui um estudo sobre uma metodologia para o desenvolvimento de jogos, dado as dificuldades em se encontrar metodologias detalhadas para este tipo de aplicação. Assim, neste trabalho são apresentadas e descritas as atividades relacionadas a cada etapa da metodologia para a construção de jogos, aplicando-as no desenvolvimento do jogo do Leão Baio. Como resultado, fez-se a implementação parcial da primeira fase do jogo proposto. São descritos os códigos criados e demonstradas as interfaces através de um emulador e no próprio celular. Palavras-chave: jogos para celular; metodologia de desenvolvimento; JME

11 ABSTRACT Along with the raise in the number of mobile sales in recent years, the search for frills also increased, so that they represent a differential in the purchase moment. Among the frills there are the games developed for mobiles, used for entertainment. However, the process for the development of games for mobile devices differs from the development for personal computers, mainly for the existence of limitations of memory, video and processing resources in these devices. Taking this into consideration, the platform of development JME (Java Micro Edition) provides the Game API for the development of games for these devices, which will be explored in this work, through the development of the game Leão Baio. Considering the peculiarities of the games for mobile, it is hereby presented a study on a methodology for the development of games, because of the difficulties in finding detailed methodologies for this type of application. Thus, in this work, the activities related to each stage of the methodology for the construction of games are presented and described, being applied in the development of the game Leão Baio. As result, part of the implementation of the first level of the game was done. The codes are described and the interfaces are demonstrated through a emulator and in the cellular. Keywords: mobile games; development methodology; JME.

12 1 INTRODUÇÃO 1.1 Apresentação O mercado de celulares apresenta um grande crescimento no número de vendas, tanto no Brasil como no mundo. Juntamente com esse crescimento está o avanço tecnológico, buscando oferecer cada vez mais atrativos ao consumidor. Estimativas prevêem a venda de mais de 800 milhões de aparelhos em 2005, resultando em uma receita anual de 120 bilhões de dólares (TERRA, 2005). O processo da expansão de vendas se dá por dois caminhos: o da redução de preço dos modelos básicos, para ampliar o volume de usuários, e o da incorporação de recursos, para estimular o processo de troca. Alguns destes recursos são aplicativos que podem ser baixados da Internet como filmes, videoclipes, jogos, músicas etc. Devido a grande demanda por atrativos e o lucro que estes representam, grandes empresas da área de tecnologia móvel, como a Nokia e Motorola, estão investindo no desenvolvimento de jogos para celular, buscando aprimorar cada vez mais a qualidade e a variedade destas aplicações. Além dessas empresas, outros grandes estúdios de jogos, tais como a Eletronic Arts, Sega e THQ, estão desenvolvendo versões para celular de vários jogos consagrados de outras plataformas, como Need for Speed Most Wanted e The Sims. Uma das grandes vantagens de se desenvolver jogos para celulares é o método de distribuição do software, pois, ao contrário do que acontece no mercado tradicional de jogos, em que o principal meio de distribuição é o varejo, as aplicações para celulares podem ser vendidas diretamente para o consumidor, através de portais

13 2 na Internet ou operadoras de telefonia móvel. Entre as tecnologias de desenvolvimento para dispositivos móveis está a plataforma de desenvolvimento JME (Java Micro Edition), que oferece uma API (Application Program Interface) específica para o desenvolvimento de jogos, o que facilita a tarefa do desenvolvedor, abstranindo a necessidade da utilização de engines (SABINO, 2003). Com o objetivo de aplicar os recursos dessa tecnologia, é desenvolvido um jogo que aborda a história do livro O Leão Baio da Coxilha Rica, escrito por SILVEIRA (2003), visando transmitir ao jogador de forma divertida algumas das características do comportamento do Leão Baio e seu habitat natural, com o intuito de resgatar a cultura regional da Serra Catarinense. Este trabalho está estruturado em 6 capítulos, conforme segue. O capítulo 1 abrange o projeto da pesquisa. No capítulo 2 são apresentados dispositivos móveis e jogos voltados para esses dispositivos. O capítulo 3 aborda a linguagem de programação JME e alguns recursos que esta possui para o desenvolvimento de jogos para celular. O capítulo 4 apresenta o estudo de caso desta pesquisa. No capítulo 5 é detalhada a implementação do estudo de caso: o jogo do Leão Baio. No capítulo 6 são apresentadas as considerações finas e, posteriormente, as referências bibliográficas utilizadas nesta pesquisa. 1.2 Descrição do problema A literatura apresenta diferentes metodologias que podem ser adaptadas para o desenvolvimento de jogos. Porém, estas sugerem apenas uma estrutura a ser seguida, deixando de indicar quais atividades contemplam as etapas que compõem esta estrutura. Além disso, o mercado atual de jogos divide-se em aplicações para executar em diversos dispositivos: computadores standalone, redes de computadores, videogames e, mais recentemente, dispositivos móveis, em especial celulares. Neste último caso, tem-se uma série de restrições como, por exemplo, limitações de espaço em tela, resolução e tamanho de memória.

14 3 Assim, o problema abordado neste trabalho é como desenvolver jogos para dispositivos móveis, especialmente celulares, considerando suas limitações. 1.3 Justificativa Os primeiros celulares que chegaram ao Brasil, no início dos anos 90, eram analógicos, operavam na chamada banda estreita, faziam ligações instáveis, cheias de ruído e freqüentemente cruzadas. Em 1997, a situação melhorou bastante com a segunda geração, digital, mas ainda de banda estreita. A terceira geração, digital e de banda larga, permite uma transmissão de dados muito mais rápida e recursos como transmissão de imagens de televisão com qualidade, download de aplicativos e conexão de alta velocidade com a Internet (LIMA, 2005). Em alguns países da Europa, como Finlândia e Portugal, a penetração dos telefones móveis beira os 100% da população. No Brasil, de cada 100 habitantes, 40 possuem celular. São mais de 70 milhões de aparelhos no país (LIMA, 2005). Devido à grande demanda por aparelhos e dispositivos móveis, cresce também a necessidade das operadoras e fabricantes de celulares criarem atrativos que despertem a atenção do consumidor na hora de comprar estes aparelhos. Entre estes atrativos está a possibilidade de instalar programas adicionais desenvolvidos especificamente para os celulares. Nesta linha, encontram-se programas que atingem principalmente jovens e crianças, como os jogos, que estão cada vez mais interessantes, oferecendo diversos recursos e interfaces gráficas ao usuário. Para atender a esta necessidade, os fabricantes das linguagens de programação disponibilizam extensões voltadas para o desenvolvimento de aplicações para dispositivos móveis, tais como:.net, C++ e JME. Segundo o estudo Mobile Entertainment, realizado pela companhia Informa Telecoms & Media (ABRAGAMES, 2005), o conteúdo desenvolvido para telefones celulares, tais como acesso a músicas, apostas, jogos e conteúdo adulto, deve movimentar 48,2 bilhões de dólares em todo mundo no ano de Nesse contexto, a comercialização de jogos para celulares deve passar de 11,2 bilhões de dólares. Uma

15 4 das apostas são os jogos multijogadores, que permitem a interação entre usuários. Neste trabalho, optou-se pela utilização da linguagem de programação JME, por ser um padrão aberto, destinada diretamente aos dispositivos com capacidade limitada de processamento e memória e por ser multiplataforma, permitindo que aplicações sejam desenvolvidas com baixo custo, utilizando kits de desenvolvimento que podem ser baixados dos sites dos fabricantes. Com o intuito de aplicar os conhecimentos adquiridos durante a pesquisa, pretende-se desenvolver uma aplicação (O jogo do Leão Baio) que, além de procurar abranger vários recursos, também seja portável, de modo que possa ser executada por aparelhos de diferentes marcas e operadoras. Porém, sabe-se ainda, que o projeto de desenvolvimento de jogos difere-se do processo utilizado para softwares em geral, sendo que este trabalho contempla o estudo de uma metodologia específica para o desenvolvimento de jogos, não apenas no sentido de explorar a sua estrutura, mas também as atividades que fazem parte da mesma, servindo este estudo como referência para outros trabalhos. 1.4 Objetivo geral Este trabalho tem como objetivo geral realizar um estudo sobre a metodologia de desenvolvimento de jogos proposta por PEIXOTO e IIDA (2005) e propor atividades relacionadas a cada etapa da construção de jogos para celulares usando a plataforma JME. 1.5 Objetivos específicos a) Identificar os requisitos para o desenvolvimento de jogos para celulares; b) Identificar os principais recursos de desenvolvimento para dispositivos móveis oferecidos pela plataforma JME; c) Propor atividades complementares para a metodologia proposta por PEIXOTO e IIDA (2005);

16 5 d) Aplicar os resultados no desenvolvimento de um estudo de caso: O jogo do Leão Baio. 1.6 Metodologia Inicialmente foi feita a definição do projeto de Trabalho de Conclusão de Curso, a qual contém a descrição do problema, justificativa, objetivos e metodologia. Para a elaboração desses itens, foram necessárias pesquisas sobre o mercado para celulares, tendências tecnológicas e vantagens da utilização da linguagem de programação JME. O próximo passo consistiu em fazer um levantamento bibliográfico sobre jogos desenvolvidos para dispositivos móveis, caracterizando-os em diferentes modalidades. Após a conclusão do levantamento de dispositivos móveis, foi estudada a linguagem JME e os recursos que esta oferece para o desenvolvimento de aplicações para esses dispositivos. Posteriormente, foi feita a descrição do estudo de caso e sua modelagem. Após concluída essa etapa, foi iniciada a implementação do estudo de caso e a descrição da implementação. Por fim, foram elaboradas as considerações finais deste trabalho e as referências bibliográficas utilizadas para o desenvolvimento de todo o trabalho.

17 2 DESENVOLVIMENTO DE JOGOS PARA DISPOSITIVOS MÓVEIS Neste capítulo são apresentados alguns dos dispositivos móveis que estão em evidência no mercado, ressaltando-se o celular que é o foco deste trabalho e suas funcionalidades. Também, neste capítulo, é abordado o desenvolvimento de jogos no Brasil, dados estatísticos e a metodologia utilizada para o desenvolvimento de jogos. 2.1 Os dispositivos móveis Os dispositivos móveis são equipamentos portáteis, de tamanho reduzido, que surgiram no mercado dos equipamentos eletrônicos com o intuito de oferecer uma solução prática para profissionais em constante movimento, que necessitavam de um dispositivo para interagir com membros de sua empresa de forma ágil e segura. Além de mais leves e simples de usar, os dispositivos móveis também representam uma redução de custos para muitas empresas, com preços competitivos no mundo das comunicações (PEKUS, 2006). Com o passar dos anos, estes dispositivos tornaram-se cada vez mais populares entre as pessoas, incorporando uma série de formatos e funções, para atender necessidades de vários grupos de usuários. Alguns dos dispositivos móveis que mais atraem os consumidores são aparelhos como: MP3-player, Personal Digital Assistant (PDA), smartphones, pagers e celulares, que permitem o acesso à Internet, transmissão de dados, download de aplicativos, sons e vídeos, serviço de , câmera fotográfica integrada, entre outros. Na Figura 1 pode-se ver outras categorias de dispositivos móveis (PEKUS, 2006).

18 7 FIGURA 1 - Dispositivos móveis (Fonte: PEKUS, 2006) O avanço tecnológico permitiu que uma série de novas funcionalidades fossem agregadas a esses dispositivos, destacando-se o celular que, quando chegou ao mercado apresentava um conjunto de funções pré-definidas e uma série de limitações quanto ao seu conteúdo, cabendo ao usuário adaptar-se a elas. Hoje se vivencia a terceira geração de sistemas móveis, que apresenta um avanço considerável se comparado às gerações anteriores (LIMA, 2005). A primeira geração de celulares caracterizava-se, basicamente, por ser analógica, porém, a partir da segunda geração, iniciou-se a utilização da tecnologia digital para transmissão de dados, trazendo melhor qualidade de voz, facilidade de comunicação de dados e criptografia de informações transmitidas. Já, a terceira geração se destaca pela alta taxa de conexão com a Internet, permitindo o download de aplicativos, como vídeos, músicas e jogos (WIRELESS, 2006). Esta capacidade de baixar dinamicamente arquivos da Internet dá ao celular um grande destaque, uma vez que este é muito utilizado em locais como filas de bancos, consultórios médicos, dentre vários outros locais, como uma forma de distração para o usuário do aparelho. O principal atrativo nesta situação são os jogos, que destacam-se mais ainda entre os jovens e crianças.

19 8 2.2 Desenvolvimento de jogos no Brasil A ABRAGAMES, Associação Brasileira das Desenvolvedoras de Jogos, que trabalha desde 2004, é uma entidade sem fins lucrativos que tem como principal objetivo fortalecer a indústria nacional do desenvolvimento de jogos. Em maio de 2005 lançou o primeiro mapeamento sobre a realidade das empresas brasileiras que atuam nesse segmento, apresentando resultados que enfocam dados referindo-se à idade, distribuição geográfica, segmentação das atividades, crescimento nos últimos anos, faturamento médio, empregabilidade e perfil dos profissionais dentro do setor (ABRAGAMES, 2005). Segundo esta mesma pesquisa, desde os anos 80 há uma tentativa de penetração na indústria brasileira de desenvolvimento de jogos. Há registros de empresas que foram fundadas em 1992, porém, foi em 1997 que esse mercado começou a movimentar-se mais fortemente. Em 1999, o Brasil teve um recorde de fundação de empresas de jogos (21% do total), conforme mostra a Figura 2. Até abril de 2005, há registro de 55 empresas atuando nessa área. FIGURA 2 - Ano de criação das empresas (Fonte: ABRAGAMES, 2005) Distribuição geográfica das empresas Outro dado importante apontado pela pesquisa foi a distribuição das

20 9 empresas brasileiras de desenvolvimento de jogos. O estado que mais se destacou no desenvolvimento foi o Paraná, com 33% do total de empresas desenvolvedoras de jogos. Em segundo lugar está o estado de São Paulo, com 30% das empresas no setor. O estado de Santa Catarina aparece em 6º lugar com 5% das empresas. FIGURA 3 - Distribuição geográfica dos desenvolvedores (Fonte: ABRAGAMES, 2005) Uma análise inicial da Figura 3 pode apontar os estados da região Sudeste e Sul como os principais expoentes do setor, porém há um grande equilíbrio no faturamento dos estados Rio de Janeiro, São Paulo, Pernambuco e Paraná, como podese verificar na Figura 4. FIGURA 4 - Faturamento por estado (Fonte: ABRAGAMES, 2005)

21 Plataforma alvo O maior foco das desenvolvedoras de jogos brasileiras é o PC, com 63% do total. Em segundo lugar vem o celular com 22%. Um dos obstáculos enfrentados pelas empresas desenvolvedoras é a dificuldade em obter licenças dos kits de desenvolvimento dos grandes consoles, o que dificulta a penetração das empresas desenvolvedoras nesse nicho. Sem a distribuição oficial, também não há suporte e incentivo aos desenvolvedores locais. Um dos fatores que vem prejudicando esse quadro é a pirataria de jogos no Brasil que, segundo estudo da IDG Consulting, atingiu a marca de 95% em 2004, causando um prejuízo calculado em aproximadamente 210 milhões de dólares (ABRAGAMES, 2005). FIGURA 5 - Plataforma de desenvolvimento (Fonte: ABRAGAMES, 2005) Faturamento do mercado brasileiro O mercado de jogos brasileiro vem apresentando um grande potencial. No ano de 2004 o faturamento cresceu quase 40%, dos quais 23% são dedicados ao mercado de jogos para celular, conforme apresentado na Figura 5. Apesar do faturamento das empresas brasileiras estar bem abaixo dos grandes centros de desenvolvimento do mundo, as mesmas têm se desenvolvido num ritmo extremamente competitivo, com um faturamento de aproximadamente 18 milhões de reais (ABRAGAMES, 2005).

22 Jogos para celular Os primeiros jogos produzidos para celulares eram muito semelhantes aos existentes na época dos vídeo-games de 8 bits, como o Master System e Nintendo Entertainment System (NES), que são jogos 2D com capacidades limitadas de resolução, qualidades de cores e sons (SABINO, 2003). Com os avanços tecnológicos, os celulares foram evoluindo sua capacidade computacional, tornado-se mais rápidos, com maior armazenamento e possibilidade de renderização de imagens em 3D. Características que antigamente eram apenas encontradas em computadores e vídeogames, hoje também podem ser vistas em dispositivos móveis. Empresas especializadas em hardware para 3D estão voltando suas atenções para a plataforma móvel. Atualmente, a NVIDIA e ATI, ambas produtoras de hardware de aceleração 3D, estão disponibilizando e produzindo chips gráficos para celulares, que combinam vídeo e áudio para uma solução móvel multimídia completa. Os chips Imageon 2388 e Imageon 2380 são os modelos mais recentes da ATI, que trazem índices sem paralelo de processamento de jogos em 3D no mercado de telefonia móvel (ATI, 2006). FIGURA 6 - Jogo Sudeki. (Fonte: ATI, 2006) Os processadores multimidia Imageon 2388 e 2380 adicionaram mais

23 12 flexibilidade e efeitos de textura do que o Imageon 2300, permitindo assim jogos que requerem um caráter dinâmico baseado em jogos de ação, esportes e Role-Playing Game - RPGs, com ambientes enriquecidos. Como exemplo dessa nova tecnologia, pode-se citar o jogo Sudeki, uma conversão de um jogo de combate RPG de uma base nativa do código do PC e do console XBox em uma versão de demonstração para a tecnologia Imageon 3D da ATI, conforme apresentado na Figura 6 (ATI, 2006). 2.4 Desenvolvendo jogos Para criar um jogo com chances elevadas de sucesso, o desenvolvedor deve estar atento às exigências do mercado e tecnologias em evidência, para que o usuário possa desfrutar ao máximo das capacidades do seu aparelho e, com isso, sinta-se satisfeito com o jogo adquirido Classificação A classificação dos jogos auxilia o desenvolvedor a definir quais são as regras do jogo, público alvo e a plataforma alvo a que se destina o jogo. Como exemplo das categorias de jogos para celular que mais fazem sucesso, tem-se (PEIXOTO e IIDA, 2005): Árcade: jogos clássicos dos anos 80, como Asteróides, Space Invaders e Pac Man; Cartas: simulam um jogo específico de cartas como Poker ou Truco; Puzzle: privilegiam o raciocínio rápido, como Tetris e Shapes and Collumns; Jogos de tabuleiro: simulam os antigos jogos de tabuleiro como Xadrez e Damas; Aventura em texto: jogos totalmente em texto, em que um cenário é descrito e o jogador tem uma lista de decisões possíveis; Aventura gráfica: basicamente a evolução da aventura em texto. São mostradas figuras estáticas ou dinâmicas de cenários e o jogador pode

24 13 interagir com elas, como Space Quest; Side scrollers: conhecidos como de plataforma, são jogos 2D em que o personagem tem que pular buracos e atirar em inimigos, como Sonic e Super Mario; RPG: em geral possuem uma história complexa, em que o personagem evolui durante o jogo e pode interferir em toda a história, como as séries Ultima e Final Fantasy Metodologia de desenvolvimento de jogos Um jogo computadorizado pode ser definido como um sistema composto de três partes básicas que são o enredo, o motor e a interface. O enredo define o tema, a trama e os objetivos. O motor é o mecanismo que controla a reação do jogo em função da ação do usuário. A interface controla a interação do motor com o usuário, reportando graficamente o estágio do jogo (BATTAIOLA, 2000). O processo de criação de um jogo pode ser dividido em três etapas, sendo elas: definição, criação e implementação, conforme apresentado na Figura 7 (PEIXOTO e IIDA, 2005). FIGURA 7 - Diagrama do processo de criação (Fonte: PEIXOTO e IIDA, 2005)

25 14 O enredo do jogo é idealizado na fase de definição do ciclo de desenvolvimento, a interface na fase de criação e, por fim, o motor do jogo é criado na etapa de codificação da fase de implementação. A fase de definição é iniciada após a realização de uma pesquisa sobre o tema central do jogo. Nesta fase é feita a definição da plataforma-alvo e público alvo. Após a definição desses dois elementos, é iniciada a definição das regras, pelas quais é especificado o objetivo do jogo, os personagens que o compõe, as restrições e de que maneiras o jogo pode ser finalizado. Concluída a primeira etapa, inicia-se a fase de criação, na qual devem ser definidos o layout do jogo, o tamanho e o posicionamento de cada personagem. Também nessa etapa é definida a arte do jogo, que determina o formato e as cores de cada item do jogo. Por último, é feita a implementação do jogo, que abrange as etapas de codificação e testes antes de sua finalização. Nos próximos capítulos é apresentada a aplicação desta metodologia, bem como as adaptações propostas para a mesma, incluindo detalhes das atividades de cada etapa. A etapa de definição e criação são apresentadas no capítulo 4 e a implementação detalhada no capítulo Conclusão Nesse capítulo foi possível observar os diferentes tipos de dispositivos móveis, ressaltando-se as mudanças ocorridas entre cada uma das gerações dos sistemas móveis e a importância de se agregar novas funcionalidades e atrativos a estes aparelhos. Também, neste capítulo, foram apresentados dados estatísticos que mostram como o Brasil está inserido neste ramo e as regiões que mais faturam dentro do mercado de desenvolvimento de jogos. Através deste levantamento, pode-se perceber que este é um ramo em ascensão no Brasil. Apesar de Santa Catarina não ser um pólo de desenvolvimento de jogos, ainda apresenta-se em 6º lugar, demonstrando um passo inicial para esse

26 15 segmento. Os conhecimentos obtidos através da pesquisa relatada neste capítulo são essenciais para definição de etapas no desenvolvimento de um jogo, como a plataforma alvo e público alvo, que são etapas abordadas neste trabalho, no capítulo de modelagem do jogo, seguindo a metodologia sugerida por PEIXOTO e IIDA (2005).

27 3 A PLATAFORMA JME Neste capítulo é apresentada a plataforma de desenvolvimento JME, bem como as configurações, perfis e ferramentas auxiliares utilizadas no processo de desenvolvimento de aplicações. 3.1 A plataforma de desenvolvimento Java Em 1991, financiado pela Sun Microsystems, o projeto de pesquisa com o codinome Green resultou no desenvolvimento de uma linguagem de programação que foi inicialmente nomeada Oak, em homenagem a uma árvore de carvalho que era vista pela janela de James Gosling, desenvolvedor do projeto Green. Mais tarde, ao descobrir a já existência de uma linguagem de programação com o nome Oak, uma equipe de funcionários da Sun Microsystems sugeriu o nome Java, referindo-se a cidade de origem de um tipo de café importado que era utilizado por uma cafeteria local (DEITEL e DEITEL, 2005). Após ter sido anunciada formalmente em uma conferência de maio de 1995, a plataforma de desenvolvimento Java passou a ser considerada como uma das ferramentas mais completas para o desenvolvimento de software (PEIXOTO e IIDA, 2005). Estima-se que, atualmente, existam mais de três milhões de desenvolvedores Java no mundo e seu uso vem se tornando cada vez mais popular. Uma vez que, através dela uma grande variedade de aplicações podem ser criadas a partir de uma única linguagem de programação, que inclui soluções como (MATTOS, 2005): Aplicações gráficas para desktops em PCs, Macs e outras plataformas de

28 17 hardware; Aplicações para a Web executadas pelos navegadores dos clientes, proporcionando mais interatividade e recursos avançados de visualização, chamados applets; Aplicações para a Web executadas nos servidores, que montam HTML (HyperText Markup Language) dinamicamente, com conteúdo provenientes de banco de dados e outras fontes que sofrem constantes atualizações. São as conhecidas páginas Servlets e Java Server Pages; Aplicações destinadas a dispositivos móveis, incluindo PDAs, celulares e outros equipamentos embutidos em eletrodomésticos. Por se tratar de uma linguagem multiplataforma, ou seja, que pode ser entendida e processada por máquinas que rodam diferentes sistemas operacionais, Java permite o desenvolvimento de aplicações que sejam executadas em qualquer sistema operacional que possua uma máquina virtual Java (JVM - Java Virtual Machine). Esta funciona como um mecanismo essencial para a execução de qualquer aplicativo Java, transformando o código-fonte compilado no código de máquina para a plataforma que está executando a JVM. Além disso, a JVM também é responsável por fornecer segurança, alocar e desalocar memória e gerenciar linhas de execução (MUCHOW, 2004) Edições da plataforma Java Criada com o conceito write once, run anywhere (escreva uma vez, execute em qualquer lugar), a plataforma Java segue a idéia na qual o programador escreve seu código em Java e o compila apenas uma vez, podendo assim, executá-lo em qualquer plataforma que suporte uma máquina Virtual Java (MATOS, 2005). Para que tal idéia se torne possível, foram criadas três edições da plataforma Java (MATOS, 2005): Java Standard Edition (JSE): projetada para execução de programas em máquinas simples de computadores pessoais e estações de trabalho;

29 18 Java Enterprise Edition (JEE): destinada a aplicativos baseados em servidores, com o objetivo de servir clientes, fornecedores e funcionários, essa edição possui suporte interno para servlets, JSP (Java Server Pages) e XML (Extensible Markup Language); Java Micro Edition (JME): projetada para dispositivos com memória, vídeo e poder de processamento limitados. Assim, cada edição da plataforma Java reúne um conjunto de tecnologias, que podem ser utilizadas de acordo com a finalidade de cada produto. 3.2 A plataforma Java Micro Edition Introduzida no mercado para atender as necessidades de aplicativos de pequeno porte, a plataforma JME vem se tornando uma das linguagens mais populares para dispositivos móveis, devido a compatibilidade entre plataformas que esta linguagem oferece. Através dela, aplicações e conteúdos diversos podem ser transferidos de maneira flexível e segura entre dispositivos que possuem uma máquina Virtual Java e seguem às restrições das configurações e perfis JME (MATOS, 2005). Assim como quase toda tecnologia Java, o JME é regulamentado pelo Java Comunity Process (JCP), porém, há outras empresas de grande porte que também atuam no desenvolvimento da plataforma JME, tais como: Nokia, Motorola, IBM, Intel, Sony e Siemen afirmam PEIXOTO e IIDA (2005) A arquitetura JME Mesmo tendo algumas características em comum, os dispositivos móveis tais como: celulares, pagers e PDAs diferem bastante em relação à forma, às funções e aos componentes internos, o que os tornam muitas vezes incompatíveis uns com os outros (MATOS, 2005). Para assegurar que equipamentos com características semelhantes se tornassem compatíveis entre si, os dispositivos móveis foram agrupados em duas

30 19 importantes camadas, que são: configuração (configuration) e perfil (profile). Além dessas duas camadas, pode-se ainda, considerar uma terceira, que abrange as APIs opcionais, algumas disponibilizadas pelas versões mais novas da tecnologia, outras por diferentes fabricantes, garantindo assim, a flexibilidade e a extensibilidade da plataforma (MATOS, 2005). A Figura 8 apresenta a arquitetura JME dividida em camadas de software, que é constituida pelo sistema operacional do dispositivo móvel, configuração, perfil e, ainda, uma outra camada opcional que é composta pelos pacotes opcionais. FIGURA 8 - Camadas de software de um dispositivo JME (Fonte: MATOS, 2005) Configurações A configuração definida para cada dispositivo especifica a máquina Virtual Java e o conjunto de bibliotecas básicas que disponibilizam funcionalidades aos dispositivos. Segundo MATOS (2005), atualmente, existem dois tipos de configuração: Connected Device Configuration CDC (Configuração para dispositivos conectados) e Connected Limited Device Configuration CLDC (Configuração para dispositivos conectados limitados). A CDC é focada em dispositivos com maior capacidade de processamento e armazenamento de dados, sendo assim destinada a consumidores de alto padrão e abrangendo equipamentos como TVs com acesso a Internet, videofones e alguns

31 20 modelos de PDAs. Esta configuração possui, no mínimo, 512 Kilobytes de memória para executar os aplicativos Java, 256 Kilobytes para alocação de memória em tempo de execução e conectividade de rede (MATOS, 2005). Por outro lado, a CLDC engloba os dispositivos consumidores de baixo padrão, que possuem memória e processamento limitado, com largura de banda baixa e acesso intermitente à rede. A CLDC é voltada para dispositivos que possuem 128 Kilobytes de memória para executar o Java, 32 Kilobytes para alocação de memória em tempo de execução e interface restrita com o usuário. Como exemplo de dispositivos pertencentes a esta categoria têm-se os celulares, pagers, organizadores pessoais e, também, alguns PDAs. Devido a variação de recursos existentes em cada tipo de dispositivo e para tornar mais flexível às aplicações, a Sun Microsystems introduziu o conceito de perfil na plataforma JME Perfis Segundo MATOS (2005), um perfil pode ser descrito como sendo um complemento de uma configuração. Ele fornece APIs e especificações necessárias para o desenvolvimento de aplicações para cada tipo de dispositivo. Alguns dos principais perfis desenvolvidos pelo JCP (Java Community Process) são: Mobile Information Device Profile MIDP, PDA Profile 1.0, Foundation Profile, Personal Basis Profile, Personal Profile etc. O Foundation Profile é uma extensão das APIs de configuração CDC destinada a dispositivos que suportam ambientes JME com conexões de rede. Porém, este perfil não oferece suporte à interface com o usuário, ficando esta tarefa destinada a outros perfis como o Personal Basis Profile e o Personal Profile, situados em uma camada superior ao Foundation Profile. O PDA Profile é um perfil que opera sobre a configuração CLDC, oferecendo interface com o usuário para Palmtops e PocketPCs. Voltado a pequenos dispositivos, incluindo celulares e PDAs, o perfil MIDP opera sobre a configuração CLDC, oferecendo suporte a interface com o usuário,

32 21 persistência de dados e conexão externa. Este perfil é bastante utilizado no desenvolvimento de jogos para telefones celulares, possuindo uma grande aceitação nesse mercado, o que levou a inclusão de uma API para jogos multimídia em sua segunda versão (PEREIRA, 2006) A Game API A Game API fornece classes de auxílio para desenvolvimento de jogos, oferecendo funcionalidades especiais para a criação de interfaces com uma melhor usabilidade, economizando assim, recursos do dispositivo, como memória (SABINO, 2003). Inicialmente, com a MIDP 1.0, os desenvolvedores tinham que criar suas próprias rotinas de gráficos para conseguir um bom desempenho. Isso acarretava no aumento do tamanho do arquivo final, em função da quantidade de código necessária para gerar as rotinas de gráficos. Também não havia suporte para áudio além de alguns beeps do sistema. Apesar disso, a MIDP 1.0 já fornecia APIs de interface de alto nível e baixo nível, através das classes Screen e Canvas respectivamente. Através da classe Screen vários componentes podem ser adicionados ao menu do jogo, como: alertas, caixas de texto, formulários e listas, para permitir a navegação entre as telas. Por outro lado, a classe Canvas trata as ações dos gráficos durante o jogo. FIGURA 9 - Classes principais para jogos (Fonte: SABINO, 2003)

33 22 A Figura 9 mostra os pacotes adicionados com a MIDP 2.0, provenientes para vários meios para a construção de jogos, que antes só eram possíveis com a MIDP 1.0 utilizando uma grande quantidade de código repetitivo. O pacote Javax.microedition.lcdui.game apresenta cinco classes que estendem as capacidades do MIDP para jogos 2D, sendo elas: GameCanvas: fornece as funcionalidades básicas do jogo, incluindo métodos orientados para obter o estado das teclas do jogo e mecanismos para manipular o buffer gráfico e enviar imagens para a tela. Estas funcionalidades simplificam a construção dos jogos, aumentando seu desempenho. Layer: esta classe representa os elementos visuais do jogo, possuindo atributos como localização, tamanho e visibilidade. Sprite: utilizada para criar uma animação a partir de vários quadros, oferecendo métodos para movimentação, giro e detecção de giros de colisões entre objetos. TiledLayer: permite a criação de imagens grandes, como cenários, através da composição de imagens menores. LayerManager: simplifica o desenvolvimento do jogo automatizando o processo de renderização Máquina Virtual K Segundo MUCHOW (2005), a máquina virtual Java (JVM) é um software que roda sobre a plataforma nativa (o sistema operacional), sendo responsável por executar aplicações Java e, também, pelo fornecimento de recursos para sua execução, como alocação de memória, acesso a dispositivos de hardware e gerenciamento de linhas de execução. A CLDC especifica uma série de requisitos para a implementação de uma máquina virtual que opera sobre esses dispositivos limitados. A Sun Microsystems desenvolveu o que é chamado de implementação de referência de uma máquina virtual que atende a esses requisitos, conhecida como K Virtual Machine (máquina virtual K),

34 23 ou simplesmente KVM. A máquina virtual K é uma implementação da VM (Virtual Machine) da especificação que satisfaz aos requisitos da CLDC, para rodar aplicações JME. Esta máquina difere em relação a JVM nos seus requisitos especiais impostos pelos dispositivos em que ela roda: A máquina virtual necessita de 40 a 80 kilobytes de memória (análogo ao K da sigla KVM que significa Kilo); Apenas 20 a 40 kilobytes de memória dinâmica são exigidos; Pode ser executada em processadores de 16 bits, com freqüência de apenas 25 MHz; MUCHOW (2005), ainda, afirma que a KVM é apenas uma implementação de referência da Sun Microsystems, que se enquadra na especificação da CLDC. Sendo assim, os fabricantes de dispositivos limitados devem implementar suas próprias máquinas virtuais que sigam esse padrão, para que a plataforma JME siga com sua portabilidade Distribuição de aplicativos MUCHOW (2005) enfatiza que, para realizar a distribuição de aplicativos JME, são necessários dois tipos de arquivos, os com extensão.jar (Java Archive) e os de extensão.jad (Java Application Descriptor). O arquivo jar deve conter todas as classes e arquivos, como imagens, empacotadas. Além desses arquivos, um jar também possui um arquivo chamado manifest.mf que descreve o conteúdo do arquivo jar. Já o arquivo jad serve para fornecer informações sobre as MIDlet contidas dentro do arquivo jar Kit de ferramentas do JME Desenvolvido pela Sun Microsystems, o Wireless Toolkit (WTK), é uma ferramenta criada para a execução de aplicativos JME, disponível no site < Este kit de ferramentas não possui um editor próprio para o desenvolvimento

35 24 de programas, sendo necessária a importação do projeto. Feito isso, o WTK realiza a automatização de alguns procedimentos, como o empacotamento de MIDlets, gerenciamento de arquivos, além de disponibilizar alguns emuladores para a visualização das aplicações (CARNIEL e TEIXEIRA, 2005). 3.3 Conclusão Neste capítulo é apresentada a plataforma Java, com suas três versões. Posteriormente, é focada a atenção sobre a versão JME, que é voltada para dispositivos móveis e limitados, que é o caso de telefones celular. Para que aplicações possam rodar seguramente nesses dispositivos, o JCP e associados desenvolveram uma especificação especial da máquina virtual Java para essa plataforma de dispositivos, que é conhecida como KVM. A arquitetura do JME, que é subdividida em configurações e perfis, disponibiliza após a versão MIDP 2.0, uma API dedicada ao desenvolvimento de jogos, contendo um conjunto de classes que facilitam o desenvolvimento de jogos. Etapas que antes eram implementadas manualmente pelo desenvolvedor, agora estão disponíveis nesta API. A pesquisa realizada neste capítulo possibilitou a decisão de que recursos são necessários para o desenvolvimento do estudo de caso e, também, qual tecnologia é mais apropriada para esta tarefa. Viu-se que a utilização de WTK que implementa a especificação MIDP 2.0 é essencial devido à Game API disponibilizada pelo mesmo, com a qual o jogo do Leão Baio é desenvolvido.

36 4 MODELAGEM DO JOGO Neste capítulo é apresentada a modelagem do jogo do Leão Baio, desenvolvido a partir da metodologia proposta por PEIXOTO e IIDA (2005). 4.1 Definição da modelagem De acordo com a metodologia proposta por PEIXOTO e IIDA (2005), a modelagem de um jogo é composta por três etapas principais, sendo elas: definição, criação e implementação do jogo. Na etapa de definição são identificados alguns fatores que auxiliam na verificação da viabilidade do jogo, sendo estes: Plataforma-alvo: dispositivos aos quais o jogo é destinado; Público-alvo: pessoas às quais o jogo se destina. Ainda, nesta etapa, é definida a curva de aprendizagem, que diz respeito ao tempo que o jogador leva para assimilar os comandos e regras do jogo e, também, o fator de replay, que indica o grau de incentivo para que o jogador jogue novamente o jogo; Regras do jogo: definição das possíveis ações do personagem principal do jogo e de seus inimigos, bem como seus objetivos e fatores que finalizam o jogo. Na etapa de criação, é definido o layout do jogo, que determina o tamanho da tela, a capacidade de cores e o tamanho de cada objeto pertencente ao jogo. Ainda, na fase de criação, é definida a arte do jogo, na qual é criada a forma para cada objeto. Por último, na etapa de implementação, é feita a codificação do jogo e os testes do

37 26 mesmo (PEIXOTO e IIDA, 2005). 4.2 Plataforma-alvo Devido ao fato de atualmente existirem diversos modelos de celulares com variadas configurações, é necessário definir a plataforma-alvo no início da modelagem do projeto, pois após a escolha da plataforma pode ser definida a configuração e o perfil que o jogo a ser desenvolvido deve seguir. A partir desta escolha, pode-se identificar em quais aparelhos o jogo funcionará adequadamente. Para testar o jogo do Leão Baio foi selecionado o celular V3x da Motorola, que utiliza o sistema operacional Symbian. O motivo da escolha deste aparelho deve-se ao fato de que este possui a versão MIDP 2.0 e dá suporte à configuração CLDC 1.0, permitindo assim, que recursos adicionais como multimídia, a Game API, entre outros recursos descritos no capítulo 3, possam ser utilizados na implementação do jogo. Com base na plataforma especificada, foram levantados os requisitos mínimos para a execução do jogo: Resolução da tela: 240 x 320 pixels; cores; Teclado direcional. 4.3 Público-alvo A definição de um público-alvo auxilia o desenvolvedor a elaborar a arte e regras do jogo de acordo com a faixa etária à qual se deseja atingir. Sendo assim, caso o público-alvo definido seja infantil, deve-se pensar na utilização de personagens e animações voltadas para este público. Caso contrário, deve-se utilizar uma animação mais abrangente, que interesse a todas as idades. É importante que também seja definida a curva de aprendizagem, pois através dela pode-se ter uma noção do tempo que o jogador leva para assimilar os comandos e as regras do jogo. Um jogo com poucas regras e comandos tem uma curva

38 27 de aprendizagem pequena, pois após poucos minutos de jogo, o jogador está familiarizado com suas possíveis ações e objetivos. Nesse caso, um menu simples contendo uma opção de ajuda, informando quais as possíveis ações do jogo e como realizá-las, pode ser suficiente para que o jogador se familiarize com o mesmo. Porém, se o jogo tiver vários comandos, ou se as regras definidas para este forem complexas, é interessante criar uma fase inicial, na qual as regras e comandos são explicitamente demonstrados, conhecida como tutorial. Como alternativa, pode-se também criar as fases iniciais com níveis de dificuldade baixos, para que aos poucos o jogador vá assimilando os comandos (PEIXOTO e IIDA, 2005). O fator de replay não é considerado como uma métrica, pois varia de jogador para jogador, sendo que um pode se sentir mais motivado para jogar novamente o mesmo jogo, enquanto outro jogador pode se sentir desmotivado. Cabe ao desenvolvedor do jogo criar atrativos que aumentem o fator replay como, por exemplo, adicionar ao jogo caminhos alternativos, sistema de pontuação, possibilidade de multiplayer entre outras possibilidades. De acordo com as definições acima, o jogo do Leão Baio é destinado à pessoas de todas as idades, que estejam interessadas em descobrir, através de um jogo, o habitat, estilo de vida e obstáculos enfrentados por este animal da Coxilha Rica. Por se tratar de um jogo simples e que apresenta um menu com instruções ao jogador, a curva de aprendizagem é pequena, sendo que com poucos comandos o jogador pode realizar todas as ações permitidas durante o jogo. O fator de replay do jogo é médio, pois, uma vez que o jogo é finalizado, não há novos desafios a serem superados pelo jogador, como pontuação ou escolha de caminhos alternativos. 4.4 Regras do jogo Seguindo a história abordada pela primeira parte do livro O Leão Baio da Coxilha Rica (SILVEIRA, 2003), a fase inicial do jogo é composta pelo Leão Baio, que é controlado pelo jogador, além de outros animais de pequeno porte. O Leão pode eliminar da fase os animais pequenos, se conseguir pular em cima dos mesmos, antes

39 28 que estes fujam. O único animal que o Leão Baio não pode eliminar é o ouriçocacheiro, pois, caso o Leão salte em cima do ouriço, este o fere com seus espinhos. Para finalizar a fase inicial do jogo, o Leão deve ir em busca de uma caverna situada no alto de uma montanha, que serve como seu refúgio. Durante o percurso até a caverna, o Leão tem que saltar sobre uma garganta situada próxima à montanha e cuidar com as lajes que caem da montanha, pois estas podem tirar sua energia, que pode ser recuperada se o Leão comer os pedaços de carne encontrados na fase. Caso o Leão caia na garganta ou perca muita energia, a fase é reiniciada. A segunda fase do jogo, que corresponde à segunda parte do livro, inicia com o Leão Baio próximo às fazendas, nas quais, o Leão deve ser cauteloso para que não seja visto pelos caçadores e seus cães, que constantemente vão à sua caça. Para proteger-se, o Leão deve subir em algumas árvores baixas e correr para longe dos caçadores, antes que estes o alcancem. A fase é concluída quando o Leão conseguir cruzar o perímetro das fazendas, chegando a uma nova região da Coxilha Rica. Esta fase não é implementada, ficando como sugestão para um trabalho futuro. 4.5 Layout do jogo A segunda etapa de desenvolvimento do jogo compreende à fase de criação, na qual deve ser definido o layout e a arte do jogo. A criação do layout auxilia o desenvolvedor a identificar quantos elementos gráficos cabem na tela do jogo. Para realizar esta tarefa, deve-se fazer a representação da fase através de figuras geométricas. Cada figura geométrica representa um objeto ou personagem do jogo, que é chamado de sprite, e possui o mesmo tamanho do seu relativo sprite. A Figura 10 mostra o layout criado para alguns objetos gráficos do jogo, feitos apartir da ferramenta Tile Studio disponibilizada gratuitamente no site < Neste mesmo site encontram-se informações detalhadas sobre essa ferramenta e tutorias que auxiliam a criar e manipular imagens no Tile Studio.

Desenvolvimento de Software I

Desenvolvimento de Software I Desenvolvimento de Software I Prof. Arnaldo Martins Hidalgo Junior arnaldo@flash.tv.br http://aulashidalgo.wordpress.com 5 h/a (2 aulas semanais) http://aulashidalgo.wordpress.com 1 Competências Avaliar

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

A linguagem Java foi projetada tendo em vista os seguintes objetivos:

A linguagem Java foi projetada tendo em vista os seguintes objetivos: Java Disciplina: Programação II Professora: Mai-Ly Vanessa Histórico do Java Em 1991 a Sun Microsystems financiou uma pesquisa sobre o que seria a nova onda digital. Desta pesquisa resultou a criação da

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

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

Por Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009.

Por Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009. J2ME E O PERFIL MIDP Por Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009. INTRODUÇÃO Com o passar do tempo os aparelhos celulares deixaram de ser apenas para ligações e agenda para

Leia mais

FRAMEWORK CELEPAR MANUAL DE INSTALAÇÃO/UTILIZAÇÃO DE JVM EM POCKET PC

FRAMEWORK CELEPAR MANUAL DE INSTALAÇÃO/UTILIZAÇÃO DE JVM EM POCKET PC FRAMEWORK CELEPAR MANUAL DE INSTALAÇÃO/UTILIZAÇÃO DE JVM EM POCKET PC Outubro 2007 Sumário de Informações do Documento Tipo do Documento: Relatório Título do Documento: MANUAL DE INSTALAÇÃO/UTILIZAÇÃO

Leia mais

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME Java para Dispositivos Móveis Desenvolvendo Aplicações com J2ME Thienne M. Johnson Novatec Sumário Agradecimentos...13 Sobre a autora...14 Prefácio...15 Apresentação...16 PARTE I Introdução a Java para

Leia mais

Introdução ao Desenvolvimento de

Introdução ao Desenvolvimento de Introdução ao Desenvolvimento de Aplicações Web com JSF e PrimeFaces Marcelo Vinícius Cysneiros Aragão ICC Inatel Competence Center marcelovca90@inatel.br Santa Rita do Sapucaí, 15 de março de 2016 Conteúdo

Leia mais

Aplicações Visuais Mobile com Netbeans 6.0

Aplicações Visuais Mobile com Netbeans 6.0 Aplicações Visuais Mobile com Netbeans 6.0 Ramon Lopes Sun Campus Ambassador Ramon.Lopes@Sun.COM Agenda O que é o Netbeans? O que é Java ME? CLDC & MIDP Mobile Demo! Próximos Passos O que é o NetBeans?

Leia mais

Curso Online de E-commerce. Plano de Estudo

Curso Online de E-commerce. Plano de Estudo Curso Online de E-commerce Plano de Estudo Descrição do programa O programa oferece metodologias e técnicas necessárias para a implementação de soluções web baseadas no CMS para o suporte, estratégias

Leia mais

Introdução à plataforma Java

Introdução à plataforma Java Introdução à plataforma Java Apresentação: Professor: Galvez Gonçalves prof.gago@gmail.com O que estudaremos 1. Os conceitos de programação orientada a objetos através de uma linguagem de programação que

Leia mais

Curso online de Fundamentos em Android. Plano de Estudo

Curso online de Fundamentos em Android. Plano de Estudo Curso online de Fundamentos em Android Plano de Estudo Descrição do programa A Certificação Android ensina como usar as ferramentas necessárias para projetar e implantar aplicativos Android para dispositivos

Leia mais

Curso online de. Formação em Front-End. Plano de Estudo

Curso online de. Formação em Front-End. Plano de Estudo Curso online de Formação em Front-End Plano de Estudo Descrição do programa O Programa de Desenvolvimento Web lhe oferece conhecimentos para desenvolver habilidades necessárias para se tornar um Desenvolvedor

Leia mais

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação

Leia mais

5 Resultados Resolução das Imagens e tamanhos das cenas

5 Resultados Resolução das Imagens e tamanhos das cenas 5 Resultados Neste capítulo são comparados os resultados atingidos em cada um dos protótipos e alguns comentários são feitos sobre a implementação. Os protótipos propostos foram implementados como descrito

Leia mais

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade,

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, 1 Introdução Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, os desafios encontrados durante o desenvolvimento

Leia mais

ESTUDO DE PLATAFORMAS PARA A CONSTRUÇÃO DE APLICAÇÕES MÓVEIS. Gabriel de Biasi¹; Nilton Cézar de Paula²

ESTUDO DE PLATAFORMAS PARA A CONSTRUÇÃO DE APLICAÇÕES MÓVEIS. Gabriel de Biasi¹; Nilton Cézar de Paula² ESTUDO DE PLATAFORMAS PARA A CONSTRUÇÃO DE APLICAÇÕES MÓVEIS Gabriel de Biasi¹; Nilton Cézar de Paula² ¹ Acadêmico de Ciência da Computação e bolsista de Iniciação Científica, e-mail: biasi131@gmail.com

Leia mais

Figura 16 Niagara - Visão de grupos de notas.

Figura 16 Niagara - Visão de grupos de notas. Conclusão 6 Conclusão 6.1 Trabalhos Relacionados Dentre as funcionalidades fornecidas pela interface gerada pelo framework, em destaque está a possibilidade do zoom livre. Disponibilizar esta funcionalidade

Leia mais

MOBILE-FURBOT: UMA VERSÃO DO FURBOT PARA CRIAÇÃO DE JOGOS EM DISPOSITIVOS MÓVEIS

MOBILE-FURBOT: UMA VERSÃO DO FURBOT PARA CRIAÇÃO DE JOGOS EM DISPOSITIVOS MÓVEIS MOBILE-FURBOT: UMA VERSÃO DO FURBOT PARA CRIAÇÃO DE JOGOS EM DISPOSITIVOS MÓVEIS Daniel Severo Estrázulas Mauro Marcelo Mattos - Orientador Roteiro da Apresentação: Introdução Objetivo Fundamentação teórica

Leia mais

Desenvolvimento para dispositivos móveis JavaME

Desenvolvimento para dispositivos móveis JavaME Desenvolvimento para dispositivos móveis JavaME Marcio Seiji Oyamada Aula 1 UNIOESTE Universidade Estadual do Oeste do Paraná Curso de Informática Cascavel - Brasil Introdução Ementa Conceituação de mobilidade

Leia mais

Estruturas de Sistemas Operacionais

Estruturas de Sistemas Operacionais Estruturas de Sistemas Operacionais Sistemas Operacionais - Tópicos Componentes do Sistema Serviços de Sistemas Operacionais Chamadas ao Sistema Estrutura do Sistema Máquinas Virtuais Chamadas ao Sistema

Leia mais

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação.

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação. CURSO DESENVOLVEDOR FRONT-END HTML5/CSS3/JavaScript Objetivo: Este curso visa introduzir o aluno do mundo do desenvolvimento Web, com aplicabilidade, ensino e capacitação nas principais linguagens de diagramação

Leia mais

HUGO SANTIAGO PERES AUTOMATIZANDO TESTES DE SOFTWARE COM SELENIUM

HUGO SANTIAGO PERES AUTOMATIZANDO TESTES DE SOFTWARE COM SELENIUM HUGO SANTIAGO PERES AUTOMATIZANDO TESTES DE SOFTWARE COM SELENIUM Rio de Janeiro 2015 FICHA CATALOGRÁFICA ii iii Santiago Peres, Hugo. Automatizando Testes com Selenium / Hugo Santiago Peres. Rio de Janeiro,

Leia mais

IF Sudeste MG Notícias IF Sudeste MG News

IF Sudeste MG Notícias IF Sudeste MG News IF Sudeste MG Notícias IF Sudeste MG News Gustavo Ciampi Costa Faulhaber 1, Felipe Barra Knop 2 e Sandro Roberto Fernandes 3 Resumo: O uso de dispositivos móveis está consolidado em nosso cotidiano. A

Leia mais

Desenvolvedor Android: Avançado. Plano de Estudo

Desenvolvedor Android: Avançado. Plano de Estudo Desenvolvedor Android: Avançado Plano de Estudo Descrição do programa A Certificação Android fornece as ferramentas necessárias para projetar e implementar aplicativos para dispositivos Android, com base

Leia mais

Brilliant Solutions for a Safe World

Brilliant Solutions for a Safe World Componente Biométrico - Íris Componentes do lado do servidor (multi-plataforma): Licenças do Matching Server Licenças do MegaMatcher Accelerator Extended (mecanismo de íris) Licenças do MegaMatcher Accelerator

Leia mais

Linguagem de Programação II

Linguagem de Programação II Centro Federal de Educação Tecnológica de Minas Gerais - CEFET-MG Linguagem de Programação II Tiago Alves de Oliveira tiago@div.cefetmg.br Sumário UNIDADE 1 CONCEITOS BÁSICOS E AMBIENTE DE DESENVOLVIMENTO

Leia mais

DESENVOLVENDO APLICAÇÕES MULTIPLATAFORMA PARA DISPOSITIVOS MÓVEIS UTILIZANDO IONIC E PHONEGAP

DESENVOLVENDO APLICAÇÕES MULTIPLATAFORMA PARA DISPOSITIVOS MÓVEIS UTILIZANDO IONIC E PHONEGAP DESENVOLVENDO APLICAÇÕES MULTIPLATAFORMA PARA DISPOSITIVOS MÓVEIS UTILIZANDO IONIC E PHONEGAP Luiz Carlos Do Nascimento Junior 1, Tiago Piperno Bonetti 1 1 Universidade Paranaense (Unipar) Paranavaí PR

Leia mais

WAP. Determinação de Superfícies. Visíveis. José Almir Freire de Moura Júnior.

WAP. Determinação de Superfícies. Visíveis. José Almir Freire de Moura Júnior. WAP Determinação de Superfícies José Almir Freire de Moura Júnior Visíveis {jafmj@cin.ufpe.br} Tópicos Motivação Introdução Histórico Visão geral Modelo WAP Rede WAP Arquitetura WAP WAE WML WSP WTP WTLS

Leia mais

SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA

SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA Julio Cesar do Carmo Junior 1, Osvaldo Cesar Pinheiro de Almeida 2 1 Informática para Gestão, Faculdade de Tecnologia, Botucatu, SP, Brasil. E-mail:

Leia mais

Protocolos de Aplicação WAP

Protocolos de Aplicação WAP Protocolos de Aplicação WAP WAP - Wireless Application Protocol Protocolo para aplicações sem fio; Padrão internacional para aplicações que utilizam comunicações sem fio; Foi desenvolvido para prover serviços

Leia mais

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 01 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL O OBJETIVO DA DISCIPLINA? Objetivo Tornar vocês (alunos) capazes

Leia mais

IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE)

IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE) IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE) Nome: Claudio José Estácio Orientador: Prof. Dr. Paulo Cesar Rodacki Gomes Roteiro de Apresentação 1. Introdução

Leia mais

Domínio Personalizado 1 Não aplicável. Largura de Banda

Domínio Personalizado 1 Não aplicável. Largura de Banda Serviço Cloud SAP Fiori Serviço Cloud SAP Fiori, edição premium Termos e Condições Suplementares Estes termos e condições suplementares ("Suplemento") fazem parte de um contrato de aquisição de certos

Leia mais

RICARDO RODRIGUES BUZZETTE FRONTEND COMERCIAL USANDO J2ME SOBRE PLATAFORMA PALM OS

RICARDO RODRIGUES BUZZETTE FRONTEND COMERCIAL USANDO J2ME SOBRE PLATAFORMA PALM OS RICARDO RODRIGUES BUZZETTE FRONTEND COMERCIAL USANDO J2ME SOBRE PLATAFORMA PALM OS ASSIS 2008 FRONTEND COMERCIAL USANDO J2ME SOBRE PLATAFORMA PALM OS RICARDO RODRIGUES BUZZETTE Trabalho de Conclusão de

Leia mais

Implementação da Especificação de Tempo Real Java para o EPOS

Implementação da Especificação de Tempo Real Java para o EPOS UNIVERSIDADE FEDERAL DE SANTA CATARINA Curso de Ciências da Computação Implementação da Especificação de Tempo Real Java para o EPOS ANDERSON LUIS ZAPELLO Florianópolis, julho de 2005 ANDERSON LUIS ZAPELLO

Leia mais

INTRODUÇÃO A SISTEMAS OPERACIONAIS

INTRODUÇÃO A SISTEMAS OPERACIONAIS INTRODUÇÃO A SISTEMAS OPERACIONAIS Prof. Me. Hélio Esperidião DEFINIÇÃO DE SISTEMA OPERACIONAL. O sistema operacional é uma camada de software colocada sobre o hardware para gerenciar todos os componentes

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Aplicações Móveis Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura

Leia mais

DMS - DOCUMENTO DE MODELAGEM DE SISTEMA VERSÃO: [NOME DO SISTEMA] [SIGLA] [AUTORES]

DMS - DOCUMENTO DE MODELAGEM DE SISTEMA VERSÃO: [NOME DO SISTEMA] [SIGLA] [AUTORES] DMS - DOCUMENTO DE MODELAGEM DE SISTEMA Este documento foi criado seguindo as recomendações e orientações do livro UML na Prática Do Problema ao Sistema e do modelo PRISM do MPDS (Modelo Prático para Desenvolvimento

Leia mais

Linguagem Técnica I. Prof. Jonatas Bastos

Linguagem Técnica I. Prof. Jonatas Bastos Linguagem Técnica I Prof. Jonatas Bastos Email: jonatasfbastos@gmail.com 1 Objetivo da Disciplina p Entender os conceitos da programação orientada a objetos; p Aplicar conceitos básicos relativos a objetos

Leia mais

Porte do Engine de Física ODE para a Plataforma Pocket PC

Porte do Engine de Física ODE para a Plataforma Pocket PC UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA Porte do Engine de Física ODE para a Plataforma Pocket PC Proposta de Trabalho de Graduação Aluno: Daliton da Silva (ds2@cin.ufpe.br) Orientadora:

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

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Tutorial da ferramenta de prototipação Pencil Project (Versão resumida) Prof. Moacyr Franco Neto

Tutorial da ferramenta de prototipação Pencil Project (Versão resumida) Prof. Moacyr Franco Neto Tutorial da ferramenta de prototipação Pencil Project (Versão resumida) Prof. Moacyr Franco Neto Versão 1.0.0 1 ÍNDICE Sumário INTRODUÇÃO... 3 PRINCIPAIS CARACTERÍSTICA DO PENCIL PROJECT... 3 COMO BAIXAR...

Leia mais

UM FRAMEWORK DE CONECTIVIDADE PARA APLICAÇÕES MÓVEIS EM JAVA ME

UM FRAMEWORK DE CONECTIVIDADE PARA APLICAÇÕES MÓVEIS EM JAVA ME Universidade Federal de Pernambuco Graduação em Ciência da Computação Centro de Informática UM FRAMEWORK DE CONECTIVIDADE PARA APLICAÇÕES MÓVEIS EM JAVA ME PROPOSTA DE TRABALHO DE GRADUAÇÃO Aluno: Carlos

Leia mais

TCC - LagarLottery. Desenvolvimento de um software para jogadores de loterias. Aluno: Euclides Pinheiro de Melo

TCC - LagarLottery. Desenvolvimento de um software para jogadores de loterias. Aluno: Euclides Pinheiro de Melo TCC - LagarLottery Desenvolvimento de um software para jogadores de loterias Aluno: Euclides Pinheiro de Melo lagar_lottery@yahoo.com.br Orientador: Dalton Francisco de Andrade dandrade@inf.ufsc.br Universidade

Leia mais

Objetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples.

Objetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples. O que é Java Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/ 1 Objetivos Responder o

Leia mais

MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB

MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB Miguel Gustavo Miiller¹, Tiago Piperno Bonetti 1. 1 Universidade Paranaense (UNIPAR) Paranavaí -Paraná- Brasil 94mgm94@gmail.com, bonetti@unipar.br

Leia mais

Android OLÁ MUNDO MÓVEL. Prof. Dr. Joaquim assunção.

Android OLÁ MUNDO MÓVEL. Prof. Dr. Joaquim assunção. Android OLÁ MUNDO MÓVEL Prof. Dr. Joaquim assunção. Parte 1/3 SDK e Android Studio Java SE Development Kit Download and Install JDK 6 http://www.oracle.com/technetwork/java/javase/downloads/index.html

Leia mais

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

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

6 Arquitetura do Sistema

6 Arquitetura do Sistema 6 Arquitetura do Sistema Nos capítulos anteriores são apresentados diversos aspectos relacionados com a geração das histórias (conteúdo, geração, níveis de interatividade, diversidade), que têm como apoio

Leia mais

PESQUISA E DESENVOLVIMENTO DE UM APLICATIVO PARA DISPOSITIVOS MÓVEIS A INTERAGIR COM O SISTEMA SAGU

PESQUISA E DESENVOLVIMENTO DE UM APLICATIVO PARA DISPOSITIVOS MÓVEIS A INTERAGIR COM O SISTEMA SAGU PESQUISA E DESENVOLVIMENTO DE UM APLICATIVO PARA DISPOSITIVOS MÓVEIS A INTERAGIR COM O SISTEMA SAGU Everton Danilo dos Santos Faculdade de Administração e Informática evertondanilo@gmail.com Rodrigo Augusto

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 Algoritmos e Programação

Leia mais

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB Bruno Costa Silva 1, Ricardo Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil brunocostasilva62@hotmail.com,

Leia mais

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas

Leia mais

Java Standard Edition (JSE)

Java Standard Edition (JSE) Java Standard Edition (JSE) Capítulo 01. Introdução à tecnologia JAVA Esp. Márcio Palheta MSN: marcio.palheta@hotmail.com 1 Agenda Apresentação: Formação, graduação, certificação, área de atuação; Apresentação

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

Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade.

Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade. Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade Disciplina: Informática Básica Professor: Eberton da Silva Marinho e-mail: ebertonsm@gmail.com

Leia mais

FRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID

FRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID FRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID Roteiro Introdução Fundamentação teórica Desenvolvimento Conclusões Introdução Plataformas

Leia mais

Fundamentos de Sistemas Operacionais de Arquitetura Aberta. CST em Redes de Computadores

Fundamentos de Sistemas Operacionais de Arquitetura Aberta. CST em Redes de Computadores Fundamentos de Sistemas Operacionais de Arquitetura Aberta CST em Redes de Computadores Introdução Computadores Computadores são compostos, basicamente, de CPU, memória e dispositivos de entrada e saída

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação DO QUE É COMPOSTO UM SISTEMA COMPUTACIONAL?

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

SISTEMA PARA AUTOMATIZAÇÃO RESIDENCIAL CONTROLADO POR

SISTEMA PARA AUTOMATIZAÇÃO RESIDENCIAL CONTROLADO POR SISTEMA PARA AUTOMATIZAÇÃO RESIDENCIAL CONTROLADO POR COMANDO DE VOZ Ronaldo Rother Prof. Francisco Adell Péricas, Orientador Roteiro da Apresentação 1. Introdução e Objetivos 2. Fundamentação teórica

Leia mais

Introdução a Teste de Software

Introdução a Teste de Software Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software

Leia mais

Ciências da Computação Disciplina:Computação Gráfica

Ciências da Computação Disciplina:Computação Gráfica Ciências da Computação Disciplina:Computação Gráfica Professora Andréia Freitas 2013 7 semestre Aula 06 MEMORIA, F. Design para a Internet. 1ª Edição. Rio de Janeiro: Campus, 2005. ALVES, W. P. Crie, anime

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

Ângelo Lovatto Éderson Ferreira Taiane Ramos

Ângelo Lovatto Éderson Ferreira Taiane Ramos Ângelo Lovatto Éderson Ferreira Taiane Ramos Como a web chegou ao mobile Início da década de 90 Preparada para mobile? Curiosamente, os primeiros websites, aqueles baseados em texto e otimizados para as

Leia mais

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli Técnico em Informática Web JavaScript Profª Ana Paula Mandelli anapaula_mandelli@hotmail.com Para o JavaScript - NetBeans O NetBeans é um ambiente de desenvolvimento integrado (IDE) Java desenvolvido pela

Leia mais

Introdução. PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa

Introdução. PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Introdução PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Resumo Funcionamento da cadeira Intuição sobre programação orientada-a-objectos A linguagem Java: história

Leia mais

KASPERSKY ENDPOINT SECURITY FOR BUSINESS Select Ferramentas para capacitar uma equipe de trabalho móvel, garantir a conformidade com políticas de segurança de TI e bloquear malware. O nível Select da Kaspersky

Leia mais

5 Implementação 5.1 Plataforma 5.2 Arquitetura

5 Implementação 5.1 Plataforma 5.2 Arquitetura 5 Implementação Neste capítulo são apresentados os detalhes sobre a implementação da ferramenta. São discutidas as tecnologias envolvidas, assim como as limitações e problemas encontrados durante o desenvolvimento.

Leia mais

Estudo de integração de tecnologias para o desenvolvimento de aplicações móveis

Estudo de integração de tecnologias para o desenvolvimento de aplicações móveis Trabalho apresentado no 7º Congresso Nacional de Iniciação Científica - CONIC-SEMESP 2007 Estudo de integração de tecnologias para o desenvolvimento de aplicações móveis Autora: Francieli Fernanda Barchese

Leia mais

5 Infraestrutura de TI

5 Infraestrutura de TI Hardware consiste na tecnologia para processamento computacional, armazenamento, entrada e saída de dados. Ex: grandes mainframes, servidores, computadores pessoais, laptops e dispositivos móveis. 1 2

Leia mais

APLICAÇÕES MULTIMÍDIA AULA 1. Estrutura do curso e conceitos fundamentais. professor Luciano Roberto Rocha.

APLICAÇÕES MULTIMÍDIA AULA 1. Estrutura do curso e conceitos fundamentais. professor Luciano Roberto Rocha. APLICAÇÕES MULTIMÍDIA AULA 1 Estrutura do curso e conceitos fundamentais professor Luciano Roberto Rocha www.lrocha.com Sobre o docente Especialista em Desenvolvimento Web (UEM) Mestre em Tecnologia Educacional

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

Arquitectura de Sistemas Paralelos e Distribuídos Modelos de Sistemas

Arquitectura de Sistemas Paralelos e Distribuídos Modelos de Sistemas Modelos de Sistemas MSc. Eugénio Alberto Macumbe Modelos de Sistemas Um modelo de arquitectura de SD está preocupado com a localização das partes e o relacionamento entre elas. Os exemplos incluem os modelos

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

JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R.

JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R. JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R. RESUMO: Com o intuito de promover um meio de entretenimento de forma simples e que não exija um grande conhecimento em jogos

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA 1 UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA JUAN CASSIUS CARNEIRO PEREIRA PEDRO M. NETO GOOGLE CLOUD PONTA GROSSA 2017 2 JUAN CASSIUS

Leia mais

UMA INTERFACE DE GERENCIAMENTO DE REDES DEFINIDAS POR SOFTWARE

UMA INTERFACE DE GERENCIAMENTO DE REDES DEFINIDAS POR SOFTWARE UMA INTERFACE DE GERENCIAMENTO DE REDES DEFINIDAS POR SOFTWARE Fagner Jefferson de Araújo Silva; Whasley Sousa Cardoso; Marcelo Portela Sousa. Instituto Federal de Educação, Ciência e Tecnologia da Paraíba

Leia mais

Tutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto

Tutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto Tutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto Versão 1.0.0 1 ÍNDICE Sumário INTRODUÇÃO... 3 PRINCIPAIS CARACTERÍSTICA DA ASTAH... 3 COMO BAIXAR... 4 PRINCIPAIS FUNCIONALIDADES...

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

PROGRAMAÇÃO PARA SERVIDOR INTRODUÇÃO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO PARA SERVIDOR INTRODUÇÃO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano PROGRAMAÇÃO PARA SERVIDOR EM SISTEMAS WEB INTRODUÇÃO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 5 6 7 Apresentação Plano de ensino e aula Trabalhos, datas e aprovação Bibliografia Programação

Leia mais

VISÃO GERAL. Faça a gestão da segurança de rede até 250 postos através de uma consola baseada na cloud.

VISÃO GERAL. Faça a gestão da segurança de rede até 250 postos através de uma consola baseada na cloud. VISÃO GERAL Faça a gestão da segurança de rede até 250 postos através de uma consola baseada na cloud. Com o ESET Cloud Administrator, pode gerir a segurança da rede da sua empresa sem a necessidade de

Leia mais

MJ3I- PA - AMBIENTE VIRTUAL 3D PARA VISUALIZAÇÃO DE BRAÇOS ARTICULADOS NO IOS

MJ3I- PA - AMBIENTE VIRTUAL 3D PARA VISUALIZAÇÃO DE BRAÇOS ARTICULADOS NO IOS MJ3I- PA - AMBIENTE VIRTUAL 3D PARA VISUALIZAÇÃO DE BRAÇOS ARTICULADOS NO IOS Heitor Augusto Schmitt Prof. Dalton S. dos Reis FURB - Universidade Regional de Blumenau DSC - Departamento de Sistemas e Computação

Leia mais

Introdução ao Desenvolvimento para Dispositivos Móveis

Introdução ao Desenvolvimento para Dispositivos Móveis PARTE II Introdução ao Desenvolvimento para Dispositivos Móveis Victor Adriel de Jesus Oliveira INF - UFRGS Summary PARTE I Introdução a Plataformas Móveis Padrões para o Desenvolvimento de Aplicativos

Leia mais

UNIVERSIDADE FEDERAL DE CAMPINA GRANDE CENTRO DE CIÊNCIAS E TECNOLOGIA COORDENAÇÃO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO PLANO DE CURSO

UNIVERSIDADE FEDERAL DE CAMPINA GRANDE CENTRO DE CIÊNCIAS E TECNOLOGIA COORDENAÇÃO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO PLANO DE CURSO DISCIPLINA : Arcabouços de Software para Desenvolvimento de Aplicações Embarcadas (ASDAE) PERÍODO : 2004.1 PROFESSOR: Herman Martins Gomes PLANO DE CURSO 1 DADOS PRELIMINARES: Pré-requisitos: Programação

Leia mais

Estrutura do Sistema Operacional

Estrutura do Sistema Operacional Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Aula 04 Estrutura do Sistema Operacional 2 1 Estrutura do Sistema Operacional

Leia mais

1) DADOS DA OBRA: Programando em Java 2 Teoria e Aplicações Rui Rossi dos Santos 2004 Axcel Books (

1) DADOS DA OBRA: Programando em Java 2 Teoria e Aplicações Rui Rossi dos Santos 2004 Axcel Books ( 1) DADOS DA OBRA: Título: Programando em Java 2 Teoria e Aplicações Autor: Rui Rossi dos Santos Ano: 2004 Editora: Axcel Books (http://www.axcel.com.br) Páginas: 580 Encadernação: Capa dura 2) DESCRIÇÃO

Leia mais

Professor: Laboratório de Programação com Games. Anselmo Montenegro Conteúdo: - Introdução. Instituto de Computação - UFF

Professor: Laboratório de Programação com Games. Anselmo Montenegro  Conteúdo: - Introdução. Instituto de Computação - UFF Laboratório de Programação com Games Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Introdução 1 Objetivo do curso Desenvolver habilidades de programação através da construção de vídeo

Leia mais

Paralelo Técnico Windows x Linux

Paralelo Técnico Windows x Linux FACULDADE DE TECNOLOGIA SENAC GOIÁS Gestão de Tecnologia da Informação Victor Hugo de Paula Costa Paralelo Técnico Windows x Linux Lucília Gomes Ribeiro GOIÂNIA, 2015 Victor Hugo de Paula Costa Paralelo

Leia mais

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos. AULA 02 OBJETIVO: Características da Linguagem Orientada a Objetos. HABILIDADES TRABALHADAS: Comparação das características das linguagens orientadas a objetos frente às linguagens estruturadas. Conhecimentos

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Aula 1 Vidal. Ronnison Reges 1 1 Análise e Desenvolvimento de Sistemas - Parangaba Centro Universitário Estácio do Ceará 2018 Vidal. Ronnison Reges (Centro Universitário

Leia mais

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Linguagens de Programação Material

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -CONTEXTO DE NEGÓCIO. Prof. Angelo Augusto Frozza, M.Sc.

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -CONTEXTO DE NEGÓCIO. Prof. Angelo Augusto Frozza, M.Sc. PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -CONTEXTO DE NEGÓCIO Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Quem está se tornando móvel? O que as pessoas querem fazer? Por que tornar

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Professor Ariel da Silva Dias Apresentação Android e IDEs Por que estudar programação para dispositivos móveis? Linha histórica da indústria durante os séculos Feudalismo

Leia mais