Vídeo: WWDC 2020 Special Event Keynote — Apple (Novembro 2024)
A Conferência Mundial de Desenvolvedores (WWDC) anual da Apple tem sido o local em que a empresa introduz novas versões de seus sistemas operacionais Mac OS X e iOS, e a versão deste ano não foi exceção. Mas o que mais me destacou foi que a palestra deste ano se concentrou muito mais nos desenvolvedores com uma série de novas APIs e serviços compartilhados, um modelo para a criação de jogos e até uma nova linguagem de programação. Em conjunto, isso é nada menos do que repensar o ecossistema de desenvolvedores da Apple, pois a empresa tenta se posicionar para o futuro. Alguns dos resultados dessa abordagem devem aparecer em aplicativos em breve, mas é provável que o impacto real seja visto ao longo de um período de anos, à medida que os desenvolvedores realmente se sentirem confortáveis com as novas ferramentas.
A maioria dessas ferramentas faz parte do iOS 8, com o CEO da Apple, Tim Cook, dizendo que permitirá que os desenvolvedores "criem aplicativos com os quais nunca haviam sonhado". No total, existem 4.000 novas APIs, de acordo com o vice-presidente sênior de engenharia de software da Apple, Craig Federighi.
Cook disse que a App Store agora possui 1, 2 milhão de aplicativos, com um total de mais de 75 bilhões de aplicativos baixados. Ele disse que houve algumas novas mudanças na loja, facilitando a navegação por aplicativos e a promoção dos desenvolvedores. Entre eles estão os "pacotes de aplicativos" - que permitem que os desenvolvedores ofereçam vários aplicativos a um preço com desconto; vídeos curtos para visualizar aplicativos; e um novo serviço de teste beta chamado Test Flight. Como no iOS 8, ele estará disponível no outono. Juntos, segundo Cook, os novos recursos fazem do iOS 8 o "maior lançamento desde o lançamento da App Store".
De certa forma, a maior mudança filosófica no iOS 8 parece ser uma mudança em direção a uma maior extensibilidade. Atualmente no iOS, todos os aplicativos são executados em suas próprias "caixas de proteção" - permitindo segurança e estabilidade. Mas agora, os aplicativos podem estender o sistema e oferecer serviços para outros aplicativos e executar dentro dessas caixas de proteção. Por exemplo, um aplicativo agora pode oferecer filtros de fotos nos aplicativos Fotos.
Federighi demonstrou como criar uma "planilha de compartilhamento" que funcione no navegador Safari e como o Bing Translate agora pode ser executado como um serviço no navegador, alterando a página de um idioma para outro. Ele também mostrou filtros de fotos de terceiros no aplicativo Photos e widgets do ESPN SportsCenter e eBay no Notification Center.
Federighi também disse que o sistema agora permite teclados de terceiros em todo o sistema e mostrou o Swype como exemplo. Outras extensões expõem a API da câmera pela primeira vez e permitem que aplicativos de terceiros usem o Touch ID, para que os usuários possam usá-lo em itens como compras no aplicativo. (Anteriormente, isso funcionava apenas para o iTunes. É uma opção de pagamento interessante, embora eu tenha ficado surpreso ao não ouvir mais sobre pagamentos na palestra.)
No geral, isso parece uma grande mudança, tornando o iOS de muitas maneiras muito mais flexível. Ainda não é tão flexível quanto o OS X ou outros ambientes de desktop, mas certamente está mais próximo. (Você ainda não tem vários aplicativos na tela ao mesmo tempo, por exemplo.) No geral, ele configura o iOS para ser um ambiente muito mais rico no futuro.
Conexões de Saúde, Casa e Nuvem
As ferramentas com maior probabilidade de causar impacto mais rapidamente são as novas APIs que permitem que os desenvolvedores estendam seus aplicativos existentes.
Isso inclui vários novos serviços que reúnem informações anteriormente disponíveis em aplicativos individuais. Um dos mais importantes é o HealthKit, um local único onde os aplicativos podem contribuir para um perfil composto de sua saúde e boa forma. Hoje, existem muitos dispositivos e aplicativos para fitness e uso médico, mas todos eles vivem em silos. Com o HealthKit, a ideia é que, por aplicativo, você possa especificar quais partes do perfil você deseja que cada aplicativo possa acessar.
Federighi explicou que a Apple está trabalhando com fornecedores como a Mayo Clinic, que permite ao hospital ligar diretamente para um usuário se detectar algo errado, observando os dados de vários aplicativos.
Outra nova ferramenta chamada HomeKit foi projetada para fazer coisas semelhantes para aplicativos que controlam coisas em sua casa, como luzes, travas e termostatos. Isso envolve um protocolo de rede comum que pode controlar dispositivos individuais, ou mesmo vários dispositivos, que a Apple chama de cenas. Isso pode ser integrado à Siri, para que você possa pedir à Siri para preparar sua casa quando voltar depois de um dia no escritório.
Como muitos hoje, se não a maioria dos aplicativos, possuem um componente de nuvem, a Apple lançou o CloudKit, um novo serviço para hospedar aplicativos em nuvem, gerenciando coisas como armazenamento, autenticação e notificações.
Federighi disse que isso seria efetivamente "livre de limites", pois a capacidade seria escalável com o número de usuários. Como não ouvi muitos detalhes aqui, não está claro como isso irá competir com outros provedores de hospedagem em nuvem para desenvolvedores. Mas parecia algo que muitos desenvolvedores vão querer.
Jogos ficam melhores em gráficos 3D
As outras duas áreas trataram mais da criação de aplicativos em um nível mais fundamental. Fiquei um pouco surpreso com quanta ênfase havia na criação de jogos.
Talvez o mais importante deles seja um conjunto de APIs chamado "Metal", projetado para permitir que os designers de jogos escrevam mais diretamente no processador A7 da Apple (e presumivelmente futuros processadores da Apple também), em vez de usar o OpenGL ES, padrão da indústria.
Federighi disse que o Metal reduz drasticamente a sobrecarga do conjunto de instruções e permitiria um desenho até 10 vezes mais rápido e multitarefa eficiente. Entre os desenvolvedores de mecanismos de jogos que estão trabalhando nisso, estão Unity, Crytek, Electronic Arts e Epic Games.
O fundador da Epic Games, Tim Sweeney (acima), demonstrou o Zen Garden, um jogo de demonstração para iPad que usava materiais mais realistas e tinha muito mais animações do que você costuma ver nos jogos para celular. Ele disse que isso será oferecido gratuitamente no iOS 8.
Ultimamente, ouvimos muitos métodos para contornar as APIs mais pesadas do OpenGL ou Direct X, e a entrada da Apple deve permitir jogos mais rápidos e mais ricos em gráficos. Ainda é improvável que veremos os dispositivos móveis obterem os gráficos de jogos de PC de médio ou alto nível em breve, mas é um grande passo à frente.
Para jogos mais casuais, a Apple oferece o SpriteKit, um mecanismo de jogos 2D lançado no ano passado, e agora complementa isso com o SceneKit, que oferece renderização de cenas em 3D.
A vinda de Swift
Por fim, e talvez o mais surpreendente, a Apple introduziu o Swift, uma nova linguagem de programação projetada para substituir o ambiente Objective-C normalmente usado para produzir aplicativos para Mac e iOS.Federighi disse que o Objective-C "nos serviu bem por 20 anos", mas estava na hora de criar uma nova linguagem, que ele descreveu como "Objective-C sem o C." Para a descrição, parece ser uma linguagem moderna e mais rápida, mas que usa o mesmo modelo de gerenciamento de memória e o mesmo tempo de execução, para que o código Swift possa ser executado ao lado de Objective-C e C no mesmo aplicativo.
O diretor de ferramentas de desenvolvedor, Chris Lattner (acima), mostrou o novo ambiente, incluindo uma demonstração de como ele executa seu código à medida que você digita instruções nele. Foi uma demonstração de boa aparência, embora o verdadeiro juiz tenha que ser desenvolvedor da Apple depois de ter tido mais chance de realmente usá-la.
Conheço desenvolvedores que estavam reclamando que o Objective-C não é tão moderno quanto algumas alternativas, embora em geral eu não os tenha ouvido pedir um novo idioma. Ainda assim, a Apple precisava de algo para competir com o conjunto de ferramentas do Google e da Microsoft que foram dramaticamente aprimoradas nos últimos anos, com o objetivo de facilitar a criação de aplicativos móveis e na nuvem.
No total, esse foi um programa que realmente enfatizou o "desenvolvedor" na Worldwide Developers Conference, o que nem sempre foi o caso. A conferência teve um slogan de "Escreva o código. Mude o mundo". Se o mundo vai mudar é uma questão em aberto, mas as ferramentas introduzidas certamente marcam uma mudança na forma como os aplicativos da Apple são escritos.