O Swift Playgrounds da Apple pode ajudar programadores jovens e novatos a começar a criar aplicativos — com vários graus de sucesso.
No verão passado, depois assistindo a uma vitrine inspiradora com aplicativos criados por jovens programadores usando a linguagem de programação Swift Playgrounds da Apple , resolvi convocar meus filhos para desenvolver um aplicativo para iPhone. Com 10 e 13 anos, ao longo dos anos, ambos brincaram com inúmeros brinquedos STEM projetados para introduzir os conceitos básicos de codificação, alguns dos quais até envolviam programação simples, então achei que seria divertido dar o salto para um aplicativo real de nossa autoria.
Começamos discutindo conceitos antes de escolher um aplicativo sobre gatos (naturalmente) e projetar um layout no papel. Eu pensei com otimismo que poderíamos criar a versão 1.0 durante o verão, mas chegamos a um impasse tentando concordar sobre quem desenharia cada elemento (eles são artistas entusiasmados). Os obstáculos vieram grossos e rápidos depois disso. Isso seria mais difícil do que eu pensava, então decidi conversar com alguns jovens codificadores que já haviam feito a tarefa.
Existem quase 2 milhões de aplicativos na App Store da Apple, desenvolvidos por todos os tipos de pessoas, desde crianças em seus quartos até equipes de desenvolvimento profissional em escritórios amplos. Com um público potencial de quase 125 milhões de pessoas somente nos Estados Unidos, há muitos incentivos para desenvolver no iOS. O sucesso pode ser medido em lucro e downloads para alguns, mas para outros, desenvolver um aplicativo é servir a uma causa e tentar ajudar as pessoas. Também pode ser uma busca digna por si só.
Esse foi o caso de Rahul Kumar, que começou a programar aos 7 anos. Em 2020, devido às restrições de bloqueio do Covid-19, ele ficou entediado em seu quarto e decidiu desenvolver um aplicativo para iPhone antes da formatura do ensino médio. Com acesso ao MacBook de seu pai, Kumar criou o EmSafe , um aplicativo de viagem de emergência projetado para ajudar refugiados, imigrantes, deslocados e pessoas que não falam inglês a acessar serviços de emergência em mais de 230 regiões do mundo.
Kumar teve alguma experiência com Java e Python antes de começar a codificar com Swift, mas é autodidata e não teve nenhuma ajuda de seus pais. “Achei difícil codificar nessas linguagens quando comecei e muitas vezes deixava projetos inacabados por semanas porque não conseguia encontrar facilmente um recurso específico para o meu problema”, diz ele.
Seu projeto encontrou dificuldades quando ele o submeteu ao processo de revisão interna da Apple. Embora as ferramentas de desenvolvimento e o suporte da comunidade sejam gratuitos, você deve se inscrever no Apple Developer Program (US$ 99 por ano) antes de enviar um aplicativo para análise e distribuí-lo pela App Store. A Apple tem um conjunto detalhado de diretrizes que devem ser seguidas para que qualquer aplicativo ou jogo seja publicado. “Tive que continuar resolvendo problemas à medida que o App Review os encontrava, como problemas com o texto de um botão e a forma como um alerta era exibido”, diz Kumar. Mas ele persistiu e acabou sendo selecionado como Vencedor do Swift Student Challenge da Worldwide Developers Conference pela Apple em 2021 e 2022. Kumar lançou a primeira versão do EmSafe em julho.
A Apple lançou o Swift Playgrounds pela primeira vez como um aplicativo para iPad em 2016 e uma versão para MacOS em 2020. É gratuito e permite editar o código em uma janela e ver como ficará no aplicativo finalizado em outra (em tempo real). Existem lições e desafios integrados para trabalhar, e você pode carregar exemplos de playgrounds para ver como eles funcionam. Ele foi projetado para ensinar o básico com orientações guiadas e sinaliza erros em seu código conforme você digita. É possível criar seu aplicativo para iPhone inteiramente no Swift Playgrounds, mas você também pode exportar projetos para o Xcode (ambiente de desenvolvimento completo da Apple).
“A Apple forneceu muitos guias de codificação de nível iniciante para Playgrounds, mas depois de algum tempo eu precisava obter informações mais detalhadas e avançadas”, diz Kumar. Ele sentiu que não tinha a experiência de codificação necessária para entender os densos documentos do desenvolvedor. “A principal maneira de aprender a desenvolver aplicativos para iOS foi consultando sites como o Hacking With Swift e também encontrando trechos de código no GitHub.”
Ben Robinson, o jovem desenvolvedor de Anxiety Relief: Find Your Calm , conta uma história semelhante. Ele começou a desenvolver seu primeiro aplicativo adequado para iPhone quando tinha 13 anos, mas já estava aprendendo sobre programação há alguns anos.
“A documentação da Apple parecia bastante intimidadora no início”, diz Robinson. “A menos que eu soubesse exatamente como uma API [interface de programação de aplicativos] funcionava, poderia ser difícil encontrar o componente específico de que eu precisava. Há um salto mental de pensar sobre tudo processualmente para abstrair seu código e usar projetos orientados a objeto/protocolo.”
No início, ele se atolou pensando em tudo o que estava codificando literalmente demais e tentando implementar funções que executavam muitas operações. Mas ele diz que a comunidade de desenvolvedores do iOS apoiou e ofereceu uma riqueza de recursos para usar. Como Kumar, Robinson achou os tutoriais Hacking With Swift de Paul Hudson úteis, pois eles o guiaram por uma variedade de APIs e o encorajaram a construir coisas com eles ao longo do caminho.
“Eu não conhecia nenhum desenvolvedor de aplicativos; quando eu ficava preso, geralmente ficava à mercê de qualquer resposta que pudesse encontrar no Stack Overflow ”, diz Robinson. “Todos os desenvolvedores autodidatas enfrentam esse problema, mas isso também me tornou mais resiliente e independente. Eu me tornei mais confiante pensando logicamente através de problemas quando eles surgem e lidando com eles de forma eficaz.”
Robinson fez uma versão para iOS do jogo de festa Mafia para jogar com seus amigos e espera seguir carreira no setor de tecnologia. “Se você tem uma ideia, vá em frente! Você nunca sabe qual ideia vai decolar”, diz ele como conselho para aspirantes a jovens desenvolvedores. “Se sua ideia o empolgar o suficiente, você sempre será capaz de aprender as habilidades necessárias para torná-la realidade.”
Kumar ecoou esses sentimentos, acrescentando que é melhor começar com vários pequenos projetos focados em coisas nas quais você realmente está interessado. Dessa forma, você aprende rápido e tem mais motivação para terminar. Ele também sugere gastar um bom tempo fazendo um brainstorming e visualizando seu aplicativo antes de começar a codificar.
Quanto ao nosso aplicativo para gatos, estava indo devagar. Meus filhos projetaram ícones obedientemente, compilaram fatos sobre gatos e tentaram decifrar os miados e gemidos de nossos dois gatos, esperando por uma descoberta do tipo Pedra de Roseta que nos permitisse desenvolver um aplicativo capaz de traduzir seus sons. Quando se tratava de codificação, o trabalho pesado recaía cada vez mais sobre mim. Infelizmente, lutei para encontrar tempo e, sinceramente, não sou programador. Meus filhos assistiram a tutoriais e mexeram com o Swift Playgrounds, mas mesmo com exemplos, leva um tempo para entender os conceitos.
Conseguimos montar um aplicativo exibindo fatos sobre gatos e um gerador de citações aleatórias, mas estava ficando claro que nossas habilidades ficaram um pouco aquém de nosso objetivo original. As crianças não ficaram impressionadas, e meus esforços para controlar o recurso rastejante caíram em ouvidos surdos. Quando lancei essa história com otimismo, imaginei uma história otimista e inspiradora do desenvolvimento de nosso aplicativo, e é aqui que você clicaria na App Store para ver nosso resultado moderadamente impressionante. Bem, a realidade morde.
Quando as crianças voltaram para a escola, um aplicativo completo era claramente improvável. Não há uma boa maneira de dizer a alguém que seu projeto está sendo cancelado, mas, no final, fui poupado. O prego final no caixão veio quando meu filho mais novo me informou que alguém já havia feito um aplicativo tradutor de gatos e gentilmente sugeriu que trabalhássemos em um site. E assim, nosso projeto acabou na pilha de sucata (como, sem dúvida, a maioria dos projetos de aplicativos acontece), mas a jornada foi divertida e todos nós aprendemos algo - um novo respeito pelos desenvolvedores de aplicativos que vão longe.
Fonte: https://www.wired.com/story/iphone-app-development-swift-playgrounds/