Será que a Apple está usando a linguagem Swift no código do iOS?

A Apple vem promovendo bastante a Swift, nova linguagem da empresa que foi apresentada na WWDC de 2014 e que há pouco tempo teve o seu código aberto. É inegável que ela está bastante popular entre desenvolvedores, mas como será que está o seu uso internamente?

Recentemente, Craig Federighi foi entrevistado por John Gruber e o bate-papo foi todo sobre a Swift. O chefão do iOS e do OS X falou um pouco sobre a adoção interna da linguagem, dizendo que alguns grupos preferem utilizá-la em seus projetos, mesmo sabendo que a Swift ainda está no começo da sua vida e que ainda tem muito a evoluir.

Swift

Pois o desenvolvedor Ryan Olson resolveu investigar o código do iOS 9.2 para ver o que a Apple utilizou de Swift nele. O veredito? Acredite ou não, apenas o app Calculadora1 já é escrito na nova linguagem.

Durante a sessão Platforms State of the Union, na WWDC 2014, Andreas Wendker (vice-presidente de engenharia de software da Apple) disse:

Então, nós estamos, como vocês provavelmente podem imaginar, muito, muito animados com a Swift. Achamos que ela vai se tornar rapidamente a linguagem de programação de escolha para o nosso próprio código, assim como para os seus apps.

[…] Esta tarde estamos atualizando o aplicativo WWDC, o app que vocês estão usando para se locomover aqui na conferência, com uma versão que usa Swift. Então, essa linguagem está pronta para você usar. É real.

Pois Olson fuçou o app WWDC e descobriu que apenas 6 das 281 classes são escritas em Swift. O aplicativo Apple Store é outro que utiliza a linguagem Swift (para o aplicativo que roda no Apple Watch). Mas é basicamente isso o que temos de Swift no iOS, ao menos até agora — teremos que ver se o iOS 10, que tem tudo para ser apresentado na WWDC deste ano, terá mais novidades nesse sentido.

Não fizemos este artigo com o intuito de detonar a Swift. Os benefícios de utilizar a nova linguagem da Apple já foram amplamente discutidos aqui no site — e o lado negativo também, afinal, é uma linguagem que ainda precisa amadurecer. O que impressiona, aqui, é a velocidade com que a Apple está adotando a sua própria linguagem no iOS (atualmente o principal sistema operacional da empresa, ao menos em número de usuários).

Obviamente não é algo simples “virar a chave” e fazer com que, de uma hora para outra, todos os desenvolvedores/programadores/engenheiros de software da empresa passem a adotar a Swift como linguagem única. Mas ver que apenas os aplicativos Calculadora, WWDC e Apple Store utilizam a linguagem foi um pouco chocante.

Olson, porém, deixou claro que a sua pesquisa envolveu apenas o iOS; em resposta ao post dele no Medium, muitos falaram que o Dock do OS X, por exemplo, já tem muita coisa em Swift. É bem possível que exista muita coisa no OS X, no watchOS e no tvOS escrita em Swift, mas como disse, o iOS não deixa de ser o sistema prioritário hoje dentro da Maçã pelo que o iPhone representa para a companhia.

[via 9to5Mac]

