Quaddro + MacMagazine: vamos aprender a criar aplicativos?

MacBook e iPhones - Apple Developer

Antes de mais nada, quero saudar os leitores do MacMagazine. A partir de hoje, eu represento a Quaddro Treinamentos em uma coluna semanal de artigos sobre programação de aplicativos para iOS. Um ponto importante é que, apesar de eu já ter escrito diversos textos para o blog da Quaddro, conversei com o Rafael Fischmann sobre trazer esse tipo de conteúdo ao maior público possível e cá estamos.

Publicidade

MacBook e iPhones - Apple Developer

Adianto que sempre gostei de escrever e ensinar, acredito que é uma das coisas mais recompensadoras que existem (compartilhar conhecimento). E, depois de uma maratona de treinamentos para mais de 200 pessoas nas diversas turmas de iOS que ministramos, senti voltar aquela “vontade” de escrever.

Do ponto de vista de apresentação, eu tenho quase 10 anos de experiência em treinamento e “vida online”. Já administrei um portal de tutoriais web que nos tempos de ouro atingia mais de 1 milhão de acessos por mês e sempre tive em mente que não basta escrever para o público, é preciso entendê-lo. Digo isso para dar uma ideia de como penso em seguir com os artigos.

Publicidade

Discordo daqueles que publicam um texto que, por mais técnico e de qualidade que seja, não foi “feito” para ensinar. Durante esses anos de aula, artigos e palestras, conheci muitas pessoas que escreviam mais para mostrar que sabiam do que para efetivamente ensinar os leitores.

Reforço isso com a expressão que me motiva nos textos: querer ensinar. A ideia é saber como transmitir um conceito complicado, como usar exemplos e analogias que facilitem a compreensão e principalmente acompanhar a evolução do público. É assim que tenho trabalhado nos últimos anos e, depois de receber um retorno muito legal de mais de 3.000 alunos, sinto que é um caminho que gera bons resultados.

O intuito desta coluna dominical não é ser um treinamento completo aula a aula sobre todos os temas que abordamos nas 220 horas do curso de criação de aplicativos da Quaddro. Por melhor que se sejam os textos e didática, não dá para conduzir um curso na forma de textos em um blog. A proposta é trazer conceitos-chave e dicas essenciais tanto para aqueles que estão começando quanto para os que já programam mas esbarram em algumas dificuldades pelo caminho.

Publicidade

É por isso que o texto inicial, depois de uma conversa com o Rafa, é sobre o ponto de partida mesmo. O que comprar, o que instalar, o que esperar e é aqui que o texto efetivamente começa. Nesse contexto, vou fazer uma releitura de um texto meu de quase dois anos atrás no blog da Quaddro: “Como Programar para iPhone/iPad – Primeiros Passos”.

1º passo: conhecer o universo Apple

Logo da AppleIsso é um fato. Não existe a menor possibilidade de alguém criar aplicativos para iOS sem ter uma pequena dose macieira no sangue.

Começando pela paixão por seu Mac ou pela necessidade quase física de usar seu iPhone o dia inteiro, de alguma forma nós estamos ligados a esse universo fantástico. Quer indicativo melhor do que usarmos como ponto de encontro um blog de conteúdo Apple com enorme audiência?!

Publicidade

Essa realidade é importante para sabermos o que é tendência, o que está deixando de ser. Conhecer os aplicativos bestsellers e imaginar como seria fazer parte dessa grande onda.

Talvez essa seja a motivação de muitos. Ouvir falar de cifras enormes, como por exemplo um Plants vs. Zombies que em remotos 2010 faturou quase US$1 milhão nos seus primeiros nove dias de vendas. Saber que o “deus do Olimpo” Angry Birds gerou estratosféricos 30 milhões de downloads entre os dias 22 e 29 de dezembro, segundo a própria desenvolvedora Rovio.

Vivencio em sala de aula os mais diversos públicos. Sempre tenho alunos que querem atender a demandas corporativas, mas em todas as minhas turmas tenho aquele aluno que quer empreender. Quer concretizar uma ideia própria para fazer barulho e sucesso. São Calebes, Marcus, Fernandos, Pablos, Semers, Ricardos, Lucas, entre tantas outras cabeças que trazem ótimas ideias e aparecem com aquela vontade de produzir.

Acho isso incrível. É uma das coisas mais legais do ecossistema da Apple, a liberdade de trabalho. Poder produzir apps para um emprego CLT, demandas de freela ou até mesmo projetos próprios feitos nas madrugadas e finais de semana (esses costumam ser os melhores…).

Para os leitores do MM, este primeiro passo já é mais do que realidade. 😉

2º passo: ter um Mac

Desde a data do primeiro artigo até agora tivemos algumas boas mudanças de hardware no mundo da Maçã.

A principal dúvida costuma girar em torno de portátil ou mesa. É difícil para um formador de opinião ser categórico e dizer “comprar o note é melhor pela portabilidade” ou então “compre um desktop pela tela e hardware”, até porque não estamos falando de produtos baratos.

