sábado, 11 de dezembro de 2010

Estágio, Férias e Aplicaçãozinha Tosca pro Android

Consegui o estágio no desenvolvimento! Segunda-feira começo lá, tô mega empolgado. Quanto à faculdade, só mais uma prova (terça que vem) e eu estou oficialmente de férias. Férias essas que prometem ser boas. Vou ver se começo uma academia, pra deixar de ser tão mendigo. Logo eu, que sempre me orgulhei dos meus bracinhos fininhos...
Pois então, o Android. Estou lendo todo material possível, baixando tutoriais, entrando em fóruns de discussão, enfim: estou absorvendo toda informação possível sobre a ferramenta. Fiz algumas aplicaçõezinhas inúteis, e já pude ter uma boa noção do que me aguarda. Vou mostrar uma delas, pra dar uma ideia. É um aplicativo realmente tosco, só lê duas notas e apresenta a média (baseada no cálculo utilizado na minha faculdade). Ainda falta fazer algumas validações e talz, mas eu tô empolgado demais pra mostrar ele ;P

Vamos lá. Essa é a tela inicial da aplicação:

Tela do emulador

Como eu falei, é a tela para ler duas notas e, ao se clicar em "Calcular", a média é mostrada, assim como o resultado (aprovado ou não). A interface é implementada em XML. É realmente simples, e o Eclipse ainda oferece recursos para criar essas interfaces de maneira mais simples ainda. O código da interface dessa tela é o seguinte:


Dois TextViews, dois EditViews e um Button, e as suas respectivas propriedades, simples. Um recurso que eu achei interessante é o fato de que todas as Strings (quaisquer textos que apareçam no programa) estão em um arquivo a parte. Basta chamá-las pelo nome. Extremamente útil para aplicações que lidam com diversos idiomas. O arquivo de Strings (também XML) ficou assim:



Novamente, o Eclipse oferece ferramentas para a edição rápida das strings, o que se torna ainda mais simples. E onde que tem Java aí? Pois bem, vamos à programação propriamente dita. Minha aplicação, por ser extremamente simples, precisou de apenas um arquivo .java e de apenas uma Activity (basicamente, uma activity é uma tela da aplicação). E esse arquivo ficou assim:



As bibliotecas do Android são importadas, o layout é definido, e, ao se clicar no botão "Calcular", um AlertDialog é aberto mostrando o resultado, dessa forma:

Resultado

Simples, simples, simples. Óbvio, alguns ajustes precisam ser feitos ainda. Provavelmente NÃO os farei, vou continuar estudando outras aplicações mais complexas, e possivelmente comentando aqui no blog. Tem muito material pra ler, e muita gente interessada no assunto. Ou seja: não existe desculpa pra não aprender. Basta tirar um tempinho e se puxar, e é isso que vou fazer nessas férias. Até :D

segunda-feira, 29 de novembro de 2010

Android e a Ideia Genial da Semana

No último post deu a impressão de que eu fiquei meio desanimado por ver que era SEMI-IMPOSSÍVEL um mendigo desenvolver pra iPhone (surpresinha no fim desse post, aguardem). Na real acho que o texto ficou meio dramático, só isso. A questão é que no mesmo dia que eu escrevi aquilo, eu já tava pesquisando sobre o Android, e sendo feliz.
Bom, acho que a maioria já sabe, mas não custa lembrar: o Android é um sistema operacional para celulares desenvolvido inicialmente pelo Google e posteriormente pela Open Handset Alliance, uma aliança de empresas ligadas (direta ou indiretamente) à telefonia móvel. Detalhe: Open Source. Exatamente, o código é aberto. E melhor ainda, que me deixou mega empolgado: é simples desenvolver pra Android, todas as ferramentas necessárias são facilmente encontradas na internet.
Os aplicativos são construídos em Java, utilizando as bibliotecas desenvolvidas pelo Google. Portanto, o ideal é usar alguma boa IDE de Java, como o Eclipse ou o Netbeans. Utilizarei o Eclipse, que pode ser baixado aqui. Óbvio, para programar em Java, é necessário possuir no computador o JDK (Java Development Kit), encontrado no site da Oracle (que comprou a Sun já faz mais de ano, mas eu sempre esqueço e acabo me surpreendendo quando leio algo a respeito). Por último, é necessário o SDK do Android, aqui.
O processo de instalar todos os componentes corretamente e configurá-los é meio chato/longo/complicado. Eu utilizei esse artigo da Oficina da Net, que explica passo a passo o processo, de forma clara.
Tudo pronto! Bom, agora é só programar. Não tenho conhecimentos avançados de Java, tive apenas uma cadeira semestre passado que me ensinou os conceitos principais da Orientação a Objetos em si e alguns elementos da linguagem. Portanto, precisarei de MUITO material de referência. Pesquisando, encontrei esse livro (em inglês) e me interessei bastante, pretendo comprá-lo. Ainda há a página do Android voltada à desenvolvedores, com todo o material e informações necessárias, além de tutoriais.
Então, vamos à surpresa citada anteriormente. Depois que eu instalei e comecei a brincar com o Android, achei um artigo ensinando a programar pro iPhone utilizando Linux (ahhhh!). Não, não fiquei tapado. Achei até engraçado, e fechei a página sem nem ler direito o conteúdo, e voltei pro Eclipse. MALZ AÊ Apple, mas agora não te quero mais não :*
Android, é nózes.

sexta-feira, 26 de novembro de 2010

Desenvolver pra iPhone, TCC, não ter grana AND STUFF

Antes de ontem eu tava meio sem sono e perdendo tempo na internet, pra variar. Não me lembro o motivo, mas veio na minha cabeça a ideia de fazer app's pra iPhone. Ahh, acho que lembrei (eu realmente lembrei enquanto escrevia isso..), foi num post do @AkitaOnRails sobre uns negócios de Objective-C (por acaso, a linguagem utilizada pra desenvolver pra iOs).
A ideia me pareceu ótima, já que estou na metade do meu curso de Sistemas de Informação e logo logo terei que morrer fazendo o TCC. Fazer algum sistema pra uma plataforma em plena ascensão É uma boa ideia.
Eu já tinha alguma noção do assunto, já sabia que era preciso ter um Mac e um certificado da Apple pra isso. Mas pensei que era possível dar um "jeitinho", usando algum tipo de emulador e tal. Hoje de manhã, dando mais uma pesquisada, me deparei com esse post do tecnoblog. É. Aquela tabelinha me deixou beeeeeem desanimado. E o tal "jeitinho"  de antes não me pareceu assim tão eficiente.. Não adianta: pra desenvolver pra uma plataforma assim, o sujeito precisa NECESSARIAMENTE testar o sistema NA PLATAFORMA. Isso se complica um pouco mais com o preço de qualquer produto da Apple no Brasil. Ok, não seria problema se eu não fosse mendigo, mas isso é meio irremediável no momento..
A questão é que eu fiquei ligeiramente desanimado com isso. Tá, nada me impede de estudar a linguagem e talz, mas tudo fica muito mais complicado e um pouco (MUITO, na verdade) sem graça. Tipo, qual a emoção de desenvolver pra um iPhone sem ter um iPhone pra testar a aplicação? Enfim, terei que bolar outro plano genial pro meu TCC, o que me deixa na mesma posição de, ahn, três dias atrás =P
Anyway, aqui, aqui, aqui e aqui estão uns documentos interessantes pra quem também se interessar pelo assunto.