SwiftUI: a nova ferramenta da Apple para construção de interface em apps

Andrew Castro
Mar 4 · 4 min read
Image for post
Image for post

Introdução

A Apple surpreendeu a todos na WWDC 2019 quando anunciou o SwiftUI, um novo framework que permite criar interfaces de usuário em todas as plataformas da Apple com o poder do Swift.

Sintaxe Declarativa

O SwiftUI usa uma sintaxe declarativa para que o desenvolvedor deixe mais claro o que a interface de usuário deverá fazer. Por exemplo, uma lista de itens que consiste em campos de texto, bem como o alinhamento, a fonte e a cor de cada campo. O código está bem mais simples e fácil de ler, poupando tempo e manutenção.

Image for post
Image for post

Pontos de atenção:

O termo é Opaque Return Type, que é uma função ou método com um tipo de retorno oculto, não é preciso declarar qual é o tipo concreto que será retornado.

O primeiro componente que será retornado dentro do body é uma lista, mas sem o famoso return, já sendo utilizado em closures.

O @State cria um tipo de trigger, observando o valor para atualizar a View, sem ter que chamar algum método para fazer isso.

Prós

Contras

Storyboard vs SwiftUI

As imagens abaixo mostram a diferença entre um código que implementa a seguinte funcionalidade: Um botão que controla a visibilidade de um campo de pesquisa.

Storyboard:

Image for post
Image for post

SwiftUI:

Image for post
Image for post

O código em SwiftUI é muito menos “verboso”, mais simples de se entender e de se escrever, enquanto o código da Storyboard é tem uma sintaxe mais complexa da se entender.

Levando em conta que sempre é recomendado a escrita simples e de fácil entendimento, o SwiftUI leva vantagem.

Conclusão

Sempre leve em consideração a viabilidade de aplicar SwiftUI no seu projeto. Hoje, alguns aplicativos têm uma base muito grande de usuários com iOS inferior ao 13, então vale a pena perdê-los?

A sua equipe está disposta a correr o risco de aprender uma tecnologia relativamente nova?

Levante os pontos de discussão para a aplicação do SwiftUI e preste atenção nos riscos! Na teoria, SwiftUI é maravilhoso, mas no momento da implementação nem tudo será um mar de rosas.

Meu nome é Andrew Castro, sou Desenvolvedor iOS e busco sempre aprender e compartilhar conhecimento com todos. Sou da filosofia que você deve fazer tudo por paixão e diversão.

Caso tenha alguma dúvida, é só comentar ou entrar em contato por aqui. Abraço!

Image for post
Image for post

A Mobicare e a Akross combinam os Melhores Talentos, Tecnologias de Ponta, Práticas Agile e DevOps com Capacidades Operacionais avançadas para ajudar Operadoras Telecom e grandes empresas a gerarem novas receitas e a melhorarem a experiência dos seus próprios clientes.

Se você gosta de inovar, trabalhar com tecnologia de ponta e está sempre buscando conhecimento, somos um match perfeito!

Faça parte do nosso time. 😉

mobicareofficial

Se você gosta de inovar, trabalhar com tecnologia de ponta…

Andrew Castro

Written by

iOS Developer For Fun

mobicareofficial

Se você gosta de inovar, trabalhar com tecnologia de ponta e está sempre buscando conhecimento, somos um match perfeito! Vem trabalhar com a gente 😉 bit.ly/mobicarreiras

Andrew Castro

Written by

iOS Developer For Fun

mobicareofficial

Se você gosta de inovar, trabalhar com tecnologia de ponta e está sempre buscando conhecimento, somos um match perfeito! Vem trabalhar com a gente 😉 bit.ly/mobicarreiras

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store