IDE para desenvolvimento Lua com Corona SDK

Não recomendo mais esta IDE. Ao invés dela, use o Corona Editor!

Antes de me tornar desenvolvedor (amador) de Lua com Corona SDK eu já desenvolvi em diversas outras linguagens, como Java, C#, VB.NET, C/C++ e por aí vai. Uma das coisas que prezo muitos nas linguagens que escolho para trabalhar (principalmente as que compõem a plataforma .NET) é a produtividade. As linguagens de programação são criadas para facilitar a vida do desenvolvedor e não para complicá-la, caso contrário todos programaríamos em Assembly, ou até mesmo em binário!!! Entretanto, mesmo a mais humana das linguagens de programação se torna extremamente complicada de utilizar, principalmente nos estágios iniciais, sem uma boa IDE, uma ferramenta de desenvolvimento com editor de código e geralmente função autocomplete, aquele famoso recurso da IDE lhe sugerir funções existentes na API conforme a palavra que você digitou (conhecido entre o pessoal do .NET como Intellisense). O post de hoje é curto mas tenho certeza que vai ajudar muita gente que está dando os primeiros passos com Lua + Corona SDK e até mesmo os desenvolvedores mais veteranos que buscam mais produtividade no desenvolvimento de seus games para iPhone, iPad e Android.

Primeiro Passo: Baixe e instale o interpretador Lua e o Corona SDK

Eu já escrevi um post sobre esse assunto, então não serei repetitivo. Leia-o antes de continuar.

IntelliJ

Segundo Passo: Baixe e instale o IntelliJ Community Edition

O IntelliJ é uma IDE semelhante ao Eclipse, permitindo aos desenvolvedores utilizarem-no para várias linguagens, sendo extensível assim como seu concorrente. Ele pode ser encontrado para download no site do fabricante, a JetBrains.

No site da JetBrains você terá duas opções de download, a paga e a gratuita. Sinceramente não sei as diferenças, mas a gratuita está me dando benefícios que meu editor de código Lua anterior, o Scite, nem sonhava em me proporcionar. Então, baixe a gratuita mesmo.

Depois de baixar, instale-o normalmente.

Pasta de Plugins do IntelliJ

Terceiro Passo: Baixe e configure o plugin do Lua

Como eu mencionei anteriormente, o IntelliJ é extensível através de plugins. Alguma alma caridosa desenvolveu um plugin para o intelliJ suportar o Lua. Este plugin pode ser baixado no site oficial do IntelliJ.

Este plugin não é um executável, é um zip que deve ser extraído. Copie a pasta IDLua para dentro da pasta de plugins do IntelliJ, localizada normalmente em C:\Arquivos de Programas\JetBrains\IntelliJ IDEA Community Edition xxx\plugins\.

Para configurar o plugin é simples: basta abrir o IntelliJ pelo menu Iniciar, ir no menu File, opção Settings e na esquerda vá em IDe Settings -> clique em Lua (irá aparecer somente se você colou a pasta no lugar certo). Na direita marque as duas opções.

Configurações do plugin do Lua

Quarto Passo: Configurando o IntelliJ para usar o Corona SDK

Os passos anteriores permitiram que você pudesse desenvolver em Lua no IntelliJ. Mas mais do que isso, queremos usar a ferramenta para aumentar a nossa produtividade no desenvolvimento de games para iOS e para o sistema móvel do Google. Ou seja, ainda temos de configurar o IntelliJ para suportar o Corona SDK! Através de ferramentas fornecidas pelo própria Ansca, fabricante do Corona, a mesma alma caridosa que desenvolveu o plugin (ainda bem que o mundo tem uma meia dúzia delas!) mapeou a Api do Corona e criou uma biblioteca para o IntelliJ suportar nosso SDK mobile favorito! O pseudônimo desta alma caridosa é sylvanaar2 e o link para download do mapeamento da API está no BitBucket (a interface desse site é uma porcaria, então clique em “Get Source”, na direita da página para fazer download no formato zip).

Uma vez que tenha baixado a API do Corona para o intelliJ, extraia o zip para uma pasta do seu computador que você saiba que não será apagada. uma boa idéia é copiar para dentro da pasta do IntelliJ, afinal, você sempre irá usar os dois juntos. Já, já vamos usar essa API dentro do IntelliJ, porém esta configuração deve ser feita para cada projeto (ou eu fui burro o suficiente para não descobrir outra forma).

Configurando o classpath da API

Último Passo: Criando seu primeiro projeto Corona no IntelliJ

Toda vez que você for criar um novo game/app para dispositivos móveis com o IntelliJ, basta criar um novo projeto (File -> New Project) no IntelliJ, selecionar o plugin do Lua e, depois que o projeto for criado, clique com o botão direito do mouse sobre o ícone da raiz do projeto e vá em “Open Module Settings” (pode atalhar apertando F4) para ir nas configurações do projeto. Vá em SDKs e clique na direita para adicionar um novo classpath ao seu projeto, bastando navegar pelas pastas do seu computador e marcar a pasta baixada no passo anterior, comumente com o nome “sylvanaar2-idlua-sdk-corona-alguma-coisa”. Cliquem em Apply e Ok.

