A anotação de métodos do ciclo de vida do Unity com o UsedImplicitly
atributo melhora a legibilidade do seu código?
Por exemplo:
public class Example : MonoBehaviour
{
[UsedImplicitly]
private void Awake()
{
DoSomething();
}
private void DoSomething()
{
// ...
}
}
Esta postagem no blog "Estruturando seus comportamentos de unidade" sugere essa abordagem como uma convenção útil.
- Anote quaisquer métodos do ciclo de vida do Unity (Iniciar, Despertar, Atualizar, OnDestroy etc.), métodos de eventos e outras funções que são implicitamente (ou automaticamente) invocadas no seu código com o atributo [UsedImplicitly]. Esse atributo, embora incluído no UnityEngine.dll, é usado pelo ReSharper para desativar as sugestões de limpeza de código para métodos que aparentemente não são referenciados. Também ajuda a facilitar a leitura do código para as pessoas mais novas no Unity e na sua base de código, especialmente para eventos referenciados pelo inspetor.
(Observação: não acho que o ReSharper mostre sugestões de limpeza de código para métodos de ciclo de vida do Unity aparentemente sem referência, de modo que possam ser conselhos desatualizados.)
Concordo com o post acima que poderia ser útil para os mais novos no Unity. Eu também acho que poderia ser útil para rotular essas funções de ciclo de vida da unidade que não são utilizados tão frequentemente como Awake
, Start
, e Update
. Mas estou pensando se essa é realmente uma boa convenção para "código limpo" ou se é apenas ruído que reduz a legibilidade.