Primeiro fecha a tela atual. openScreen
faz parecer que a tela anterior permanece aberta e setScreen(null)
faz mais sentido do que openScreen(null)
.
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.
Comentários muito úteis
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 )