16 de Setembro, 20081 Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto

Slides:



Advertisements
Apresentações semelhantes
Sistemas Cliente/Servidor Introdução
Advertisements

UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Programação para dispositivos móveis
Programação para dispositivos móveis 2º Semestre 2009 > PUCPR > Design Digital Bruno C. de Paula.
Programação para dispositivos móveis 2º Semestre 2009 > PUCPR > Design Digital Bruno C. de Paula.
Sistema para Gerenciamento de Redes Baseado em Agentes Móveis
Device Drivers no Windows e Linux Visão Geral e Boas Práticas
Marcelo Tocchetto Tiago Duarte Professor Eduardo Augusto Bezerra
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
WebWork e JSP Keven andrade
Tecnologias para Internet
Desenvolvimento para Dispositivos Móveis
Linguagem de Programação JAVA
em aplicações corporativas
Marcelo Korjenioski. Venda crescente de dispositivos com sistema operacional Android em 2011 favorecem o desenvolvimento para a plataforma. Jogos casuais.
Rodrigo Cristiano Silva
Aula prática 13 Orientação a Objetos – C++ Parte 1
JAVA Linguagem Ambiente de Desenvolvimento
Web Services Uninorte Semana de Tecnologia da Informação
J2ME Mini Curso.
Paradigmas da Programação – Semestre 2 – Aula 2 Introdução ao VS.Net Professores: Fábio de Paula Santos Eduardo Mantovani.
Aula 1 Introdução à Java ME
DVB - Definição O Digital Video Broadcasting Project (DVB) é um consórcio entre 250 e 300 integrantes de 35 países dedicados a desenvolver padrões globais.
Jornada de Cursos – J2ME Aula 2 – Configuração.
Programa Expresso de Capacitação Módulo J2ME Aula 1 – Overview e Conceitos básicos.
Conceitos de J2EE para a WEB
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
Professor: Márcio Amador
Luiz Antonio Torres, Maio/2014
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
Paradigmas da Programação – Semestre 1 – Aula 9 Professor: Eduardo Mantovani )
Tecgraf PUC-Rio Setembro de 2013 Introdução ao Openbus.
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
Introdução a JEE Marco A. S. Reis Arquiteto de Software Abril/2011.
Plataforma Java 2 - Micro Edition (J2ME) Prof. Afonso Ferreira Miguel, MSc.
Introdução JAVA Faculdade Mauricio de Nassau
Linguagem de programação. Histórico  Concebida em 1993 por Yukihiro Matsumoto  Primeiro livro em inglês saiu em setembro de 2000  Ruby on Rails é lançado.
Integração de Ferramentas CASE
Alexandre F. Zimmermann
Arquitetura de Sistemas Embarcados
Aguilar Figueira Dias Orientador Prof. Dr. João Bosco da Mota Alves
2 Integrantes André Schäffer Breno Neil (Gerente) Caio Lira Eduardo Cavalcanti Felipe Bartolomeu Felipe Maia Filipe Luiz Monteiro Hugo Calazans João Victor.
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas.
SISTEMAS OPERACIONAIS MACH EPOS
1 Análise do Sistema Labyrinth MESS – Mobile Entertainment and Software Solutions.
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
Mini Curso.
Supermercado Inteligente
1/18 Java ME, MIDP 2.0 e SATSA: Segurança para MIDs Alexandre Ilha Márcia Cristina Cera Trabalho Leve 1 - Abril/2006.
Computação Móvel e Embarcada ANDRÉ GUSTAVO DEGAF UCHÔA DISCIPLINA: ENG. DE SOFTWARE PROF: ALCIDES CALSAVARA & EDSON SCALABRIN.
Computação Móvel J2ME. Java 2 Platform (1) Java 2 Standard Edition (J2SE) – Desktop applications Java 2 Enterprise Edition (J2EE) – Server applications.
Plataforma Java 2 Micro Edition (J2ME)
Prof. Dr. Luiz Antônio M. Pereira
18 de setembro, Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto
GOTO. Project treinamento expresso j2me Luiz Carlos d´Oleron lcadb at cin.ufpe.br.
Wi-Fi Information Service Ademir José de Carvalho Junior Felipe Cavalcanti Ferreira.
Escola de Engenharia de Piracicaba Administração Sistema de Comunicação de Dados Aula 1 – Introdução Alberto Martins Júnior Flávio I. Callegari.
Tecgraf PUC-Rio maio de 2011 Introdução ao Openbus.
Seminários.reply Introdução a JavaME Guilherme Carvalho.
Status Report I Penalty Cup Renato Marcelino Thiago Arruda.
Acessando banco de dados com JAVA.  Linguagem independente de plataforma; ◦ “Write once, run anywhere” ◦ JVM  Java Virtual Machine  Mecanismo que permite.
Implementação Orientada a Objetos – Aula 09 Pacotes Prof. Danielle Martin Universidade de Mogi das Cruzes
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Introdução à plataforma Java. 2 A tecnologia Java Java: linguagem de programação e plataforma de desenvolvimento Criada pela Sun Microsystems Apoiada.
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

16 de Setembro, Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto Geber Ramalho Desenvolvendo Jogos em J2ME para celulares Aula 1 Introdução à J2ME

16 de Setembro, Sobre quem vos fala... n Meantime Mobile Creations – Fundada em 2003, uma das principais desenvolvedora, publisher e distribuidora de jogos mobile da América Latina n Um dos pioneiros mundiais na tecnologia J2ME n Várias tecnologias wireless: J2ME, BREW, WAP, SMS e MMS n Parceria com diversos fabricantes, publishers e operadoras n Produzimos mais de 60 jogos para celulares n Atua como publisher no Brasil, com parceria com todas as operadoras

16 de Setembro, Agenda n Principais tecnologias n Introdução a J2ME n Wireless Game Design n Criando nosso Jogo n Sugestão de Melhorias n Dicas de performance / redução de código

16 de Setembro, Principais Tecnologias n SMS/MMS – Jogos baseados na troca de mensagens (forca, quiz, penalty, leilões, etc.) n Brew (Binary Runtime Environment for Windows) – Ambiente de execução para chipset Qualcomm – C++ e API definida pela Qualcomm (animações, som, recursos de rede, etc...) – Principal mercado: EUA n Flash Lite – Versão mais simples do Adobe Flash Player – Plataforma crescente n J2ME – Java otimizado para dispositivos com limitações – Adotado por todos os maiores players do mercado – API’s especificadas pela comunidade JCP – Padrão do mercado

16 de Setembro, Telefones Java (>650 dispositivos) 20 dispositivos por página

16 de Setembro, Introdução a plataforma J2ME SERVIDOR DESKTOP SMART- CARDS CELULARES

16 de Setembro, Arquitetura J2ME Device Hardware Host Operating System Configuration: Profiles Libraries KVM

16 de Setembro, Universo J2ME Hoje… n Java Community Process (JCP) n Java Specification Request (JSR)

16 de Setembro, Configurações n Uma especificação que define o ambiente de software para uma família de dispositivos, geralmente: – Os tipos e quantidade de memória disponível – Tipos de processadores e velocidade – Tipo de conexão de rede n Inclui um conjunto básico de classes Java n É especificada pela JCP n Connected Device Configuration (CDC) – High end consumer devices n Connected, Limited Device Configuration (CLDC) – Low end consumer devices

16 de Setembro, CLDC 1.0 n CLDC - Connected Limited, Device Configuration – Dispositivos limitados com poucos recursos – Processador de, no mínimo 8 Mhz – A partir de 160 K de memória heap reservada pra Java – Acesso a rede com pouca largura de banda n Target Devices – Celulares – Two Way Pagers – Personal Organizers – etc.,

16 de Setembro, Escopo do CLDC n Define: – Linguagem Java e características da VM – I/O – Networking framework – Segurança – Internacionalização n Não define: – Gerenciamento do ciclo de vida da aplicação (instalação, execução, deleção) – Interface com o usuário – Tratamento de eventos – Interação entre usuário e aplicação (comandos, etc…)

16 de Setembro, Limitação do CLDC n CLDC 1.0 possui algumas limitações: – Ausência de ponto flutuante – Ausência de Weak References – Ausência de Finalização  Não existe o método finalize() no CLDC – Não possui suporte a JNI. – Não possui a API de Reflection. – Ausência de daemon-threads e thread groups. – Limitação no suporte a Internacionalização  Permite a conversão de byte stream para Unicode e vice-versa – Limitação no tratamento de Erros  Apenas duas classes: java.lang.VirtualMachineError, java.lang.OutOfMemoryError

