ao ingressar em um novo projeto ou ler um código-fonte aberto, você deve ter notado que alguns projetos são uniformemente organizados e bem estruturados, enquanto outros são confusos e emaranhados? Se resumirmos os fatores que produzem tal efeito sobre a base de código, nos deparamos com a noção de convenção de código.

Vamos descobrir:

  • o Que são convenções de código?
  • como sua adoção pode resultar em enormes benefícios para o seu projeto?
  • o que é SwiftLint?
  • e quais estilos de código Swift escolher?

definição da Convenção de código Swift

a Convenção de código é um conjunto de prós e contras que descrevem a organização de arquivos, práticas de programação, padrões de design, abordagem arquitetônica, etc. Pode ser um conjunto formal de regras que é seguido por uma equipe, organização ou indivíduo, ou ser tão informal quanto o hábito de aplicar certas práticas de codificação.

o estilo de código é um subconjunto da Convenção de código que rege a formatação de arquivos, como recuo, posição de vírgulas, chaves, capitalização etc. Na Comunidade Swift, a distinção entre os dois geralmente não é feita e o termo comum estilo de código Swift ou às vezes Guia de estilo Swift é usado.

aqui está como as Convenções de codificação podem parecer:

  • nome do arquivo: um arquivo que contém um único tipo deve ter o mesmo nome que o tipo.Limite de comprimento Da Linha: UMA única linha de código não deve exceder 160 caracteres.
  • Nomeação: as variáveis são lowerCamelCase.

por que usar o estilo de código Swift

todo desenvolvedor Swift sabe que a linguagem tem um enorme potencial, o que, por sua vez, pode trazer muita complexidade, tornar o código emaranhado e difícil de ler e manter. Portanto, o objetivo principal do estilo de código Swift é reduzir essa complexidade descrevendo boas e más práticas de escrever código Swift.

por que tornar o código mais fácil de ler é tão importante?De acordo com Robert C. Martin, o tempo que passamos lendo o código é mais de 10x mais do que escrevê-lo. Além disso, estamos constantemente lendo o código existente para escrever o novo.

outra pesquisa de fatos e falácias da Engenharia de Software afirma que 40% -80% do custo total do programa vai para a manutenção.

vamos resumir os benefícios que o Guia de estilo Swift produz:

  • ajuda a entender a estrutura do projeto.
  • melhora a legibilidade do Código.
  • facilita a manutenção.
  • acelera a integração para novos membros da equipe.
  • oferece a possibilidade de dominar as melhores práticas de programação.
  • torna-se uma ferramenta de comunicação entre programadores da comunidade.

devido a um impacto tão grande, as Convenções de codificação são geralmente adotadas por organizações de TI e até comunidades de programação inteiras.

projetar um estilo de código do zero é uma tarefa não trivial e requer esforços consolidados. Felizmente, como desenvolvedores Swift, não precisamos reinventar a roda e podemos utilizar vários guias de estilo Swift existentes.Vamos explorar os estilos de codificação Swift mais proeminentes com mais detalhes.

explorando estilos de código Swift

a definição de bom estilo de código é subjetiva e minha recomendação pessoal é elaborar vários estilos e moldá-los de acordo com as necessidades do seu projeto. A lista abaixo está aqui para ajudar.

1. Swift.org

este guia é um padrão por padrão na Comunidade Swift. Ele consolida o conjunto mínimo absoluto de regras que todo desenvolvedor Swift deve entender e seguir.

o guia se concentra em aspectos fundamentais do Swift API design, que é seguido por todas as estruturas do sistema. Não só isso fará com que seu código pareça orgânico em conjunto com APIs do sistema, mas também tornará mais fácil ler e entender as estruturas do Cocoa.

por si só, Swift.org o estilo de código não é suficiente para fornecer um conjunto abrangente de regras, mas é um ótimo complemento para os outros guias listados abaixo.

Link: Swift.org estilo do Código

2. Google

você normalmente não se depara com ‘Google’ e ‘Swift’ em uma frase, mas não desta vez. O Google, sem dúvida, entende a importância das Convenções de código e cria convenções para todos os principais projetos de código aberto, conforme declarado nos guias de estilo do Google. Meu palpite é que devemos agradecer ao TensorFlow por este guia rápido.

este estilo de código Swift impressiona com sua abrangência. Abrange tantos aspectos que simplesmente listá-los aqui tornaria este artigo duas vezes mais longo.

o que é realmente valioso sobre este guia é que cada ponto é bem fundamentado listando boas práticas de programação que são frequentemente fundamentais para todas as linguagens. Seção de práticas de programação, que eu recomendo ler se você está procurando um guia Swift ou não, realmente brilha neste aspecto.

depois de ler e entender este guia, você encontrará um programador melhor em geral, além de adicionar um monte de truques rápidos ao seu bolso.