Notas de rodapé

  1. Ainda que não seja todo em Swift, apenas 2 das 22 classes são escritas em Objective-C.
  • Renato Miranda Gonçalves

    Eu esperava que estivesse mais presente, mas deve ser um processo bem trabalhoso e demorado “traduzir”.

  • Jayme Prado

    A calculadora era o mais fácil, devem ter feito como teste de funcionário que estava num processo seletivo…

  • Carlos Frederico

    Na verdade eu achei justamente o contrário: estão é indo rápido demais. Vamos imaginar a seguinte situação: um bando de engenheiros de softwares responsáveis pelo core do iOS/OSX. Sério, vocês acham que esses caras têm quantos anos? Pelo menos para cima de 40 anos. Mas eu não usei a idade deles para justificar a competência, agilidade ou qualquer outro aspecto: eles possuem pelo menos 15 anos ou mais de experiência. Um SO tem milhões de linhas de código. O Swift tem menos de 3 anos em questão de uso intenso. Existem sistemas (que nem são sistemas operacionais) que levam 10 ANOS para serem traduzidos para outra plataforma/linguagem.

    Outro feito aí da Apple foi ter mudado de arquitetura: da PowerPC para a X64. Em questão de agilidade e competência, os caras estão ANOS-LUZ a frente de muitas empresas globais de TI. E não é querer puxar sardinha dela não, é porque quem estuda engenharia de software e/ou possui experiência com isso, sabe como é deveras complexo.

    E é claro que ela vai usar os desenvolvedores para benefício próprio: a comunidade em si é uma puta mão-de-obra para ela, o que não duvido que ela retirou o pagamento anual para quem quer desenvolver mas não quer/não precisa vender/publicar na App Store tenha sido justamente para isso…

  • Rodolfo Nat

    É a famosa frase: “Se tá funcionando pq alterar?” porque vão reescrever algo que está funcionando, testado e sem bug só pra dizer que agora é com a linguagem nova? Será que vale o risco?

  • Leandro Romano

    Eu gosto muito da linguagem Swift e estou escrevendo meu terceiro aplicativo com ela. É importante lembrar que a Swift ainda está crescendo, ganhando novos recursos e se tornando uma linguagem forte para o mercado.
    Gostaria de ver mais aplicativos nativos sendo escritos com a nova linguagem de programação e espero que a Swift evolua cada vez mais! 😀

  • Flávio Maricato

    Concordo, desenvolver software corretamente não é nada fácil.

  • Tuca Gado

    Não há motivo para traduzir tudo, muito trabalho para pouco resultado, acredito que daqui pra frente quase tudo venha em Swift, mas o que já existe vai permanecem em ObjC. Veja aí os sistemas bancários, ainda utilizam COBOL, é inviável migrar.

  • Wanderley Gigante

    Só gostaria de pontuar que anos-luz é medida de distância e não de tempo. Mas concordo com seu raciocino geral.

  • Guilherme Goncalves

    se ele quis fazer uma analogia à uma corrida, por exemplo, citar que um concorrente está a uma certa distância de outra faz todo sentido também…..não?!

  • Guilherme Goncalves

    se o iOS fosse inteiro reescrito pra SWIFT, aposto com vc que nas primeiras versões ele traria muito, mas muito mais bugs do que o atual.

    Não acho que seja otimismo demais. Obviamente não dá pra levar a expressão ao pé da letra, mas é quase inegável que é um dos sistemas embarcado em hardware menos bugado que existe. Ainda mais se for considerar por amostragem, já que o iOS é certamente um dos mais populares, também.

  • Franco

    Eu acho ótimo que eles estejam adotando em uso intensivo, quem sabe eles não tiram os bugs irritantes do Swift. Sério, tira muito do tesão em programar nela.

    Terminei um projeto em Swift, e comecei outro em Obj-c em seguida, cheguei a sentir um alívio em voltar para uma linguagem madura e bem depurada que não te deixa na mão quando você mais precisa.

  • Guilherme Goncalves

    kkkk…ja acho ao contrario….a calculadora deve ser aquele app feito pelos nerds extremos….e pra eles foi relativamente fácil trocar

  • Guilherme Nunes Lemos

    Acredito que ele se referia no que diz respeito a uma “corrida pela tecnologia”, neste caso o anos-luz cabe sim.

  • Rodolfo Nat

    os apps básicos (calculadora, relógio, safari, calendário, lembretes, etc) não apresentam bugs.

  • Wesley S Lauzem

    Aposto que foi aposta…
    “Aquele que demorar mais de corrigir o bug no IOS 9.2 vai reescrever o calculadora”
    Ai você imagina o Cook com um cronômetro na mão, Ive do outro lado da sala gritando ‘Seus Nerds’ Comida espalhada pelo lugar… e umas coisas assim…. Muahahhaha

  • Wanderley Gigante

    Aí sim! Sendo assim está correto. Eu que devo ter interpretado errado.

  • Wanderley Gigante

    Isso aí. Dessa forma faz sim!

  • Copy + Paste no comentário do @obitow:disqus

  • Marco Túlio da S Lima

    Faz sentido. Na própria entrevista do Graig ao John Grubber no podcast do Daring Fireball ele falou que alguns times internos ainda não estavam seguros para utilizar Swift nos projetos grandes. E um sistema operacional é um projeto enorme. A linguagem está evoluindo rapidamente e seria loucura dar manutenção nisso. Acredito que quando Swift chegar a versão 4 teremos maturidade e estabilidade suficiente para que esse tipo de mudança ocorra.

  • Ed

    A linguagem Swift ainda é muito nova para ser usada no desenvolvimento de um sistema operacional.

    Além disso, o atual iOS já funciona muito bem, reescrevê-lo todo em Swift seria um trabalho imenso e insano, e gerando pouco ou nada de valor para o usuário. Então faz mais sentido ir substituindo as partes em ObjC por Swift aos poucos, e enquanto isso a própria linguagem vai amadurecendo mais.

  • Anderson Maciel

    Só um ponto, o OS X teve a transição para x86 de forma rápida porque ele já estava sendo escrito paralelamente para PowerPC e x86. Quando os processadores da Intel ficaram mais rápidos que os da IBM, aí a Apple lançou a versão para Intel.

  • No ponto de vista técnico, é exatamente isso que penso. Porém, ela divulga outra coisa que sabemos que não acontece tão “lindamente”. Pelo Swift ser open-source, acredito que a evolução vai ser bem mais rápida. Vamos acompanhando…

  • Rooney

    Você está correto.

  • thiago

    muita gente pra criticar e corrigir, poucas pra parabenizar pelo raciocínio.

  • Rodolfo Antonici

    Que bugs? A linguagem em si não tem bugs, o que precisa amadurecer é o Xcode em relação à linguagem.

  • Franco

    Sim, abiguinho literal, é o Xcode que apresenta problemas com o Swift.

    —-

    Precisamos descrever nos míiiiinimos detalhes, senão os chatos de plantão vem dar sua opinião.

Aviso: nossos editores/colunistas estão expressando suas opiniões sobre o tema proposto e esperamos que as conversas nos comentários sejam respeitosas e construtivas. O espaço acima é destinado a discussões, debates sobre o tema e críticas de ideias, não às pessoas por trás delas. Ataques pessoais não serão tolerados de maneira nenhuma e nos damos ao direito de ocultar/excluir qualquer comentário ofensivo, difamatório, preconceituoso, calunioso ou de alguma forma prejudicial a terceiros, assim como textos de caráter promocional e comentários anônimos (sem nome completo e/ou email válido). Em caso de insistência, o usuário poderá ser banido.

O MacMagazine faz parte do grupo iMasters, mantido pelas seguintes empresas: