Aprender a programar para iOS/iPhone: recomendo o livro iPhone iOS 5 Development Essentials

O iPhone iOS 5 Development Essentials é o livro que está conseguindo me ensinar com facilidade os primeiros passos na programação para o iPhone.

Quero começar deixando algo muito claro: exerci a profissão de programador desktop (especialmente em Turbo Pascal e Delphi, mas também em outras linguagens menos comuns) ao longo da década de 1990, e mais recentemente o máximo em complexidade de desenvolvimento em que me envolvi foram pequenos scripts em AWK e PHP.

Mesmo assim, atendendo ao meu projeto de ano novo (compatível com o CodeYear, do qual fui informado via @alexia) de aprender a programar em mais algum ambiente moderno, escolhi o iPhone (mesmo sem qualquer experiência em Objective C ou com o Xcode) e, com a ajuda do livro iPhone iOS 5 Development Essentials, de Neil Smyth, nas primeiras 3h de envolvimento (e 16 dos 55 capítulos lidos) eu já estava me afastando dos exemplos oficiais (introdutórios, é claro) para acrescentar funcionalidades aos programas de teste apresentados.

Lançado em outubro, trata-se de um livro com uma qualidade que no momento é rara: está em sincronia com a versão corrente do iOS e do Xcode, o que garante que seus exemplos de código (essenciais ao aprendizado) podem ser reproduzidos passo a passo no ambiente de desenvolvimento, sem erros devido à evolução das ferramentas e APIs, e sem precisar adivinhar nada.

Tendo experimentado anteriormente com outros livros que não compartilham desta vantagem - incluindo um bem recente e que parecia promissor, a segunda edição do "iOS Programming - The Big Nerd Ranch Guide", lançado há 6 meses (depois do anúncio do iOS 5, portanto) mas com exemplos baseados na versão anterior - minha recomendação é: seu primeiro livro de programação para iOS deve estar voltado à versão corrente do ambiente de desenvolvimento, ou provavelmente você perderá mais tempo tentando adivinhar qual o novo jeito de fazer as coisas do que realmente praticando o que o autor pretendia ensinar.

O iPhone iOS 5 Development Essentials está atualizado, e assim o resultado é bem melhor: o primeiro exemplo de programação, dado em um capítulo inicial e que se limita a exibir um "Hello World" na tela do emulador de iPhone usado para debug, pode ser seguido à risca e funciona 100% para conhecer os aspectos essenciais do ambiente de desenvolvimento, inclusive animando para depois o próprio leitor começar a se afastar parcial ou totalmente dos exemplos nas direções que mais lhe interessam, como acredito ser um traço comum da maioria dos programadores aprendendo uma nova linguagem ou ambiente - no meu caso, o curso de programação mais bem-sucedido que fiz, de C++ no OS/2 (faz tempo) foi um em que eu fugi completamente dos projetos "oficiais" do material e desenvolvi um jogo multithread.

Não quer dizer que não há falhas no livro: no capítulo 15, por exemplo, que explica sobre o uso de tab bars para criar apps com mais de uma view, o autor instrui a criar o projeto com um prefixo automaticamente incluído nos nomes das classes, mas apresenta todos os trechos de exemplo de código do capítulo sem este prefixo. Não é uma falha grave, mas é o tipo de situação para a qual o estudante precisa estar preparado, ou não verá os exemplos funcionarem.

Mas os pontos positivos são abundantes, começando pela objetividade (capítulos curtos, com exemplos minimalistas mostrando uma característica do iOS de cada vez) e por não cometer o erro de tentar ensinar a linguagem Objective C e a orientação a objetos em si - 2 capítulos com resumo a respeito estão presentes, mas trata-se obviamente de um livro para quem já é programador e está apto a entender as particularidades da sintaxe de uma nova linguagem conforme elas vão surgindo nos exemplos apresentados.

O livro começa com o básico: como criar um projeto, como exibir uma string na tela, como fazer uma interação simples (pedir uma temperatura em Fahrenheit e, ao toque de um botão, convertê-la para Celsius) mas, sem maior alarde, logo se está tratando de características específicas do iOS: como fazer o teclado virtual sumir quando a entrada de dados termina, como rearranjar os controles na tela quando o usuário muda a orientação do aparelho, etc.

Os exemplos de código estão disponíveis para download em um arquivo ZIP e servem para eventualmente resolver uma situação da qual você não consiga escapar mas, francamente, o ideal é digitar a partir dos exemplos do livro, e aprender inclusive com o ato de ter de corrigir os seus próprios erros de transcrição.

São 55 capítulos (em sua maioria curtos) e, conforme pode ser visto no índice em PDF que preparei para vocês, logo as lições baseadas em simples interação com o usuário dão lugar a aspectos bem mais específicos, incluindo:

  • como lidar com arquivos e diretórios
  • como armazenar dados localmente (SQLite) ou no iCloud
  • como usar multitoque e identificar gestos
  • como exibir e manipular gráficos
  • como tratar a multitarefa e as notificações
  • como lidar com mapas e localização
  • como lidar com a câmera de fotos e vídeo
  • como tocar áudio e vídeo
  • como integrar com o Twitter
  • e mais.

O aprendizado de uma linguagem e de um ambiente dificilmente se completam com a leitura de um único livro (há bem mais a aprender: boas práticas, estilo, etc. - um curso ou a tutoria de alguém experiente podem ajudar muito), mas um bom livro pode garantir um começo estimulante e acelerado. Na minha opinião, este é um bom livro para quem já sabe programar e quer começar a levar ao iPhone as suas habilidades e conhecimentos.

O iPhone iOS 5 Development Essentials, de Neil Smyth, tem 486 páginas em inglês. Eu comprei meu exemplar no formato ebook para Kindle, e ele também está disponível na iTunes Store dos EUA.

Comentar

Comentários arquivados

Mais acessados:

Artigos recentes: