CIOs devem apostar na nova linguagem de programação da Apple?

Author Photo
6:22 pm - 27 de junho de 2014
CIOs devem apostar na nova linguagem de programação da Apple?
As equipes de TI estão lutando para descobrir o que a Swift, nova linguagem de programação da Apple, pode impactar em sua estratégia de apps móveis, a partir da perspectiva do desenvolvimento e das potenciais vantagens que ela pode trazer para os negócios. Como era de se esperar, há um certo ceticismo de especialistas de TI que relutam em acrescentar mais uma ferramenta ao mix. E, há algum ressentimento por ela ainda estar presa à plataforma de propriedade da Apple. 

Mas para a maioria, muitos desenvolvedores mobile vão dar pulos de alegria quando começarem a apertar as porcas e parafusos da Swift. 

Por que toda essa animação? Com o lançamento da Swift, a Apple promete que os aplicativos móveis desenvolvidos por programadores iOS e OS X vão rodar mais rápido e de maneira mais suave do que os aplicativos desenvolvidos com Objective-C, a linguagem de programação de 20 anos de idade atualmente utilizada pela maioria dos desenvolvedores da plataforma Apple. Uma opção mais moderna, a Swift tem características de linguagens como JavaScript e oferece o “poder da Objective-C, sem o C” para criar um novo nível de interatividade na plataforma iOS. Isso faz da Swift uma ferramenta robusta de desenvolvimento para aplicativos de redes sociais e jogos 3D. 

Alguns ainda duvidam desse argumento da, especialmente porque  a Swift é considerada uma linguagem “amigável”. No entanto, há muito mais coisas em questão quanto à velocidade de uma linguagem que vai além da sintaxe; por exemplo, a eficácia do compilador e o tipo de execução têm impacto significativo na velocidade. Com a Swift, a Apple tem pleno controle da linguagem e incluiu novas funcionalidades que permitem otimizações mais eficientes dentro do compilador LLVM. Tudo isso faz o código binário rodar mais rápido e mais eficiente. Por exemplo, os desenvolvedores Swift podem especificar que todos os objetos são do mesmo tipo, de modo que quando voltarem neles, não precisarão fazer chamadas adicionais para verificar antes o tipo de classe, assim como fazem ao usar Objective-C. 

A Swift também inclui elementos de programação funcional e orientada para objetos. Por exemplo, ela acrescenta camadas adicionais de abstração que suportam a reutilização de código em um nível que não era possível anteriormente. Desenvolvedores que encaram a complexidade da C e Objective-C como uma barreira de entrada poderão contar com um caminho mais fácil. Desenvolvedores de JavaScript, Python e Ruby vão reconhecer algumas semelhanças dessas linguagens de programação com a Swift. Para impulsionar o potencial de preenchimento de código e documentação acessível do Xcode, os desenvolvedores que vêm dessas linguagens deverão ter a Swift instalada e rodando em nenhum momento. 

Além disso, considerando que a nova linguagem da Apple foi desenhada para APIs da Apple, Cocoa e Cocoa Touch, desenvolvedores iOS poderão usar expressões compactas mais facilmente ao escrever códigos para a criação de aplicativos. Ao escrever códigos para jogos ou aplicativos tradicionais, muitas vezes há muitos códigos repetitivos na forma de configuração do loop ou modificação em massa. A Swift traz elementos funcionais sensíveis, reduzindo tempo e gastos com essas operações.  

Resumindo, ela pode ser uma boa notícia para empresas que desejam oferecer aplicativos móveis estratégicos de uma forma eficiente em termos de tempo e custo. 

Como parte do lançamento da Swift, a Apple incluiu algumas funcionalidades para garantir essa velocidade, como o Playgrounds, que proporciona um ambiente REPL (read-eval-print loop) com feedback desenvolvedor e de depuração significativo que não estará disponível para os desenvolvedores de Objective-C. Mesmo que a Swift possa ser rodada ao lado de Objective-C e C na mesma aplicação, o recurso Playground oferece um preview do que está sendo programado ao olhar constantemente para o código e avaliá-lo, sem a necessidade de compilação. Durante o anúncio da Swift na WWDC, o CEO da Apple Tim Cook demonstrou como um desenvolvedor poderia visualizar uma trajetória de voo de um dirigível em tempo real através apenas de ajustes de algumas linhas de código. 

Então os dias estão contados para a Objective-C? Não necessariamente. Alguns problemas de desenvolvimento mobile ainda são melhor resolvidos pela Objective-C ou C; por exemplo, a manipulação de dados brutos, como em formato binário. Além disso, há 275 mil desenvolvedores iOS registrados somente nos Estados Unidos, sendo que a maioria deles está familiarizada com a Objective-C. Alguns podem mudar para a Swift, mas a maioria vai continuar desenvolvendo a partir da linguagem que já conhecem e confiam. 

Além disso, os desenvolvedores que utilizam Swift ainda precisam dominar Objective-C para escrever aplicativos, uma vez que existe uma enorme coleção de APIs e bibliotecas que são escritas em Objective-C (incluindo Cocoa da Apple e Kit UI). 

As oportunidades apresentadas pela Swift lembram quando a Microsoft lançou a C#, uma linguagem de programação multiparadigma construída sobre a sintaxe e a semântica de C++ para permitir que programadores C aproveitassem os benefícios da .NET e o tempo de execução comum. 

Na época, a Microsoft impulsionou a aceitação da linguagem e, seja pelo design ou pela circunstância, a atenção que ela deu à C# afetou negativamente os desenvolvedores que usavam a sua linguagem anterior C++, o que não foi muito agradável para eles. À medida que novas ferramentas C#, como Visual Studio, foram lançadas no mundo de desenvolvimento de software que estava em expansão, a turma C ++ foi deixada de lado.  

O grande ponto de atenção com a Swift é que este cenário poderia se repetir, desta vez com os desenvolvedores de Objective-C se definhando. 

Ainda não é possível dizer sobre as implicações da Swift até que os desenvolvedores tenham a chance de usar a nova linguagem e sentir os verdadeiros ganhos de produtividade. Mas os CIOs devem incentivar equipes desenvolvedores a darem a conheceram a nova aposta da Apple. A empresa adicionou funcionalidades, tais como fechamentos, modelos genéricos e parâmetros padrão, pelas quais desenvolvedores de Objective-C há muito esperavam. Esses recursos melhoram a expressividade da linguagem e permitem aos desenvolvedores escrever código de uma forma mais concisa e compreensível.

Inicialmente o impacto poderá não ser grande, mas com o tempo, espera-se resultados positivos à medida que a comunidade de desenvolvimento descubra novas maneiras de resolver problemas usando Swift. 

A partir de uma perspectiva de negócios, Swift pode ser relativamente nova, mas já tem grande apoio e bibliotecas. Há obviamente riscos inerentes, como o fato de que linguagens novas ainda despertam dúvidas. 
Tags:

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.