Pronto, agora você está preparado para desenvolver seus jogos para as principais plataformas mobile do mercado com muito mais produtividade e capacidade de gerenciamento do projeto. Para os novatos, a tarefa de dominar o SDK se tornará muito simples também, graças ao recurso de auto-completar do IntelliJ. Outra dica quando se trabalha em grandes equipes é utilizar algum sistema de versionamento de código, como o Subversion por exemplo, mas isto fica para outro post 🙂

Comentem suas experiências com o IntelliJ, dicas de produtividade, quais ferramentas que vocês utilizam para programar em Lua, etc. Vamos trocar idéias!

* OBS: curtiu o post? Então dá uma olhada no meu livro de Corona SDK clicando no banner abaixo pra aprender a criar outros tantos apps incríveis!

Livro Corona SDK
Livro Corona SDK

TechEd Brasil 2011

Eu e alguns colegas que foram comigo

Eu sei que sou mestre na arte de postar assuntos defasados, mas aqui vai mais um.

Recentemente (29 e 30 de setembro) tive a oportunidade de participar do TechEd Brasil 2011, junto com alguns colegas da RedeHost. Para quem não sabe, o TechEd Brasil é o maior evento da Microsoft no país. Lá é onde são divulgadas as principais novidades da maior empresa de software do mundo nas áreas de Desenvolvimento e Infraestrutura. A RedeHost já é “figura tarimbada” no evento, temos participado desde 2008, inicialmente como inscritos e desde 2010 como patrocinadores. Junto com a empresa tive a oportunidade de participar das edições 2008, 2010 e 2011 e pude avaliar a evolução do evento.

Mas o que exatamente se vê no TechEd? De tudo um pouco. Na trilha de Desenvolvimento, me foco geralmente em assistir palestras sobre lançamentos de tecnologias ou sobre tecnologias que eu nem sabia da existência ou ainda, tecnologias que eu tenho preguiça de parar para estudar. Sobre lançamentos, assisti palestras de Windows Phone 7, ASP.NET Framework 4.5 e C# 5.0, só para citar algumas. A propósito, assistir palestras sobre lançamentos é o principal motivo da RedeHost participar do evento, pois lá temos acesso a informações privilegiadas. Só para citar um exemplo, em 2008 eu assisti uma palestra sobre o desenvolvimento da Task Parallel Library e do PLinq, que só foram incorporados ao .NET Framework na versão 4.0, lançadas no final de 2009. Ou seja, eu já sabia como usar e quais os benefícios um ano antes da versão final ser lançada. Neste ano, fiquei sabendo do Projeto Roslyn, algo como um Compiler-as-a-Service que deve ser liberado junto com o Framework 5.0 em 2012 (mas que já tem um CTP disponível para download), e que já está causando um certo barulho na comunidade de desenvolvedores. Será que poderemos desenvolver um concorrente ao Visual Studio com a liberação desses recursos do compilador?

Quanto às palestras que eu teria preguiça de procurar por mim mesmo na Internet, assisti algumas que falavam sobre a linguagem funcional F#, por exemplo. De forma resumida, imagine um Lisp.NET com grande poder para computação assincrona, hehehehe. Não sabe o que é Lisp? Então é hora de começar a estudar os paradigmas das linguagens de programação…Também assisti algumas palestras voltados ao design de aplicações para Windows Phone 7, o tão falado Metro Style que invadirá smartphones, tablets e até mesmo os desktops em breve, com o lançamento do Windows 8. A palestra inclusive era a única em que o palestrante utilizava um MacBook, hehehe. Não folgo no cara pois eu também uso um 🙂

Mas fugindo um pouco das palestras, a organização do evento estava boa como sempre. Infelizmente este ano tivemos apenas dois dias de evento, ao contrário dos três habituais. Isso fez com que eu pudesse assistir menos palestras do que realmente gostaria. Por um lado isso é bom, me obriguei a focar no que realmente importa para a empresa, deixando de lado as palestras de Silverlight, XNA e a maioria das palestras de Windows Phone 7. Ok, uma ou outra eu assisti, mas ninguém é de ferro, né! Pra variar eu participei de todos os sorteios e promoções que rolaram no evento. E para variar também, eu não ganhei nada. Meu colega Lucas Pffeifer (@lucaspfsd), do blog http://muitomaisque.net é que se deu bem, tendo ganho um X-Box 360 com Kinect em um dos sorteios da Microsoft. Dammit!

