Software dev is full of obscure keywords that describe otherwise pretty simple or basic concepts you stumble upon in practice naturally and that you probably already understand.
singleton: a class/object that is designed to be single use, i.e. only ever instantiated with a single instance. Typically used when you use class/objects more for flow control or to represent the state of the program itself, rather than using it to represent data
immutable: read-only, i.e. unchangeable
dependency injection: basically when you pass a function or object into another function object, thereby extending their effective functionality, typically for modular code and to separate concerns.
Here's one more of my favourite examples of such a keyword: memoization
Not necessarily a bad practice if the singleton is immutable, and it’s provided via dependency injection for example.
As a hobby coder: "mmmhm, mmmm, mmhm… I know some of these words!"
Software dev is full of obscure keywords that describe otherwise pretty simple or basic concepts you stumble upon in practice naturally and that you probably already understand.
Here's one more of my favourite examples of such a keyword: memoization
Ahh yes memoization, the complicated way to say "remember this, I might need it again"