Yarn: MinecraftClient.openScreen -> setScreen

Criado em 21 jul. 2020  ·  10Comentários  ·  Fonte: FabricMC/yarn

Primeiro fecha a tela atual. openScreen faz parecer que a tela anterior permanece aberta e setScreen(null) faz mais sentido do que openScreen(null) .

refactor

Comentários muito úteis

setScreen faz com que pareça um setter simples

O objetivo de um setter, e não apenas de um campo, é ter uma lógica extra executada quando o campo é definido (se essa lógica extra já estiver presente ou você deseja ter a possibilidade de adicioná-la no futuro sem quebrar o código que está configurando o campo )

Todos 10 comentários

Sim, faz todo o sentido para mim. Sempre existe apenas um deles.

sim, ele troca de tela também, então setScreen é realmente melhor

Não sou fã dessa mudança, realmente. setScreen faz com que pareça um setter simples, mas se o consenso for ir em frente ... ok

Ou present / display / show ?

Se seguirmos as sugestões de Liach, nesse ponto parece que estamos mudando o nome pelo bem de mudar os nomes

Lol caso contrário, você precisa derivar um que agrade shartte

setScreen faz com que pareça um setter simples

O objetivo de um setter, e não apenas de um campo, é ter uma lógica extra executada quando o campo é definido (se essa lógica extra já estiver presente ou você deseja ter a possibilidade de adicioná-la no futuro sem quebrar o código que está configurando o campo )

@liach Nah, não precisa me agradar. Não acho que isso seja _particularmente_ importante e acho que o nome atual está bom, mas renomeá-lo setScreen não é o fim do mundo :-D

Outra sugestão: switchScreen

switchScreen(null) ainda faz todo o sentido e não tem o problema de parecer um setter ou uma operação reversível.

Se seguirmos as sugestões de Liach, nesse ponto parece que estamos mudando o nome pelo bem de mudar os nomes

Achei que fosse esse o problema aqui? Acho openScreen muito confuso, passo uns bons cinco minutos procurando um closeScreen , lastScreen ou popScreen . Os objetos que têm open devem ter pelo menos close .

present / display / show poderia potencialmente ter o mesmo problema, embora seus inversos não sejam tão universais ( destroy , conceal , hide ).

setScreen está bem, entretanto, já que os setters podem ter mais código do que apenas field = param . O Yarn já chama muitos configuradores mais longos setX , embora eles façam mais do que apenas definir o valor de um campo.

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

Questões relacionadas

Juuxel picture Juuxel  ·  5Comentários

asiekierka picture asiekierka  ·  3Comentários

Boundarybreaker picture Boundarybreaker  ·  3Comentários

ChloeDawn picture ChloeDawn  ·  6Comentários

Runemoro picture Runemoro  ·  3Comentários