Desenvolvimento em iOS iPhone, iPad e iPod Touch – Curso Completo

Capa do livro Desenvolvimento em iOS iPhone, iPad e iPod Touch – Curso Completo (3.ª Edição Atualizada)
Título
Desenvolvimento em iOS iPhone, iPad e iPod Touch – Curso Completo (3.ª Edição Atualizada)
Autor(es)
Editora
FCA – Editora de Informática, Lda.
Páginas
448
ISBN
978-972-722-786-0

O livro que me foi apresentado para análise intitulado Desenvolvimento em iOS iPhone, iPad e iPod Touch – Curso Completo (edição revista e atualizada para iOS 7) tem como público-alvo todo o leitor interessado em começar a desenvolver aplicações móveis para as plataformas iOS da Apple ou, para leitores mais experientes, “afinar” alguns aspectos específicos de programação em Objective-C para iOS. De qualquer forma, é assumido neste livro que o leitor tenha conhecimentos prévios de programação, mais especificamente da linguagem C, e dos conceitos inerentes à programação orientada aos objetos (POO).

Desde o primeiro capítulo os autores optam por uma abordagem prática, aliás, passo a citar, “extremamente prática”, desafiando o leitor a desenvolver uma aplicação móvel iOS (app) denominada “O Meu Diário” como forma de apresentar o funcionamento base de uma aplicação iOS tipo bem como ter uma perspectiva inicial sobre o respectivo ambiente integrado de desenvolvimento (IDE)—o Xcode.

Este livro começa assim por apresentar uma breve resenha história da plataforma iOS e respectivo kit de desenvolvimento de software (SDK), contextualizando o legado da linguagem C e da empresa NeXT (segunda empresa criada por Steve Jobs logo após ter sido afastado da Apple em 1985), e dos dispositivos móveis associados: o iPhone, iPod Touch e iPad. Logo desde o primeiro capítulo, o leitor aprende o que são IBOutlets e IBActions e para que servem, e à medida que o leitor vai criando a sua primeira app. Os autores aproveitam para também explicar como funciona e está organizado todo o ambiente de desenvolvimento Xcode. É também aqui logo apresentado (no primeiro capítulo) uma breve referência ao padrão arquitetural Model-View-Controller (MVC) que qualquer aplicação iOS deve seguir, aproveitando os autores para introduzir o conceito de Storyboards. Assim, o leitor no fim do primeiro capítulo tem uma app a funcionar e o conhecimento de alguns dos mais importantes conceitos no desenvolvimento iOS.

O segundo e terceiro capítulos apresentam, respectivamente, os conceitos Base e Avançados da linguagem de programação Objective-C (linguagem de programação nativa para a plataforma iOS). Para o leitor iniciado o segundo capítulo é de leitura obrigatória sugerindo-se, no entanto, que consulte apenas o terceiro capítulo à medida que vai precisando. Para o leitor mais experiente, o terceiro capítulo é sem dúvida uma fonte bastante rica e profícua de informação. É aqui apresentado de forma bastante aprofundada e exaustiva a questão dos mecanismos de Gestão de Memória da linguagem de programação Objective-C para iOS, onde o Ciclo de Vida de uma app iOS é introduzido e os conceitos de protocolos e delegates bem explicados (estes dois últimos conceitos também bastante importantes e a saber, mesmo para o leitor iniciado, dado tratar-se em mais um dos padrões de desenho muito usado em iOS). Ainda neste capítulo são aprofundados outros conceitos, já apresentados no capítulo anterior, até um nível de exaustão exemplar.

A principal framework utilizada no desenvolvimento de uma qualquer aplicação para a plataforma iOS Cocoa Touch constituída pelas frameworks Foundation + UIKit (sobre as quais assentam todas as restantes frameworks da plataforma iOS), é apresentada em termos das suas principais classes a saber, respectivamente, nos capítulo 4 e 5. A framework Foundation fornece as principais classes para a representação de cada tipo de dados elementares e a framework UIKit fornece as classes necessárias para construir e gerir toda a interação com o utilizador de uma qualquer aplicação iOS. Cada classe é apresentada segundo os seus principais objectivos e métodos, e sempre acompanhada de um pequeno exemplo de utilização. As principais melhorias introduzidas desde a versão 6 do iOS são sempre focadas e explicadas. O Ciclo de Vida e a anatomia de uma qualquer aplicação iOS, bem como os principais padrões de desenho já atrás referenciados e apresentados, são aqui explicados ao pormenor (capítulo 5). A implementação prática da app “O Meu Diário” é aqui retomada e algumas questões pertinentes que a Apple muito valoriza e obriga os programadores iOS a seguir em termos de guidelines e boas práticas, relacionadas com Usabilidade e toda a eXperiência de Utilização (UX), são expostas e explicadas.

Os principais controladores de navegação bem como a técnica de storyboards, esta última introduzida desde a versão iOS 5, são exemplificados como devem ser utilizados no capítulo 6, e mais uma vez como novas funcionalidades a acrescentar na app “O Meu Diário”. De modo similar, no capítulo 7, são apresentadas mais duas frameworks utilizadas em qualquer aplicação baseada em localização quer para ter acesso à informação gerada pelos sensores de localização quer para apresentar visualmente as localizações num mapa—Core Location e MapKit. Os cuidados a ter com a rotação da interface gráfica bem como a leitura dos sensores de movimento são aflorados no capítulo 8. As principais técnicas de armazenamento local de informação (Persistência) e na nuvem (o iCloud), bem como a framework específica Core Data (recomendada só para situações em que existe um volume significativo de dados a persistir), são apresentados em dois capítulos separados. Todas as questões relacionadas com o Multimédia (Som e Imagem, Desenho, Gestos e Animação), Execução Concorrente (onde a API Grand Central Dispatcher introduzida na versão 5 do iOS) e Serviços de Rede, técnica imprescindível a saber com a proliferação dos serviços de Cloud-Computing para mobile (conhecidos por mobile Backend as a Service—mBaaS) e com a utilização massiva das redes sociais, são também descritos com o máximo rigor seguindo uma estratégia muito prática e sempre com bons exemplos. Por fim, o livro termina com uma explicação de como uma app deve ser preparada para ser submetida com sucesso na App Store bem como todo o processo muito rígido que Apple nos obriga deve ser seguido.

Em suma, este livro é sem dúvida uma excelente referência e um manual completo para quem quer desenvolver aplicações para a plataforma iOS, com um português simples, apelativo e cientificamente correto. Todos as principais fases no desenvolvimento iOS são abordadas com o máximo rigor, explicadas e logo exemplificadas, onde o leitor tem o prazer de “aprender fazendo”, aconselhando veementemente a leitura desta obra para qualquer profissional e estudantes da área.

Publicado na edição 46 (PDF) da Revista PROGRAMAR.