16 de Setembro, Limitação do CLDC n CLDC 1.1 adiciona alguns recursos ao CLDC 1.0: – Adição de ponto flutuante – Adição de Weak Reference – Adição de suporte a nomes de Threads – Memória mínima de 162 para 192 kbytes

16 de Setembro, Pacotes do CLDC n Herdados do J2SE – java.lang – java.io – java.util n Específicos do CLDC – javax.microedition.io

16 de Setembro, Profiles n Um profile ou “perfil” é uma coleção de API´s em Java que complementa uma configuração a fim de prover habilidades para uma família de dispositivos n É especificada pela JCP n O principal objetivo é garantir a interoperabilidade entre uma família de dispositivos. n MIDP (Mobile Information Device Profile): Principal e presente na maioria absoluta dos dispositivos – MIDP 1.0 – MIDP 2.0 – MIDP 3.0 (em breve)

16 de Setembro, MIDP n Mobile Information Device Profile (MIDP). n MIDP define: – Interface com o Usuário – Persistência (usando um modelo simples orientado a registros) – Networking (estende o Generic Connection framework do CLDC) – Ciclo de vida da Aplicação – Tratamento de eventos n Requisitos de Hardware (MIDP 1.0) – memória: KB sobre CLDC. – tela mínima: 96 x 54 – 2 colors. – entrada: teclado, touch screen,... – connectividade: HTTP 1.1

16 de Setembro, Pacotes do MIDP 1.0 n MIDP Packages: – javax.microedition.midlet  javax.microedition.midlet.MIDlet – javax.microedition.lcdui – javax.microedition.rms  javax.microedition.rms.RecordStore

16 de Setembro, Pacotes adicionais do MIDP 2.0 n MIDP 2.0 Packages: – javax.microedition.media  javax.microedition.media.Player  javax.microedition.media.Control – javax.microedition.media.control  javax.microedition.media.control.VolumeControl – javax.microedition.lcdui.game – javax.microedition.io  javax.microedition.io.PushRegistry Layer TiledLayerSprite LayerManager GameCanvas * game Canvas lcdui Displayable

16 de Setembro, O que é um MIDlet n É uma aplicação MIDP: – Possui uma classe Java que estende da classe MIDlet e implementa os seguintes métodos:  startApp()  pauseApp()  destroyApp() – Possui um modelo de ciclo de vida similar aos Applets.

16 de Setembro, O que é um MIDlet (cont.) n Gerenciado pelo “Java Application Manager” (JAM) – Uma aplicação que deve vir acompanhando a implementação do MIDP e que controla a instalação, execução e remoção dos MIDlets – Provê o ambiente de execução dos MIDlets – Trata todos os erros ocorridos durante a instalação e execução dos aplicativos sem “derrubar” o dispositivo

16 de Setembro, Ciclo de vida dos MIDlets

16 de Setembro, MIDlet Suites e Descritores (JAD) n Uma MIDlet Suite é um conjunto de arquivos empacotados em um arquivo JAR – Uma suite deve possuir pelo menos um MIDlet – JAR contém: Arquivos.class, arquivos de imagem (.png), manifest, … – MIDLets numa mesma suite podem compartilhar classes e recursos contidos no JAR n JAD (Java Application Descriptor) – Pequeno arquivo texto que descreve uma Suite – Usado pela JAM para fazer verificações antes de baixar a Suite – Pode ser usado para guardar propriedades da aplicação MIDlet-1: AloMundo,, org.cesar.j2me.AloMIDlet MIDlet-Name: Alô Mundo! MIDlet-Vendor: C.E.S.A.R MIDlet-Version: 1.0 MIDlet-Jar-Size: 7808 MIDlet-Jar-URL: HelloExamples.jar

16 de Setembro, Passos para o desenvolvimento

16 de Setembro, Ambiente de Desenvolvimento n Editor texto + Sun Wireless Toolkit (WTK) (free) – n NetBeans Mobility + WTK (free) – n Eclipse + EclipseME + WTK (free) – – n SDK´s dos fabricantes (Nokia, Motorola, SonyEricsson, Siemens,…) – – –

16 de Setembro, Nosso ambiente…

16 de Setembro, Exercício 1 - Criar o famigerado “Alô mundo!” - Conceitos de Display - Criação e exibição de um High-Level Displayable - Conceitos de adição e tratamento de Comandos

16 de Setembro, Dica: Esteja com a API ao alcance... n