I don't use it for Players, or ServerScriptService, or ReplicatedStorage, or any of that really. Why use it?
It's not necessary in the same way that FindFirstChild
is not necessary. I'm not sure if it's possible any more, but you used to be able to directly rename Services (i.e. game.Lighting.Name = "sasuage"
), which would break all scripts trying to directly access it by assuming its name.
GetService
is simply a 'safer' way to get Services from game
.