Família de Macs rodando o OS X Lion

Nos testes e experimentos da Quaddro, todos os atuais Macs são satisfatórios para a produção no Xcode, até mesmo o Mac mini. É lógico que não dá para compará-lo com um MacBook Pro ou mesmo um iMac com processador Core i7, mas ele quebra um bom galho para quem está iniciando.

Indicações pessoais entre valor pago e retorno da máquina ficam entre MBP de 15″ e iMac de 21,5″. Essa nova geração de iMacs que nós usamos para montar a sala de aula “Woz” está incrível. Aos que puderem, os novos MBPs com tela Retina também são uma ótima pedida.

Levando a dica para os leitores do MM que já possuem Macs, não entrem na onda de “precisar” adquirir uma máquina logo no início dos estudos. Comecem-nos nas suas máquinas atuais e, com base nas suas experiências, decidam com calma sua próxima máquina.

O ponto aqui é uma questão de bom senso. Se você já tem um Mac e está começando a estudar para entrar em uma nova área de trabalho, é bom evitar gastos até realmente precisar fazer investimentos.

3º passo: cadastre-se como Apple Developer

Chegamos ao ponto para quem quer trabalhar, mesmo. Até aqui as questões e dicas serviam para os “users”, o papo a partir de agora ganha forma para “developers”.

Antes de publicar seus aplicativos, você precisa ser um Apple Developer cadastrado. Esse cadastro gira em torno da conta mais comum, que custa US$100 anuais.

Lembrando que existe uma conta gratuita para aqueles que estão começando, seu porém é que, além de não permitir publicações, ela não dá acesso aos certificados digitais necessários para testar seus aplicativos diretamente em seus dispositivos. Essa é uma amarra chata da Apple, eu pessoalmente acho que nós deveríamos conseguir testar os apps em pelo menos um aparelho antes de fazer a conta paga, mas são regras da nave-mãe.

Basicamente minha dica se mantém a mesma do primeiro texto. Criem primeiro a conta gratuita, comecem seus estudos e, se a área de iOS Dev realmente te fisgar, aí sim caminhe para a conta paga. Esse registro é bem tranquilo e pode ser feito através do link a seguir:

http://developer.apple.com/programs/register/

4º passo: instalar e começar a usar o Xcode

Meu primeiro texto ainda citava o iOS SDK, um pacote com vários programas que continha o Xcode. De lá pra cá tivemos o lançamento da Mac App Store e a consequente migração do Xcode para um download exclusivo.


Ícone do app Xcode

Xcode

de Apple

Compatível com Macs
Versão 11.6 (8.1 GB)
Requer o macOS 10.15.2 ou superior

Instalar o Xcode e começar a conhecer suas telas é um bom começo. Ver painéis, tipos de templates e afins.

No primeiro texto comentei que o Xcode viraria quase um membro da família (com todo o peso que isso gera) e isso continua. Vocês terão momentos de amor incondicional, assim como brigas e incompreensões mútuas. Habitualmente cito isso em minhas aulas: “O Xcode é sentimental.” Existem situações até engraçadas, mas saibam que quase sempre o descuido é nosso.

O Xcode é uma ferramenta fantástica de desenvolvimento, que atualmente integra tanto a programação quanto a definição de interfaces dos aplicativos. Ele possui áreas para controle de dispositivos, documentação, logs, entre tantas outras opções úteis. Quem já instalou o Xcode pode perceber um visual alinhado com outros softwares da Apple. A barra de ferramentas, por exemplo, segue o mesmo estilo do iTunes. Isso ajuda na sensação de “sentir-se” em casa que o alinhamento de programas nos gera.

Screenshot do Xcode

Uma dica aos que vão baixá-lo agora é não ter pressa de usá-lo, pois o instalador do Xcode é bem pesado dependendo da sua conexão com a internet. Isso pode parecer besteira para alguns, mas em situações nas quais você tem pressa para usar um software, um download que pode levar mais de 1h dependendo da sua conexão torna qualquer ansiedade uma frustração — nada que um download noturno não resolva.

Hoje em dia nas minhas turmas tenho alunos de diversos bairros de São Paulo e alguns até de outras cidades, e, por mais inacreditável que isso possa parecer, de tempos em tempos quando pergunto sempre encontro alguém com conexões residenciais por volta de 256Kbps.

Agora, antes que vocês se aventurem a fuçar em telas e códigos, nós temos o 5º passo.

5º passo: estudar programação

A programação para iOS baseia-se na linguagem de programação Objective-C, conhecida de longa data no mundo OS X. Porém o próprio Obj-C é uma implementação em cima de outra linguagem de programação: o antigo e poderoso Ansi-C.

