Swift-style-guide: Uso de si mesmo

Criado em 20 nov. 2017  ·  5Comentários  ·  Fonte: raywenderlich/swift-style-guide

Olá,

Em primeiro lugar, obrigado por montar um guia de estilo para seguirmos. Acho que é ótimo e muito útil de várias maneiras.

No entanto, eu mesmo estou defendendo a possibilidade de usar explicitamente self para referir-se a uma variável local ou chamar uma função. Meu ponto é que devemos usá-lo, porque pode ser mais claro se algo está dentro de uma classe (localmente) ou não (globalmente, singletons, etc.) apenas observando o destaque de cor.

Embora o suporte Swift se refira implicitamente a self , isso provavelmente não significa necessariamente que seria a prática recomendada?

Comentários muito úteis

Minha opinião: se você precisa de si mesmo para ver se algo é local ou uma variável de instância, então seu método ou sua classe é muito grande.

Todos 5 comentários

Minha opinião: se você precisa de si mesmo para ver se algo é local ou uma variável de instância, então seu método ou sua classe é muito grande.

Para mim, reconhecer que você tem uma autocaptura explícita em fechamentos é muito valioso para esconder com um estilo que usa o self em todos os lugares.

Dito isso, este navio já partiu para o guia de estilo RW. Seria necessária uma grande mudança de opinião para derrubá-lo.

@hollance @rayfix
Obrigado pela resposta.

Meu pensamento é que, quando as pessoas se juntam a uma equipe com uma base de código relativamente grande, ou revisam o código de outros, o uso explícito de self tornará as coisas muito mais fáceis de seguir, especialmente quando as pessoas na equipe têm vários níveis de codificação Habilidades.

Eu pessoalmente não consigo ver (ou não vi) o valor de ter uma autocaptura explícita em encerramentos. Pelo contrário, usar apenas self explicitamente em encerramentos torna o estilo de codificação um pouco inconsistente.

Concordo com o raciocínio da Apple por trás da rejeição do SE-0009 Require self para acessar membros da instância .

_ * Obrigatório “self”. apresenta uma quantidade significativa de verbosidade que não se justifica com clareza adicional. Embora seja verdade esse "eu" obrigatório. pode evitar uma classe de bugs, o custo de eliminá-los é bastante alto em termos de desordem visual, o que vai contra a sensação geral de organização do Swift. Paul Cantrell colocou isso bem em sua análise https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151214/002910.html quando disse: “ qualquer coisa que é amplamente repetida torna-se invisível ”. O Swift visa evitar esse clichê e repetição em seu design, um princípio também adotado pelas Diretrizes de Design da API Swift https://swift.org/documentation/api-design-guidelines.html ._

É melhor tentar melhorar a clareza escrevendo métodos e classes menores (como @hollance também sugeriu). O uso de self em fechamentos faz mais sentido para mim por causa da referência fraca / forte de si mesmo.

Ei @RobertGummesson ,

Obrigado por adicionar a referência. Concordo totalmente com o que é mencionado, que expressa uma perspectiva mais neutra de usar ou não self. explicitamente e explica os prós / contras.

Para mim, a expressão "evite usar self " é um pouco forte. Como RayWenderlich tem uma influência significativa na comunidade, acho que seria mais apropriado explicar os prós / contras no guia de estilo e deixar que os desenvolvedores decidam por si próprios.

Esta página foi útil?
0 / 5 - 0 avaliações