UNIÃO EDUCACIONAL DE CASCAVEL - UNIVEL
FACULDADE DE CIÊNCIAS SOCIAIS APLICADAS DE CASCAVEL
CURSO TECNOLOGIA EM ANÁLISE E D...
WILLIAN GONÇALVES CARVALHO

Jogos para iOS e Android com Lua e Corona SDK

Monografia apresentada ao Curso de
Graduação em...
WILLIAN GONÇALVES CARVALHO

Jogos para iOS e Android com Lua e Corona SDK

Esta monografia foi julgada e aprovada para a
o...
DEDICATÓRIA

Dedico esse trabalho ao meu pai, há todos os dias que orou por mim, aos
dias que me educou, mesmo às vezes pr...
AGRADECIMENTOS

Agradeço a Deus pela oportunidade de estar nessa instituição de ter
conhecido aqui pessoas que se tornaram...
“Você pode encarar um erro como uma besteira a ser esquecida, ou como um
resultado que aponta uma nova direção.”
- Steve J...
RESUMO

CARVALHO, Willian Gonçalves, Tecnologia em analise e Desenvolvimento de
Sistemas 2013, Cascavel (Graduação do Curs...
ABSTRACT

CARVALHO, Willian Gonçalves, Technology analysis and systems development
2013, Cascavel (Undergraduate Course Te...
SUMÁRIO
1 INTRODUÇÃO ........................................................................................................
9

1 INTRODUÇÃO

Com o avanço tecnológico o mercado tem apresentado cada vez mais
aparelhos que facilitam as tarefas diári...
10

tablets e incentivar o uso das ferramentas para iniciantes nesta área.

1.1 Objetivos

1.1.1 Objetivo geral

Desenvolv...
11

2 LUA E CORONA SDK

Neste capitulo será apresentado as características das duas ferramentas
utilizadas nesse trabalho,...
12



Portátil: Capaz de rodar em todos os Sistemas Operacionais;



Embutível: Lua é rápida e pequena podendo facilment...
13

2.1.2 Aonde esta sendo utilizada

A linguagem ganhou boa reputação entre os desenvolvedores de todo o
mundo, passando ...
14

Figura 1 – Lista de Linguagens mais utilizadas em Maio de 2013.

Fonte: (TIOBE, 2013)

2.2 Corona SDK

O Corona SDK pe...
15

Fire(ANDOLFATO, 2012) e Nook Color(NOOK STORE TERMS, 2013)). (DAVILA,
2012)e roda sobre Windows e Mac. Muito bom para ...
16

No Windows


Windows XP ou posteriores;



Processador de 1 GHz;



76 MB de espaço em disco;



1 GB de RAM;



...
17

2.2.4 Uso do Corona SDK e Lua

A utilização das duas ferramentas deu origem a diversos jogos para dispositivos
móveis,...
18

3 SISTEMA

Nesta seção apresenta-se analise, modelagem e implementação do
aplicativo. Para analise e projetos foram ne...
19

F5 – Reiniciar
Fonte: Elaborado pelo autor

3.2.2 Requisitos Não Funcionais

Na sequencia estão as tabelas com a descr...
20

Nome
NF4.1
Seleciona
menu
NF4.2
Ver
marcação
anterior
NF4.3
marcação

Restrição
O usuário escolher are limpa no menu

...
21

utilizada. Tento em vista que esta aplicação esta voltada a dispositivos com Sistema
Operacional Android (Android, 201...
22

Tabela 7 – Caso de Uso F1

Caso de Uso – F1 – Cavar
Atores

Jogador

Interessados

Jogador

Pré – condições

Ter inici...
23

Variantes

2.1 o jogo já acabou
4.1 há uma marcação na área clicada

Tratamento de Exceções

2.1 1 não se altera dados...
24

Interessados

Jogador

Pré – condições

Ter iniciado o sistema
Opção de Cavar ativada no menu

Pós – condições

Fim do...
25

Figura 3 – Diagrama de Sequencia F1.

Fonte: Elaborado pelo autor
Figura 4 – Diagrama de Sequencia F2.

Fonte: Elabora...
26

Figura 5 – Diagrama de Sequencia F3.

Fonte: Elaborado pelo autor
27

Figura 6 – Diagrama de Sequencia F4.

Fonte: Elaborado pelo autor

Figura 7 – Diagrama de Sequencia F5.

Fonte: Elabor...
28

3.5 Implementação

Nesse tópico será apresentado os pontos principais do código fonte dessa
aplicação e tela criadas p...
29

com tamanhos de 30 x 30 pixels e a área 2 será inserido 4 botões com
funcionalidades diferentes e tamanhos 60 x 60 pix...
30

Figura 10: Construindo área de bombas

Fonte: Elaborado pelo autor

Os botões da área 1 realização todos as mesmas ati...
31

Figura 11: função de evento clique nos botões

Fonte: Elaborado pelo autor

Para descobrir o botão que foi clicado os ...
32

Figura 12: Funções para determinar X e Y dos botões

Fonte: Elaborado pelo autor

Os botões foram criados a partir da ...
33

3.5.3 Arquivos de áudio

As bibliotecas do Corona SDK também possibilitam a inserção de arquivos de
áudio nas aplicaçõ...
34

Funções de áudio utilizadas( CORONA LABS, 2013):


audio.play(variável) – toca arquivo de áudio.



audio.play(variá...
35

O ultima botão do menu tem a função de reiniciar o jogo a qualquer
momento, essa opção não necessita que o jogo já ten...
36

Figura 17 – Funções de alteração de imagem

Fonte: Elaborado pelo autor

3.5.6 Fim do Jogo

O jogo é finalizado em ape...
37

Figura 18 – fim do jogo

Fonte: Elaborado pelo autor

Alguns dos recursos acima citados foram os principais utilizados...
38

4 CONSIDERAÇÕES FINAIS

Apesar da linguagem Lua código aberto o framework Corona SDK apresenta
varias limitações para ...
39

REFERÊNCIAS BIBLIOGRÁFICAS

ANDROID, ANDROID, disponível em: < http://www.android.com/> Acesso em: 19
out 2013.
ADOBE ...
40

CORONA LABS, Desenvolver Cross Platform Mobile Apps e Games. –
Disponível em: < http://www.coronalabs.com/products/cor...
41

15 mai. 2013.
MANZANO, José Augusto Navarro Garcia. Lua - Programação de Computadores:
Primer for Beginners - Press Re...
42

SCITE, Scintilla and SciTE. Disponível em: <http://www.scintilla.org/SciTE.html>
Acesso em 19 out 13.
SMALLTALK.ORG, S...
Upcoming SlideShare
Loading in …5
×

TFC - Willian Gonçalves Carvalho

553 views

Published on

link para download do código fonte do jogo: http://www.4shared.com/rar/sz-CSqJm/Campo_Minado.html

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
553
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

TFC - Willian Gonçalves Carvalho

  1. 1. UNIÃO EDUCACIONAL DE CASCAVEL - UNIVEL FACULDADE DE CIÊNCIAS SOCIAIS APLICADAS DE CASCAVEL CURSO TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS WILLIAN GONÇALVES CARVALHO JOGOS PARA IOS E ANDROID COM LUA E CORONA SDK Cascavel 2013
  2. 2. WILLIAN GONÇALVES CARVALHO Jogos para iOS e Android com Lua e Corona SDK Monografia apresentada ao Curso de Graduação em Tecnologia em Análise e Desenvolvimento de Sistemas da Faculdade de Ciências Sociais Aplicadas de Cascavel para obtenção do Grau Tecnólogo. Orientador: Elder Schemberger, Me. Cascavel 2013
  3. 3. WILLIAN GONÇALVES CARVALHO Jogos para iOS e Android com Lua e Corona SDK Esta monografia foi julgada e aprovada para a obtenção do grau de Tecnólogo em Análise e Desenvolvimento de Sistemas do Curso de Graduação em Análise e Desenvolvimento de Sistemas da Faculdade de Ciências Sociais Aplicadas de Cascavel - UNIVEL Cascavel, 09 de novembro de 2013. COMISSÃO EXAMINADORA __________________________ Prof. Elder Schemberger Univel (Orientador) __________________________ Prof. Roberta Vanessa R. Parcianello Univel __________________________ Prof. Robson Adão Fagundes Univel
  4. 4. DEDICATÓRIA Dedico esse trabalho ao meu pai, há todos os dias que orou por mim, aos dias que me educou, mesmo às vezes precisasse de mais que apenas palavras, mas acredito que não seria e não estaria a onde estou se não fosse por esses momentos, os quais seu único objetivo era me ajuda a não ser mais um, mas ser alguém que pudesse fazer algo a mais pelo outros. Dedico essa conclusão de curso a o homem que comprou uma coleção e livros quando tinha apenas 7 anos, que me trazia filmes de VHS do trabalho, me ensinou a andar de bicicleta e trouxe os bonecos de mini – craque que nenhum outro amigo meu, na época, tinha igual. Obrigado pela honra de ser teu filho.
  5. 5. AGRADECIMENTOS Agradeço a Deus pela oportunidade de estar nessa instituição de ter conhecido aqui pessoas que se tornaram mais de colegas, grandes amigos que me ajudaram não apenas na conclusão de trabalho, mas nas soluções de problemas pessoas. Obrigado a cada professor e amigo que consegui nesse espaço de ensino.
  6. 6. “Você pode encarar um erro como uma besteira a ser esquecida, ou como um resultado que aponta uma nova direção.” - Steve Jobs
  7. 7. RESUMO CARVALHO, Willian Gonçalves, Tecnologia em analise e Desenvolvimento de Sistemas 2013, Cascavel (Graduação do Curso de Tecnologia em Analise e Desenvolvimento de Sistemas) Faculdade de Ciências Sociais Aplicadas de Cascavel – Univel Orientação de Elder Schemberger. A cada novo passo que a tecnologia dá novas formas de se criar e novas plataformas de sistemas são gerados para que um publico ainda maior seja atendido mesmo que de forma diferenciada, mas como objetivo de principal de fornecer os resultados que o cliente final espera. A linguagem de programação Lua foi um desses recursos criados especialmente voltado para atender a necessidades de um determinado grupo, com o passar dos anos outros grupos de programação vendo o potencial dessa linguagem começam a utilização dela principalmente na parte de jogos. O Corona SDK é uma das ferramentas que utiliza Lua para a criação de aplicativos para iOS e Android, plataformas distintas que tem ganhado um grande percentual do mercado de dispositivos moveis, o mesmo código fontes rodando em aparelhos diferentes, um grande potencial de mercado usando a mesma ferramenta. Palavras Chaves: Lua, Corona, iOS, Android, jogos, plataformas, smartphones.
  8. 8. ABSTRACT CARVALHO, Willian Gonçalves, Technology analysis and systems development 2013, Cascavel (Undergraduate Course Technology Analysis and Systems Development) Faculty of Applied Social Sciences of Cascavel – Univel Orientation Elder Schemberger. With every step that technology provides new ways to create new platforms and systems are generated for an even larger audience is met even if differently, but the main aim to provide the results to the end user expects. The Lua programming language was one such resource created specifically geared to meet the needs of a particular group, over the years other groups seeing the potential of this programming language begin to use it mostly on the games. The Corona SDK is one of the tools that uses Lua for creating applications for iOS and Android platforms other that has gained a large percentage of the market of mobile devices, the same source code running on different devices, a large market potential using the the same tool. Key Words: Lua, Corona, iOS, Android, games, platforms, smartphones.
  9. 9. SUMÁRIO 1 INTRODUÇÃO ......................................................................................................... 9 1.1 Objetivos ............................................................................................................ 10 1.1.1 Objetivo Geral .................................................................................................. 10 1.1.2 Objetivos Específicos ....................................................................................... 10 1.2 Delimitação Do Estudo ..................................................................................... 10 1.3 Estrutura Do Trabalho....................................................................................... 10 2 LUA E CORONA SDK ............................................................................................ 11 2.1 Linguagem Lua .................................................................................................. 11 2.1.1 Características ................................................................................................. 11 2.1.2 Aonde Esta Sendo Utilizada ............................................................................. 13 2.2 Corona Sdk ........................................................................................................ 14 2.2.1 Requisitos Mínimos .......................................................................................... 15 2.2.2 Vantagens ........................................................................................................ 16 2.2.3 Desvantagens .................................................................................................. 16 2.2.4 Uso Do Corona Sdk E Lua ............................................................................... 17 3 ANALISE DO SISTEMA ......................................................................................... 18 3.1 Sumário Executivo Do Sistema........................................................................ 18 3.2 Modelagem......................................................................................................... 18 3.2.1 Requisitos Funcionais ...................................................................................... 18 3.2.2 Requisitos Não Funcionais ............................................................................... 19 3.2.3. Requisitos De Hardware E Software. .............................................................. 20 3.3 Casos De Uso .................................................................................................... 21 3.4 Diagramas De Sequencia.................................................................................. 24 3.5 Implementação .................................................................................................. 28 3.5.1 Visão Geral....................................................................................................... 28 3.5.2 Tela E Botões ................................................................................................... 28 3.5.3 Arquivos De Áudio ............................................................................................ 33 3.5.4 Menu ................................................................................................................ 34 3.5.5 Trocando Imagens ........................................................................................... 35 3.5.6 Fim Do Jogo ..................................................................................................... 36 4 CONSIDERAÇÕES FINAIS ................................................................................... 38 4.1 Sugestões Para Trabalhos Futuros ..................................................................... 38 REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................... 39
  10. 10. 9 1 INTRODUÇÃO Com o avanço tecnológico o mercado tem apresentado cada vez mais aparelhos que facilitam as tarefas diárias de seus usuários. Com seus recursos em armazenar e processar grandes quantidades de dados em aparelhos cada vez menores, os dispositivos móveis (celular, smartphone, tablet, console portátil, etc.) estão a cada geração mais presente e colaboram cada vez mais para a conclusão das atividades cotidianas em qualquer lugar (trabalho, escola, casa, eventos, comércios). Apesar de suas características distintas e de atender de forma particular a cada público, as empresas de fabricam e comercializam esses produtos, necessitam de uma constante melhoria em suas ferramentas nas diversas áreas as quais estão inseridas. Deste modo, três peças são fundamentais nesse desenvolvimento: hardware, software e peopleware, e estão participando de todo esse crescimento tecnológico seja de forma direta ou indireta. Desenvolver uma aplicação de qualidade requer que os recursos disponíveis ao desenvolvedor sejam compatíveis uns com os outros dando mais estabilidade e confiabilidade no seu trabalho. Este trabalho aborda duas ferramentas que, utilizadas de formas simultâneas, fornecem a possibilidade de uma maneira alternativa de criação de aplicações para dispositivos móveis. As ferramentas são: Linguagem de programação Lua e o framework Corona SDK. A linguagem de programação para computadores Lua surge no ano de 1993 pelas mãos de pesquisadores: Waldemar Celes, Roberto lerusalimshy e Luiz Henrique de Figueiredo, Grupo de Tecnologia em Computação Gráfica a partir de uma necessidade interna do Departamento de Informática em desenvolver e atender a parceria com a empresa PETROBRAS(2013) – Petróleo Brasileiro S/A.(MANZANO, 2012). Corona SDK é um kit de desenvolvimento para sistemas móveis multi- plataforma. Com ele é possível criar jogos e aplicativos para smartphones ou tablets que rodem os sistemas Android(2013) do Google ou iOS(2013) da Apple. (BASILIO, 2012) Nessa linha, esse trabalho pretende demonstrar uma maneira para novos desenvolvedores entrarem no mercado de aplicativos e jogos para smartphones e
  11. 11. 10 tablets e incentivar o uso das ferramentas para iniciantes nesta área. 1.1 Objetivos 1.1.1 Objetivo geral Desenvolver uma aplicação com os recursos disponíveis na linguagem Lua e no framework Corona SDK, apresentando as características relevantes dessas ferramentas de desenvolvimento. 1.1.2 Objetivos específicos a) Descrever as particularidades das duas ferramentas; b) Desenvolver um aplicativo para dispositivo móvel utilizando Lua e Corona SDK; c) Analisar as vantagens e desvantagens da utilização das ferramentas. 1.2 Delimitação do Estudo Apesar da possibilidade do Corona SDK em realizar a criação de aplicativos para multi - plataformas, dada a limitação de recursos não será feita a comparação com as aplicações rodando em alguns S.O. específicos. 1.3 Estrutura do Trabalho No capítulo 2, apresentar as duas tecnologias seus pontos fortes e fracos e suas principais características. No capítulo 3, implementação da aplicação desenvolvida. No capítulo 4, descrição do custo para utilização da tecnologia e considerações finais.
  12. 12. 11 2 LUA E CORONA SDK Neste capitulo será apresentado as características das duas ferramentas utilizadas nesse trabalho, primeiramente falando um pouco da Linguagem Lua: historia da linguagem, características, citação de alguns sistemas que já utilizam a linguagem, após apresentação do framework Corona SDK: historia e requisitos necessários, vantagens e desvantagens da sua utilização. 2.1 Linguagem Lua A linguagem de programação para computadores Lua surgiu no ano de 1993, criado pelo Grupo de Tecnologia em Computação Gráfica composta pelos pesquisadores: Waldemar Celes, Roberto Ierusalimschy e Luiz Henrique de Figueiredo, visando atender uma necessidade interna do Departamento de Informática em desenvolver e atender a parceria com a empresa PETROBRAS – Petróleo Brasileiro S/A.(MANZANO, 2012). Lua é uma linguagem de script dinâmica, semelhante a outras linguagens de script como Python(2013), Ruby(2013) e PHP(2013). Destaca-se pela sua simplicidade, portabilidade, rapidez e pela facilidade com que podemos embutir um interpretador Lua em uma aplicação C(HARA e ZOLA, 2013). Além disso, Lua é a única linguagem criada em um país em desenvolvimento a ganhar relevância global. (PROJETO KEPLER, 2008). Essa relevância global fez com que Lua já seja utilizada em países como EUA, Japão, Dinamarca e Alemanha na criação de scripts, aplicação de games, controle de robôs e testes de equipamentos. Quando o domínio é a Web, Lua tem sido utilizada para a intercomunicação de bases de dados em sites dinâmicos. O código da linguagem é modular, podendo cada módulo ser eliminado no caso de a aplicação não precisar dele, o que a aplicação mais leve de se carrega. (REINERT, 2011). 2.1.1 Características Segundo Reinert (2011), algumas das características que Lua possui são:  Rápida: Mais rápidas entre as linguagens scripts interpretadas;
  13. 13. 12  Portátil: Capaz de rodar em todos os Sistemas Operacionais;  Embutível: Lua é rápida e pequena podendo facilmente ser embutida nas mais diversas aplicações. Lua é usada para estender programas escritos não só em C(HARA e ZOLA, 2013). e C++(SANTOS, 2004), mas também em Java(2013), C#(2013), Smalltalk(2013), Fortran(2013), Ada(GONCZOROSKI, BORBA E ACOSTA, 2012 ), Erlang(2013) e mesmo outras linguagens script;  Poderosa e Simples: embora Lua não seja uma linguagem puramente orientada a objetos, ela fornece meta-mecanismos de Lua trazem uma economia de conceitos e mantêm a linguagem pequena, ao mesmo tempo, permite que a semântica seja estendida de maneiras não convencionais;  Pequena: Incluir Lua numa aplicação não aumenta quase nada o seu tamanho. O pacote de Lua 5.1.4, contendo o código fonte, documentação e exemplos, ocupa 860K descompactado;  Livre: Lua é software livre de código aberto, distribuída sobre a licença MIT. Pode ser usada para quaisquer fins sem burocracia;  Importância Global: O projeto e “a evolução de Lua” foram apresentados em julho de 2007 na HOPL III, a 3ª Conferência da ACM sobre a História das Linguagens de Programação. Essa conferência ocorre a cada 15 anos, e somente poucas linguagens são apresentadas a cada vez. A escolha de Lua para a HOLP III é um importante reconhecimento do impacto mundial. Lua é a única linguagem de programação de impacto desenvolvida fora do primeiro mundo, estando atualmente entre as 20 mais populares, conforme mostra na Figura 1 aonde esta listadas as linguagem mais utilizadas no período do mês de maio de 2013, entre essa linguagem estão C(HARA e ZOLA, 2013), Java(2013), C++(SANTOS, 2004), Ruby(2013), JavaScript(2013). A figura também apresenta qual era a posição destas mesmas linguagens no mês de maio do ano de 2012 fazendo assim a comparação de avanços ou regressão em relação a utilização por usuários.
  14. 14. 13 2.1.2 Aonde esta sendo utilizada A linguagem ganhou boa reputação entre os desenvolvedores de todo o mundo, passando a ser utilizada em vários jogos e aplicações como por exemplo (CRUZ, 2011):  Set-up boxes de TV digital (MINISTÉRIO DA COMUNICAÇÃO, 2006);  Adobe Photoshop Lightroom( ADOBE SYSTEMS INCORPORATED,2013);  Wireshark(2013);  World of Warcraft(BLIZZARD ENTERTAINMENT, 2013);  GTA IV(ROCKSTAR GAMES, 2008);  Crysis(ELETRONIC ARTS INC, 2013);  Street Fighter 4(CAPCOM ENTERTAINMENT, 2013);  Sim City(ELETRONIC ARTS INC, 2013);  Civilization V(TAKE-TWO INTERACTIVE SOFTWARE, 2010). O Problema é que a competição tecnológica entre as empresas que desenvolvem os games é muito grande. Pelo nosso acordo de licença, basta ás empresas citarem que utilizam a linguagem, mas não efetivamente onde estão (sic) usando (IERUSALIMSHY, segundo, Cruz, 2011)
  15. 15. 14 Figura 1 – Lista de Linguagens mais utilizadas em Maio de 2013. Fonte: (TIOBE, 2013) 2.2 Corona SDK O Corona SDK pertence a Ansca Mobile e foi fundada em 2008 por um time e programadores que antes trabalharam e contribuíram para softwares como Ilustator(ADOBE SYSTEMS SOFTWARE, 2013), Photoshop( ADOBE SYSTEMS INCORPORATED,2013) e Flash Authoring(ALJABER, 2011), e foi lançada em Setembro de 2010 capaz de gerar aplicações para 4 plataformas: iOS(2013), Android(2013), Kindle Fire(ANDOLFATO, 2012) e Nook(NOOK STORE TERMS, 2013). (DAVILA, 2012). Baseia-se desenvolvimento na linguagem como Lua OpenGL e em frameworks ES(KHRONOS consolidados GROUP, de 2013), OpenAL(TECMUNDO, 2009), Box2D e por aí vai. Provê centenas de APIs para desenvolvimento multiplataforma (iOS(2013), Android(2013), Kindle
  16. 16. 15 Fire(ANDOLFATO, 2012) e Nook Color(NOOK STORE TERMS, 2013)). (DAVILA, 2012)e roda sobre Windows e Mac. Muito bom para desenvolvimento de jogos 2D. (DUARTE JR, 2012 ). Capaz de fornecer recursos de para aumentar a produtividade do programador em ate 10 vezes para desenvolvimento de diversos tipos de aplicações para dispositivos moveis como jogos, educativos, empresariais, eBooks entre outros. (CORONA LABS, 2009). Com o Corona SDK você não precisa de um Mac para desenvolver e testar seu app/game desenvolvido para iOS. Todo o processo pode ser realizado em um simulador que roda perfeitamente no Windows. Se o seu alvo for só Android você realmente nunca vai precisar de um Mac. Mas se o seu alvo é iOS você ainda vai precisar de um Mac para compilar e empacotar o resultado final, que deve ser enviado para App Store. (BASILIO, 2012) 2.2.1 Requisitos Mínimos De acordo com a Corona Lab (Corona Labs Inc, 2013), os requisitos mínimos para instalar o Corona são: No Macintosh:  Mac OS X 10.7 ou mais recente, 10,8 ou posterior recomendado;  Intel-based Mac;  IOS SDK da Aplle e Xcode para criar dispositivo para o iOS. Observações para Corona SDK no MAC:  Possível criar de aplicativos para iOS(2013) e Android(2013);  Recomenda-se a uso da última versão do Mac OS X e Xcode;  Você não precisa participar do Apple Developer Program (Programa de Desenvolvedores da Apple) para testar seu aplicativo no simulador Corona. Você só precisa instalar o iOS SDK da Apple e Xcode e, em seguida, criar para Xcode Simulator. Poderá, no entanto, precisam aderir ao Apple Developer Program para testar em dispositivos reais iOS;  O SDK do Android(2013) não é necessário para criar compilações de dispositivos Android(2013);  As aplicações só funcionam em dispositivos Android(2013) que rodam Android 2.2 ou superior, com um ARMv7 processador ARMv6 não é suportado.
  17. 17. 16 No Windows  Windows XP ou posteriores;  Processador de 1 GHz;  76 MB de espaço em disco;  1 GB de RAM;  OpenGL 1.3 ou superior. Observações para Corona SDK no MAC:  Corona SDK no Windows suporta apenas a criação para o Android;  O SDK do Android não é necessário para criar aplicações de dispositivos Android no Windows. Será necessário a instalação o x86 versão (32-bit) do Java 6 Development Kit. Corona não suporta JDK7;  As aplicações só funcionam em dispositivos Android que rodam Android 2.2 ou superior, com um ARMv7 processador ARMv6 não é suportado. 2.2.2 Vantagens Segundo MEENEN(2011), algumas das vantagens do Corona são:  Possibilidade de desenvolver aplicativos para dispositivos iOS e Android, sem alterar o código fonte da aplicação.  Desenvolver aplicações rapidamente utilizando a linguagem de programação Lua.  Não precisar compilar o código para visualizar o aplicativo pronto.  Utilizar Windows para desenvolver aplicações, porém necessidade de um Mac para publicações na App Store. 2.2.3 Desvantagens Segundo Meenen (2011), o Corona apresenta as seguintes desvantagens:    A maioria das bibliotecas de terceiros e estruturas bem conhecidas não podem ser usadas com Corona SDK. Algumas das funcionalidades oferecidas pelos sistemas operacionais subjacentes não podem ser usados. Recursos disponíveis no iOS não estão disponíveis no Android.
  18. 18. 17 2.2.4 Uso do Corona SDK e Lua A utilização das duas ferramentas deu origem a diversos jogos para dispositivos móveis, entre eles estão Angry Birds, da Rovi Mobile, com mais de 200 milhões de downloads e Bubble Balls, aplicação criada por Robert Nay garoto de 14 anos que estudou um livro de Lua na biblioteca de sua escola e passou a programar a aplicação, na época de lançamento do aplicativo, 2010, foi capaz de desbancar o então famoso Angry Byrds. As tecnologias apresentadas neste capitulo demonstram alternativa para criação de jogos 2D voltados para smartphones em plataformas diferentes, porém, sem a alteração de código fonte, facilitando assim o trabalho e aumentado o mercado de trabalho para desenvolvedores. No capitulo seguinte será desenvolvido uma aplicação com essas ferramentas para mostrar como utilizar alguns dos recursos disponíveis nelas para gerar o jogo.
  19. 19. 18 3 SISTEMA Nesta seção apresenta-se analise, modelagem e implementação do aplicativo. Para analise e projetos foram necessários apresentar os requisitos do sistema e desenvolver, utilizando a linguagem UML, os diagramas de casos de uso e sequencia. 3.1 Sumário Executivo do Sistema A aplicação desenvolvida será um jogo de campo-minado para aparelho Android, aonde o objetivo do jogador é encontrar as bombas escondidas sem que sejam detonadas, fazer sua devida marcação para informar aonde esta cada uma delas, utilizando apenas os valores das áreas ao redor aonde notificam antes bombas existe próximas naquela área. Caso o jogador ative uma bomba, o jogo acaba. Se descobrir um quadrado vazio, os quadrados ao redor serão ativados automaticamente. Se aparecer um número, isso indicara quantas minas escondidas existem nos oito quadrados ao redor dele. 3.2 Modelagem 3.2.1 Requisitos Funcionais Essa sessão exibe a descrição dos requisitos necessários para interessando entre usuário e sistema. Na tabela 1, pode-se observar a lista dos requisitos funcionais do aplicativo. Segundo Nunes( 2007), são os requisitos que descrevem as atividades do sistema, apresentando aquilo que deve ser feito no sistema. Tabela 1 – Lista de Requisitos funcionais Requisitos Funcionais F1 – Cavar F2 – Marca área com bandeira F3 – Desmarca Área F4 – Informar vitória/derrota
  20. 20. 19 F5 – Reiniciar Fonte: Elaborado pelo autor 3.2.2 Requisitos Não Funcionais Na sequencia estão as tabelas com a descrição dos requisitos não funcionais que de acordo com Nunes, (2007), são responsáveis por determinar como os requisitos funcionais irão acontecer, descrevendo os passos que devem acontecer para que a ação seja concluído como esperado. Tabela 2 – Cavar F1 – Cavar Descrição: Cavar na área clicada Requisitos não-funcionais Nome Restrição NF1.1 O usuário escolher a pá no menu Seleciona menu NF1.2 Clica na área onde quer cavar Clica na are NF1.3 Mostra que havia na are cavada marcação Fonte: Elaborado pelo autor Tabela 3 – Marca área com bandeira F2 – Marca área com bandeira Descrição: Marca local com bandeira Requisitos não-funcionais Nome Restrição NF2.1 O usuário escolher bandeira no menu Seleciona menu NF2.2 Clica na área onde considerar ter uma bomba escondida Clica na are NF2.3 Área aparece uma bandeira mostrando marcação marcação Fonte: Elaborado pelo autor Tabela 4 – Desmarca Área F3 – Desmarca Área Descrição: deixa em branco a área que achava ter uma possível bomba Requisitos não-funcionais
  21. 21. 20 Nome NF4.1 Seleciona menu NF4.2 Ver marcação anterior NF4.3 marcação Restrição O usuário escolher are limpa no menu Vê se a marcação existem na área é bandeira ou duvida. Área fica limpa Fonte: Elaborado pelo autor Tabela 5 – Informar vitória/derrota F4 – Informar vitória/derrota Descrição: Fim do jogo Requisitos não-funcionais Nome Restrição NF5.1 O usuário pressiona área e ela é verificada Seleciona área NF5.2 Bomba ativa, fim do jogo aparece o tempo do usuário e Encontrada as outras bombas na tela. bomba NF5.3 ultima Todas as bombas são desativas e aparece o tempo do área sem jogador. bomba clicada Fonte: Elaborado pelo autor Tabela 6 – Informar vitória/derrota F5 – Reiniciar Descrição: Reinicia o jogo Requisitos não-funcionais Nome Restrição NF5.1 O usuário pressiona botão reiniciar no menu Seleciona opção NF5.2 Variáveis são reinicializadas e o jogo recomeça reinicia Fonte: Elaborado pelo autor 3.2.3. – Requisitos de Hardware e Software. Já citado anteriormente, Corona Lab (Corona Labs Inc, 2013), essa aplicação necessitar de alguns requisitos no aparelho que será instalada para que possa ser
  22. 22. 21 utilizada. Tento em vista que esta aplicação esta voltada a dispositivos com Sistema Operacional Android (Android, 2013), aos requisitos de Hardware e Software para que uma aplicação de teste funcione de forma adequada são.  Aparelhos com Sistema Operacional Android 2.2 ou superior(Corona Labs Inc, 2013).  Aparelho Android com processador ARMv7 (Corona Labs Inc, 2013). 3.3 – Casos de Uso O diagrama de caso de usos, figura 2, apresenta as funcionalidades que os usuário jogador recebera de forma direta ou indireta durante o jogo. Figura 2 – Diagrama de Casos de Uso Sistema Fonte: Elaborado pelo autor As tabelas 7 a 11 apresentam detalhes que como os casos de uso devem acontecer, suas possíveis variações e como elas devem ser tratadas caso ocorram para que não haja erros na aplicação.
  23. 23. 22 Tabela 7 – Caso de Uso F1 Caso de Uso – F1 – Cavar Atores Jogador Interessados Jogador Pré – condições Ter iniciado o sistema. Pós – condições Mostra valor Variações Tecnológicas Sem variantes. Fluxo Principal 1 Usuário clica na opção cavar no menu. 2 verifica se o jogo ainda não acabou 3 usuário clica na área desejada. 4 verificasse a matriz do jogo. 5. apresenta o conteúdo da área. Variantes 2.1 o jogo já acabou Tratamento de Exceções 2.1 1 não se altera dados do sistema Fonte: Elaborado pelo autor Tabela 8 – Caso de Uso F2 Caso de Uso – F2 – Marca área com bandeira Atores Jogador Interessados Jogador Pré – condições Ter iniciado o sistema. Pós – condições Mostrar Marcação Variações Tecnológicas Sem variantes. Fluxo Principal 1 Usuário clica na marcação bandeira no menu. 2 verifica se o jogo ainda não acabou 3 usuário clica na área desejada. 4 verificasse se a não há outra marcação já feita naquela área. 5. aparece o símbolo da bandeira no botão
  24. 24. 23 Variantes 2.1 o jogo já acabou 4.1 há uma marcação na área clicada Tratamento de Exceções 2.1 1 não se altera dados do sistema 4.1.1 não fazer alterações no sistema. Fonte: Elaborado pelo autor Tabela 9 – Caso de Uso F3 Caso de Uso – F3 – Desmarca Área Atores Jogador Interessados Jogador Pré – condições Botão já ter uma marcação de possível bomba Pós – condições Desmarcar botão Variações Tecnológicas Sem variantes. Fluxo Principal 1 Usuário clica na opção desmarcar no menu. 2 verifica se o jogo ainda não acabou 3 usuário clica na área desejada. 4 verificasse se a há marcação de bandeira naquela área. 5. área fica limpa Variantes 2.1 o jogo já acabou 4.1 não há uma marcação na área clicada 4.2 existe outro tipo de marcação na área Tratamento Exceções de 2.1 1 não se altera dados do sistema 4.1.1 não se altera dados do sistema 4.2.1 não se altera dados do sistema Fonte: Elaborado pelo autor Tabela 10 – Caso de Uso F4 Caso de Uso – F4 – Informar vitória/derrota Atores Jogador
  25. 25. 24 Interessados Jogador Pré – condições Ter iniciado o sistema Opção de Cavar ativada no menu Pós – condições Fim do jogo Variações Tecnológicas Sem variantes. Fluxo Principal 1 clica na área. 2 verifica na matriz o valor referente ao área. 3 retorna valor 4. se bomba, usuário perde, se ultima área vazia usuário ganha Variantes Sem variantes. Tratamento de Exceções Sem variações a serem tratadas. Fonte: Elaborado pelo autor Tabela 11 – Caso de Uso F5 Caso de Uso – F5 – Reiniciar Atores Jogador Interessados Jogador Pré – condições Ter iniciado o sistema Pós – condições Reinicia Variações Tecnológicas Sem variantes. Fluxo Principal 1 clicar na opção de reiniciar no menu 2 jogo reiniciado Variantes Sem variantes. Tratamento de Exceções Sem variações a serem tratadas. Fonte: Elaborado pelo autor 3.4 Diagramas de sequencia Com base nas informações descritas nas tabelas de casos de uso, podemos visualizar melhor como será a sequência de atividades para que cada um dos casos de uso aconteça. As Figuras de 3 a 7 apresentam um diagrama de sequencia para cada caso de uso acima detalhados.
  26. 26. 25 Figura 3 – Diagrama de Sequencia F1. Fonte: Elaborado pelo autor Figura 4 – Diagrama de Sequencia F2. Fonte: Elaborado pelo autor
  27. 27. 26 Figura 5 – Diagrama de Sequencia F3. Fonte: Elaborado pelo autor
  28. 28. 27 Figura 6 – Diagrama de Sequencia F4. Fonte: Elaborado pelo autor Figura 7 – Diagrama de Sequencia F5. Fonte: Elaborado pelo autor
  29. 29. 28 3.5 Implementação Nesse tópico será apresentado os pontos principais do código fonte dessa aplicação e tela criadas para projetar esse jogo. 3.5.1 Visão geral Para a codificação dessa aplicação foi utilizada a ide IntelliJ IDEA Community (JETBRAINS, 2013), a estrutura de dados básica de aplicação em Corona é composta por 3 arquivos: main.lua, obrigatório nos projetos de linguagem lua, build.settings e config.lua arquivos opcionais; o primeiro é responsável pela código estrutural do projeto em linguagem lua, o segundo e terceiro contem a configuração da aplicação em relação ao aparelho, informando sua orientação nas posições horizontal ou vertical, expandindo ou não a aplicação por toda a tela, liberação de vibração em ações da aplicações, instruções a serem usadas na hora do build entre outras(CORONA LABS, 2013 e DAVILA, 2012), na Figura 8 é possível visualizar a pasta do projeto criado com os arquivos principais. Figura 8: pasta de projeto criado Fonte: Elaborado pelo autor 3.5.2 Tela e Botões A Figura 9 demonstra a design gráfico do jogo aonde a área 1 é o local aonde as bombas estarão locadas e a área 2 o menu para que o jogador posso escolher qual a ação deseja realizar. Na área 1 será colocada uma matriz 9 x 12 cada campo
  30. 30. 29 com tamanhos de 30 x 30 pixels e a área 2 será inserido 4 botões com funcionalidades diferentes e tamanhos 60 x 60 pixels. Figura 9 – Design da tela Fonte: Elaborado pelo autor Tendo em vista que ide utilizada não permite auxilio gráfico para a criação dessa aplicação, foi necessário a codificação e posicionamento de cada botão diretamente por linha de código. Buscando minimizar a quantidade de linhas de código e facilitar a compreensão do código, foram criados e posicionados nas devidas áreas cada um dos botões com o auxilio do código de programação for, aonde a cada laço de repetição, o botão se alinhava a sua devida linha e coluna para que a matriz ao final dos os lações de repetições estivesse completa e organizada de acordo com os quadrados da área um apresentado na figura 9, o código para esse estrutura esta sendo demonstra na figura 10.
  31. 31. 30 Figura 10: Construindo área de bombas Fonte: Elaborado pelo autor Os botões da área 1 realização todos as mesmas atividades, devem verificar no sistema qual é a ação desejada pelo usuário e fazer as devidas alterações se necessário. Por essa reação foi criada apenas um função de evento no clicar do botão, servindo ela para todos os botões. Ao ser clicado, o botão passa por parâmetro para a função o parâmetro event que possui os dados com a posição do curso na hora em que foi realizado o clique, com essas informações é possível verificar em qual campo foi realizar a ação de clique e efetuar a ações escolhida pelo usuário no menu. Essa configura esta demonstrada na figura 11.
  32. 32. 31 Figura 11: função de evento clique nos botões Fonte: Elaborado pelo autor Para descobrir o botão que foi clicado os valores x e y do parâmetro event são enviados para as funções LocalizaXArea() e LocalizaY(),com isso essa funções verificam em qual linha ou coluna se encontra o botão e retorna os valores necessários para identificar o botão precionado A Figura 12 demonstra como isso acontece.
  33. 33. 32 Figura 12: Funções para determinar X e Y dos botões Fonte: Elaborado pelo autor Os botões foram criados a partir da biblioteca display.* do Corona SDK (CORONA LABS, 2013) que possibilita tanto inserir imagens na tela como também figuras geométricas, informa dimensões da tela, captura imagem da tela para salvar no computador que no Windows salva arquivos.png e no MAC .JPEG (CORONA LABS, 2013). Algumas funções da biblioteca display(CORONA LABS, 2013):  display.newImage() – Exibe imagem na tela.  display.newRect() – Cria um vetor retangular.  display.newText() – Cria um objeto de texto.  display.remove() – remove objeto caso após teste se o mesmo existe.  display.save() – salva o conteúdo da tela em exibição.  display.contentCenterX – informa valor de x no centro da tela.  display.contentCenterY – informa valor de y no centro da tela.
  34. 34. 33 3.5.3 Arquivos de áudio As bibliotecas do Corona SDK também possibilitam a inserção de arquivos de áudio nas aplicações desenvolvidas, com a biblioteca de audio.*, foi possível incluir alguns arquivo.mp3 ao aplicativo. O sistema de áudio do Corona suporta diferentes formatos de áudio, porem esses formatos podem variar conforme plataforma para a qual será desenvolvida a aplicação. Na Figura 13 estão relacionados os formatos de áudio que podem ser carregas nos Simuladores Corona instalados em maquinas MAC e Windows e também em plataformas iOS e Android, entre os formatos permitidos estão mp3, wav e ogg (CORONA LABS, 2013). Figura 13: Formatos de Áudio Fonte: Elaborado pelo autor Os arquivos de áudio podem ser carregados em memoria através de 2 funções: audio.loadSound(), recomentado para arquivos de curta duração que possam ser utilizados variáveis durante o jogo e audio.loadStream(), voltado para arquivos maiores que possam ser usados como musica de fundo, em ambos os casos as funções serão carregados dentro de uma variável(CORONA LABS, 2013), alguns exemplos dessa funções são apresentados na Figura 14. Figura 14: exemplos de carregamento de áudio Fonte: FERNANDEZ, segundo DAVILA, 2012.
  35. 35. 34 Funções de áudio utilizadas( CORONA LABS, 2013):  audio.play(variável) – toca arquivo de áudio.  audio.play(variável, {loops=-1}) – o loops esta relacionado a quantidade que deseja que o áudio seja repetido após iniciado, -1 referencia a infinitas vezes ate que o áudio seja pausado pelo usuário.  audio.pause(variável) – pausa arquivo de áudio. 3.5.4 Menu Na área 2 esta localizado o menu do jogo, local onde foram locados 4 botões com funções distintas, os 3 primeiros: Cavar, Marcar Bandeira e Desmarcar, foram configurados de foram semelhantes aos botões da área 1. Conforme sua funcionalidade, os três primeiros informavam qual seria a ação realizada nos botões da área 1 ao clicar ele alterar o valor de status do sistema e se mantem selecionado mostrando ao jogador que aquela opção ainda é valida caso ele queria realiza o procedimentos e vários botões sequencialmente, a Figura 15 demonstra como é o evento desses botões onde era alterado sua imagem para mostra que estava selecionado e depois informa ao sistema o novo status. Figura 15 – criando evento do menu Fonte: Elaborado pelo autor
  36. 36. 35 O ultima botão do menu tem a função de reiniciar o jogo a qualquer momento, essa opção não necessita que o jogo já tenha acabado e é ativada assim que o jogador a seleciona. Figura 16 mostra o passo a passo da função deste botão. Figura 16 – evento do botão de reiniciar Fonte: Elaborado pelo autor 3.5.5 Trocando imagens Durante todo o jogo existe um sequencia de troca de imagens nos botões, alguns momentos ira trocar apenas um dos botões, em outros vários podem ser alterados vários com um único clique. Para isso foram criadas 2 funções, uma que realiza a troca de apenas um botão, e outra que percorre toda a atriz alterando todos os botões da tela conforme variável pré-existente no sistema. Como essa ultima função já percorre toda a matriz, também é utilizada para verificar quantas áreas sem bombas já foram liberadas, se todas as áreas sem bombas já estiverem localizadas o jogo é finalizado e o jogador ganha. Figura 17 apresenta estruturas dessas duas funções.
  37. 37. 36 Figura 17 – Funções de alteração de imagem Fonte: Elaborado pelo autor 3.5.6 Fim do Jogo O jogo é finalizado em apenas dois momentos: quando o jogador cavar uma área com bomba, essa ação fara com que ele perca o jogo e uma mensagem com a palavra “Perdeu” aparecera na tela, ou quando ele encontra todas as áreas limpas no campo, fazendo com que a mensagem ”Ganhou” seja exibida na tela. Marcas as áreas que tem bomba com a bandeira não fara com que o jogador ganhe a partida, ele só ganhara quando todas as áreas limpas forem liberadas, mesmo que tenha assinalado todas as bombas. Figura 18 apresenta as duas mensagens possíveis de aparecer ao final do jogo.
  38. 38. 37 Figura 18 – fim do jogo Fonte: Elaborado pelo autor Alguns dos recursos acima citados foram os principais utilizados na finalizar a aplicação do jogo proposto neste trabalho, uma lista mais completa de funções e bibliotecas podem ser vista no site da CORONA LABS(2013) fornecendo recursos como acesso a redes de internet, envio de e-mail, banco de dados, utilização de biblioteca de física nas aplicações entre outros dando mais qualidade aos aplicativos.
  39. 39. 38 4 CONSIDERAÇÕES FINAIS Apesar da linguagem Lua código aberto o framework Corona SDK apresenta varias limitações para sua versão gratuita. Para que o usuário consiga mais recursos disponíveis no Corona é necessário a aquisição de suas licenças de variam entre 49 dólares ao ano ate 199 dólares por ano. No total são 4 tipos de licenças possíveis entre gratuitas e pagas, a Starter(gratuita e utilizada nesse trabalho), Pro(49 dólares por ano), Enterprise Small Business(79 dólares por ano, ainda com algumas limitações), Enterprise Unlimited(199 dólares ao ano, com acesso ilimitado a documentação, plug-ins, suporte entre outros)(CORONA LABS, 2013). Como citado anteriormente no tópico de requisito de hardware e software, para que a aplicação criada com Lua e Corona funcione em um smartphone, é necessário que esse aparelho tem uma processador versão armv7 ou superior (CORONA LABS, 2013), tal recursos não é disponível em aparelhos como Samsung GT-S5830 Galaxy Ace, Samsung GT-S5360 Galaxy Y, LG Optimus Chat, LG Optimus Pro, Motorola Citrus entre outros aparelho (BASILIO, 2012). Por esse e outros motivos, alguns programadores deixaram de utiliza essa ferramenta (PIXEL ENVISION, 2012). 4.1 Sugestões para trabalhos futuros Esse trabalho serviu apenas para demonstra a utilidade dessas ferramentas e possibilidades de implementação de jogos. Essa aplicação é apenas um protótipo que pode ser melhorada em futuros trabalhos como: 2 jogadores um contra o outro, banco de dados para salvar tempo e criar ranque de qual usuário teve o melhor tempo, melhorias na parte gráfica, criação de tela de configuração para que o usuário consiga escolher nível de dificuldade, personaliza quantidade de bombas.
  40. 40. 39 REFERÊNCIAS BIBLIOGRÁFICAS ANDROID, ANDROID, disponível em: < http://www.android.com/> Acesso em: 19 out 2013. ADOBE SYSTEMS INCORPORATED, Adobe Photoshop Lightroom. Disponível em: < http://www.photoshop.com/products/photoshoplightroom > Acesso em: 27 out. 13. ADOBE SYSTEMS INCORPORATED, Photoshop Inspiration, Photoshop Information | Photoshop.com. Disponível em: <http://www.photoshop.com/> Acesso em: 27 out. 13. ADOBE SYSTEMS SOFTWARE, Baixe o software de design gráfico Adobe Illustrator | Adobe Illustrator CC. Disponível em: <http://www.adobe.com/br/products/illustrator.html?kw=p&sdid=JSYWK&skwcid=AL! 3085!3!31938062142!b!!g!!adobe%20illustrator&ef_id=UjOsgwAAAEijOD1d:2013102 7164449:s> Acesso em: 27 out. 13. ALJABER, Tareq, Flash Authoring. Disponível em: <http://flashauthoring.blogspot.com.br/> Acesso em: 27 out. 13. ANDOLFATO, George El Khouri, Kindle Fire é um dos tablets mais baratos no mercado, mas tem limitações e defeitos. Disponível em: <http://tecnologia.uol.com.br/noticias/nyt/2012/09/17/kindle-fire-e-um-dos-tabletsmais-baratos-no-mercado-mas-vem-com-recursos-limitados.htm> Acesso em: 27 out. 13. BASILIO, G. Corona SDK e a força do Android. Disponível em: <http://blog.milanosadez.com.br/2012/09/corona-sdk-e-forca-do-android.html>. Acesso em: 06 abr. 2013. BLIZZARD ENTERTAINMENT, Site oficial de World of Warcraft. Disponível em: < http://us.battle.net/wow/pt/> Acesso em: 27 out. 13. CAPCOM ENTERTAINMENT, Super Street Fighter IV. Disponível em: <http://www.streetfighter.com/br/ssfiv> Acesso em: 27 out. 13. COPYRIGHT, JavaScriptSource.com - Free JavaScripts, Tutorials, Example Code, Reference, Resources, And Help. Disponível em:< http://www.javascriptsource.com/> Acesso em: 27 out. 13. CORONA LABS, Corona Docs. – Disponível em: <http://docs.coronalabs.com/guide/start/systemReqs/index.html>. Acesso em: 16 mai. 13.
  41. 41. 40 CORONA LABS, Desenvolver Cross Platform Mobile Apps e Games. – Disponível em: < http://www.coronalabs.com/products/corona-sdk/>. Acesso em : 16 mai. 13. CRUZ, Daniel, LUA: O Mundo Se Rende á Linguagem de Programação Brasileira. Disponível em: <http://itvbr.com.br/blog/daniel/lua-o-mundo-se-rende-alinguagem-de-programacao-brasileira> Acesso em: 08 jun. 13. C# BRASIL, C# Brasil, Disponivel em: <http://csharpbrasil.com.br/> Acesso em: 27 out. 13. DAVILA, Gabriela. Corona SDK: Uma Introdução no Desenvolvimento Móvel de Jogos com Framework Multi-Plataforma. – Americana: Edição do Autor, 2012. DUARTE JR, Luiz F. Conhecendo Frameworks de Desenvolvimento Móbile. – Disponível em: < http://www.luiztools.com/post/Conheca-os-Frameworks-deDesenvolvimento-Mobile.aspx>. Acesso em: 16 mai. 13. ELETRONIC ARTS INC. Crysis – Official Site. Disponível em: <www.crysis.com> Acesso em: 27 out. 13. ELETRONIC ARTS INC. SimCity Official Website. Disponível em <http://www.simcity.com/> Acesso em: 27 out. 13. ERLANG WEB, Erlang Programming Language. Disponível em: <http://www.erlang.org/> Acesso em: 27 out. 13. GONCZOROSKI, BORBA E ACOSTA, Jonathan Mathia, Rafael Radunz, Rodrigo de Brum, Linguagem Ada. Disponível em: < http://ubiq.inf.ufpel.edu.br/clp/doku.php?id=ada-1-trabalho> Acesso em: 27 out 13. HARA e ZOLA, Carmem e Prof. Wagner. Linguagem C – Notas de Aula. – Disponível em: < http://www.inf.ufpr.br/cursos/ci067/Docs/NotasAula.pdf> Acesso em: 23 out. 13. IOS, Apple - iOS 7. Disponível em: < http://www.apple.com/br/ios/ >. Acesso em: 23 out. 13. JETBRAINS, Intellij Idea &Mdash; The Best Java And Polyglot Ide. Disponível em: <http://www.jetbrains.com/idea/> Acesso em: 21 out 13. KHRONOS GROUP, OpenGL ES - The Standard for Embedded Accelerated 3D Graphics. Disponível em: <http://www.khronos.org/opengles/> Acesso em: 28 out. 13. LUA.ORG, Authors, Disponível em: <http://www.lua.org/authors.html>. Acesso em:
  42. 42. 41 15 mai. 2013. MANZANO, José Augusto Navarro Garcia. Lua - Programação de Computadores: Primer for Beginners - Press Release. -- São Paulo: Edição do Autor, 2012. MEENEN, J., Learn How to Develop Apps for iOS and Android with Corona SDK. Disponível em: <http://www.cutemachine.com/product-creation/learn-how-todevelop-apps-for-ios-and-android-with-corona-sdk/> Acesso em: 16 mai. 13. MINISTÉRIO DA COMUNICAÇÃO, TV Digital - Ministério das Comunicações. Disponível em: < http://www.mc.gov.br/acoes-e-programas/tv-digital> Acesso em: 27 out. 13. NOOK STORE TERMS, NOOK; by BARNES & NOBLE, World's largest bookstore - Barnes&nbsp;&amp;&nbsp;Noble. Disponível em: <http://www.barnesandnoble.com/u/nook/379003208/> Acesso em: 27 out. 13. NUNES, Bruno, Análise de Requisitos: Funcionais X Não Funcionais. Disponível em: <http://maozinhadaweb.blogspot.com.br/2007/05/anlise-de-requisitos-funcionaisx-no.html> Acesso em: 19 out. 13. PETROBRAS, Petrobras - Energia, Pré-Sal, Biocombustível e Tecnologia. Disponível em: < http://www.petrobras.com.br/pt/ > Acesso em: 23 out. 13. PIXEL ENVISION, We have stopped developing with the Corona SDK. Disponível em: <http://www.pixelenvision.com/2202/we-have-stopped-developing-with-thecorona-sdk/> Acesso em 23 out. 13 PROJETO KEPLER, Lua: Conceitos Básicos e API C. -- Rio de Janeiro: Edição do Autor, 2008. PYTHONBRASIL, PythonBrasil – PythonBrasil. Disponível em: <http://www.python.org.br/wiki > Acesso em: 23 out. 13. REINERT, Karoline, Linguagem de Programação Lua. – Joinville: Edição do Autor, 2011. ROCKSTAR GAMES, Rockstar Games: Grand Theft Auto IV. Disponível em: <http://www.rockstargames.com/IV/> acesso em: 27 out. 13. RUBY, Sobre o Ruby. Disponível em: < https://www.ruby-lang.org/pt/ > Acesso em: 23 out. 13. SANTOS, Glauco Borges Valim dos. Curso de Introdução à Programação em C++ - Porto Alegre: Edição do Autor, 2004.
  43. 43. 42 SCITE, Scintilla and SciTE. Disponível em: <http://www.scintilla.org/SciTE.html> Acesso em 19 out 13. SMALLTALK.ORG, Smalltalk.org. Disponível em: <http://www.smalltalk.org/main/> Acesso em: 27 out. 13. TAKE-TWO INTERACTIVE SOFTWARE, CIVILIZATION V. Disponível em: <http://www.civilization5.com/> Acesso em: 27 out. 13. TECMUNDO, O que é OpenAL?. Disponível em: <http://www.tecmundo.com.br/web/1389-o-que-e-openal-.htm> Acesso em: 28 out. 13. THE FORTRAN COMPANY, The Fortran Company | For Fortran Enthusiasts by Fortran Enthusiasts. Disponível em: < http://www.fortran.com/> Acesso em: 27 out 13. THE PHP GROUP, PHP: Hypertext Preprocessor. Disponível em<http://php.net/> Acesso em: 23 out. 13. TIOBE SOFTWARE, TIOBE Programming Community Index for May 2013. Disponível em: <http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html>. Acesso em: 16 mai. 13. WIRESHARK FOUNDATION, Wireshark Go Deep. Disponível em: <http://www.wireshark.org/> Acesso em: 27 out. 13.

×