Link: estilo de código Swift do Google

3. Ray Wenderlich

a equipe por trás raywenderlich.com é bem conhecido na comunidade iOS e não precisa de uma introdução especial. Da mesma forma que os artigos de Ray, O guia é escrito de maneira clara e compreensível e é especialmente adequado para recém-chegados rápidos

este guia, sem dúvida, atinge os objetivos declarados de ser claro, consistente e breve. Cada regra é seguida por uma explicação completa, raciocínio e um conjunto de exemplos com prós e contras.

o que eu amo neste guia, é que vai além da sintaxe Swift e formatação de código e explica boas práticas de programação, como evitar código não utilizado, explica a diferença entre os tipos de valor e referência, os conceitos de inicialização preguiçosa, controle de acesso, retornos iniciais e muito mais.

no momento em que estou escrevendo este artigo, ele já tem 137 pull requests fechados, o que demonstra que o guia é fortemente apoiado pela comunidade.

Link: Ray Wenderlich estilo de código Swift

4. LinkedIn

o LinkedIn faz um ótimo trabalho no open sourcing de seus componentes internos e os Swift não são uma exceção. Seu guia de estilo Swift existe há mais de 3 anos e incorporou muitas melhorias da comunidade de código aberto e da equipe do LinkedIn.

LinkedIn Swift guide é breve, conciso e bem estruturado. Explicações teóricas curtas são frequentemente fornecidas para entender melhor o raciocínio por trás de certas regras. Os exemplos são sempre autoexplicativos e demonstram claramente o ponto.

o guia se concentra principalmente na formatação de código e eu recomendo usá-lo em combinação com outros estilos de código Swift desta lista.

Link: estilo de código SWIFT do LinkedIn

5. Airbnb

a equipe do Airbnb é bem conhecida por sua valiosa contribuição para a comunidade iOS. No momento em que estou escrevendo este artigo, O Guia de estilo Airbnb Swift tem apenas 1 semana de idade, o que o torna o mais novo desta lista.

desde o início, o guia define o contexto certo, explicando por que você precisa de um estilo de código e concordo completamente com cada ponto.

o guia é um prazer de ler: é bem estruturado e as regras são explicadas com precisão. Onde faz sentido, cada ponto é acompanhado de exemplos de dos e dont e contexto teórico. Quase cada regra é feita lintable com SwiftLint – uma ferramenta analisador estático que será discutido alguns parágrafos abaixo.

eu gosto especialmente de padrões seção onde Airbnb dá conselhos rápidos práticos que eu recomendo para verificar. Por exemplo, prescreve usar valores imutáveis em vez de mutáveis e fornece dicas sobre a definição de enums. Meu favorito é o tratamento de condições inesperadas onde o uso de afirmações, pré-condições e erros fatais é explicado em grande detalhe.

o guia ainda fornece configurações do editor Xcode para satisfazer as regras da seção de formatação que podem ser facilmente aplicadas ser meio de um script.

Link: Guia de estilo Airbnb Swift

Swift Code Linter SwiftLint

somos todos humanos e deliberadamente ou não, todos cometemos erros. Assim, não basta documentar ou concordar verbalmente com as Convenções de codificação Swift. Para minimizar o número de erros, as regras devem ser aplicadas por uma ferramenta automatizada, conhecida como linter.

Linter é um analisador de código estático que encontra erros de programação, bugs, erros de formatação e construções potencialmente prejudiciais.O SwiftLint é o analisador de código Swift mais utilizado que pode ser configurado com base em regras personalizadas. Se você ainda não o estiver usando, recomendo verificar o SwiftLint e começar a usá-lo em seus projetos Swift o mais rápido possível.

a coisa mais importante a entender sobre SwiftLint é que ele não impõe um ‘único estilo verdadeiro’, mas ajuda a ser consistente dentro de um projeto.

resumo

Convenções de código uniformes contribuem muito para a produtividade da programação e sempre queremos ser o mais produtivos possível.

a lista com os estilos de codificação Swift mais notáveis é uma ótima fonte de Práticas Recomendadas do Swift e um ponto de partida para elaborar seu próprio conjunto de Convenções.

o bom estilo de código Swift é subjetivo e deve ser deixado sobre você e a consideração de sua equipe. Uma vez aprovado e documentado, esse estilo se torna um padrão e deve ser consistente em todo o projeto para melhorar a legibilidade, o que resulta em vários benefícios.SwiftLint é uma ferramenta amplamente adotada na Comunidade Swift que ajuda a impor Convenções de codificação. Isso ajuda a evitar erros humanos precocemente e pode ser uma adição valiosa à pilha de ferramentas do seu projeto.

Deixe uma resposta

O seu endereço de email não será publicado.