Para concluir, se você desenvolve ou administra tecnologias Microsoft, este é o evento que não pode faltar na sua agenda. É caro e é em São Paulo, mas vale a pena. Aqui na RedeHost a empresa banca todos os custos para alguns funcionários, como forma de premiação pelo bom andamento dos projetos, destaques entre as equipes, etc. Se a sua empresa não oferece esse tipo de benefício, está na hora de repensar seu emprego…

Cursos de Extensão bombando neste segundo semestre

Faz tempo que não posto nada referente aos cursos de extensão que ministro e com certeza não é por falta de assunto. Este primeiro semestre de 2011 foi (e o segundo ainda está) bem agitado na RedeHost (só pra variar) especialmente no que diz respeito às capacitações internas e externas do setor de desenvolvimento. Nossas parcerias técnico-acadêmicas ultrapassam a marca de uma dezena, incluindo cursos de extensão, palestras e convênios educacionais. Atualmente os projetos estão sendo reformulados visando fortalecer as capacitações internas da empresa, com programas de treinamento em desenvolvimento para os setores de suporte e infraestrutura, bem como especialização dos profissionais do próprio setor de desenvolvimento. Além disso, agora finalmente temos Inglês in Company! Consegui fechar um excelente preço com a maior rede de escolas de idiomas de nossa região e formamos diversas turmas de diferentes niveis que podem usufruir, uma vez por semana, de aulas de inglês. Mas esse assunto fica pra outra hora!

Curso de Extensão na Faculdade Dom Bosco

O curso de extensão em ASP.NET foi ministrado com sucesso na Faculdade Dom Bosco. A instituição Salesiana abriu às portas para a RedeHost durante alguns finais de semana, quando pude comparecer para palestrar, para assistir uma palestra deles e por fim, para ministrar o tão almejado curso de extensão para os alunos do Bacharelado em Sistemas da Informação. Embora não tenhamos contratado nenhum aluno do curso, pudemos aprender muito juntos e a última aula foi bem diferente, pois aconteceu na própria sede da RedeHost, em Gravataí.

Curso de Extensão no Alcides Maya

Conforme mencionado em outro post, as parcerias não restringem-se apenas à instituições de ensino superior. Quem é aqui do sul deve conhecer a escola Alcides Maya, famosos por seus comerciais no intervalo do Patrola e outros programas da RBS TV, sucursal da Rede Globo aqui no sul. Através de um contato com o prof. Roberto Litel, obtivemos acesso à instituição onde pudemos fazer uma maratona de “Lavagem Cerebral” sobre a RedeHost para mais de 200 pessoas durante um dia inteiro, sob a “tutela” da srta. Carol Folena, que nos auxiliou no que foi preciso. Tive o prazer de poder conversar com alguns professores e com alunos dos cursos Técnico em Informática, Especialização em Web, Técnico em Gestão, entre outros. Como resultado, conseguimos montar um curso de extensão em ASP.NET com uma turma lotada que só não era maior do que a vontade do pessoal de aprendere  de vir trabalhar conosco, é claro. O curso rendeu duas excelentes contratações e estamos no aguardo de no mínimo mais uma.

A parceria com o Alcides com certeza não irá parar por aí. Eu e o prof. Litel ainda mantemos contato e considerando que a instituição tornar-se-á de ensino superior ainda esse ano, muitas novidades ainda estão por vir.

Curso de Extensão na Facensa

Nas férias de julho deste ano tive a oportunidade de ministrar a segunda edição do curso de extensão em ASP.NET na instituição Facensa, aqui em Gravataí. A instituição que hoje nos fornece diversos profissionais, é uma de nossas maiores parcerias educacionais atualmente e conforme ambos os lados crescem, empresa e instituição, acredito que esta relação só tende a se estreitar. Desta vez nossos cursos não se restringiram apenas à programação. Em paralelo ao curso de ASP.NET, a RedeHost promoveu um Curso de Extensão em Linux e outro Curso de Extensão em Virtualização, todos gratuitos! Aposto que não é toda instituição que consegue essas barbadas hein! Além de mim, como instrutor de ASP.NET, a RedeHost forneceu o prof. Cristiano Diedrich, nosso arquiteto em infra Linux para o curso de Linux, e o prof. Diego Voltz, nosso gerente de infra para o curso de virtualização. A experiência foi boa para ambos os lados, pois meus colegas aind anão haviam lecionado nada fora de nossa empresa, e para os alunos, viram cursos inteiramente novos na instituição, sem custo, e com uma ótica estritamente focada no mercado de trabalho e nas necessidades de uma empresa real. Obtivemos uma contratação nestes cursos, sem contar a capacitação de vários de nossos profissionais, que também fizeram alguns dos cursos para se aperfeiçoarem.

Além dessas experiências, neste segundo semestre de 2011 tivemos algumas novas parcerias consolidas com a rede de universades da ULBRA, que nos permitiu lecionar dois cursos de extensão e algumas palestras. Mas isto fica para um próximo post. Fui!