Isso nos leva à escadinha da programação de aplicativos para iPads e iPhones/iPods touch:

  1. Conhecer Ansi-C — linguagem base;
  2. Saber orientação a objetos — modelo de programação moderna que não existe em C;
  3. Programar em Objective-C — linguagem que implementa orientação a base de C.

C é uma linguagem de 40 anos que ainda assim está entre as mais usadas no mundo. Em nosso estudo, a necessidade de trabalho com C não é seu domínio pleno (até porque esse universo é extenso), mas sim o conhecimento de estrutura e sintaxe básica.

É essencial conhecer uma variável, uma condicional, um repetidor e demais estruturas básicas. Pessoalmente, eu acho muito mais sensato um estudo de lógica junto a uma linguagem de programação, do que aqueles exercícios de lógica com tijolos e outras abstrações.

Aí você me fala: “Danilo, eu já sei Ansi-C, e agora?” Eu respondo: “Ótimo, gafanhoto, vamos para orientação a objetos!”

Uma vez que você saiba a estrutura e os elementos básicos de qualquer sistema, é preciso subir um degrau e começar a trabalhar com classes, objetos e afins. É a metodologia que visa separar bem os agentes de um software e assim permitir reutilizações futuras.

Passada a etapa de OO chegamos à cereja do bolo: Objective-C. E aqui a coisa fica MUITO prática, legal e interessante. Ansi-C é uma linguagem poderosíssima, mas pela falta de orientação a objetos algumas tarefas não são muito “práticas”. Quando o curso entra em Objective-C (e principalmente em interface gráfica) vejo as turmas mais empolgadas e interessadas.

E, apesar da linguagem ser bem peculiar, depois de conhecer bem sua estrutura a programação fica muito prazerosa. É muito legal quando começo a ensinar um conceito em sala de aula e o nível de compreensão dos alunos já resulta em quase “advinhações” de como fazer funcionar certa classe ou framework.

Este 5º passo será o guia dos meus futuros artigos nesta coluna. 😉

6º passo: programar seus aplicativos

Vou repetir a frase que usei no primeiro artigo:

Com toda a minha experiência de instrutor, posso dizer nada substitui a prática. Em treinamentos eu falo por horas, conceituo, ilustro e bla bla bla. Mas nada se compara, em termos de entendimento, ao momento em que os alunos fazem a coisa na prática.

A melhor forma de aprender é ler artigos, tutoriais, assistir a aulas e demais bases, mas o ápice é meter a mão no código. Prática, prática e mais prática. Quando criei a Quaddro, essa foi a linha didática para nossos treinamentos: ter conceitos, explicações, exercício e MUITA prática.

Ícones de apps - App Store

É assim que nossos alunos se preparam e saem do curso com segurança na programação iOS. Sabendo com existe muito mais a aprender e integrar, mas sabendo que estão com uma bela bagagem de Obj-C e frameworks nativos.

Vou procurar nos futuros textos com códigos seguir essa didática — conceitos aliados a práticas, para enriquecer o estudo de vocês.

7º passo: paciência

Essa é maior das dicas e um conselho sincero: tenham paciência.

A coisa é gradativa. Vocês vão estudar C, para depois entrar em orientação a objetos, aprender Objective-C, conhecer o framework gráfico UIKit e ir avançando classe a classe, framework a framework. E isso tudo leva tempo.

Não pense que você vai gerar aplicativos e jogos super-elaborados em algumas horas depois de estudar por uma semana. Não existe fórmula séria de “Faça um app em 24 horas”. Sou absolutamente contra esse tipo de estudo “meia boca”. Não acredito (como instrutor com anos de experiência) que uma área imensa como o universo iOS Dev possa ser ensinado em cursos de 20 ou 40 horas.

Para vocês terem uma ideia, em todas as turmas da Quaddro o pessoal termina as 220 horas de cursos pedindo mais e mais tópicos. Então tenham ciência de que o estudo é longo e precisa ser feito com calma. Só assim para você ter tempo de assimilar conceitos, fazer seus testes e se sentir preparado para os próximos temas.

Essa área é muito desafiadora mas proporcionalmente motivadora. Não existe nada mais gratificante para um professor do que acompanhar a evolução dos alunos e ver que aqueles que começam os estudos “batendo cabeça” na metade do treinamento já possuem um nível de compreensão legal e no final estão até publicando seus aplicativos.

A área não é fácil, pessoal, e realmente vai exigir disciplina de vocês, mas chegar ao final do estudo conseguindo produzir algo é absolutamente recompensador. Para os que aceitarem o desafio e tiverem vontade de prosseguir, fica o slogan #tamojunto ou, como dizemos aqui na Quaddro, “TJ” 😉

Sintam-se à vontade para comentar o que vocês esperam dos próximos textos e convido todos a trocar ideias, dúvidas e experiências com a nossa comunidade no fórum de programação da Quaddro.

Aproveitem e coloquem em qual nível vocês estão e o que preferem estudar: Ansi-C ou Objective-C.

Um abraço a todos!

Posts relacionados