922
you are viewing a single comment's thread
view the rest of the comments
[-] idunnololz@lemmy.world 74 points 1 year ago

Just create a global object and stuff your variable in there. Now you have a global singleton and that's not a purely bad practice :D

[-] Techmaster@lemm.ee 48 points 1 year ago

Just call it "state management" and nobody will even care.

[-] magic_lobster_party@kbin.social 35 points 1 year ago

Not necessarily a bad practice if the singleton is immutable, and it’s provided via dependency injection for example.

[-] wreckedcarzz@lemmy.world 0 points 1 year ago

As a hobby coder: "mmmhm, mmmm, mmhm... I know some of these words!"

[-] SkyNTP@lemmy.ml 1 points 1 year ago* (last edited 1 year ago)

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

[-] mdk_@lemmy.world 13 points 1 year ago

So you saying, just the tip?

[-] xmunk@sh.itjust.works 9 points 1 year ago* (last edited 1 year ago)

Real enterprise programmers know that everything should be on the stack... so they declare a List《void*》 in main.

[-] idunnololz@lemmy.world 8 points 1 year ago

But we might need to add more features in the future so it might not just be a list in a few years. Better encapsulate it in a few layers of abstractions just to be safe.

[-] manapropos@lemmy.basedcount.com 7 points 1 year ago

Real enterprise programmers know you can get another job in the next year or two so fuck best practice

[-] z3rOR0ne@lemmy.ml 2 points 1 year ago

Ah yes. Global Objects, AKA the thinnest of condoms, lol.

I do this all the time in Python by creating a class like

class Core:
    foo = "bar"
[-] ryannathans@aussie.zone 3 points 1 year ago

That's not immutable nor a singleton

[-] xmunk@sh.itjust.works 4 points 1 year ago

That makes it inherently multithread compatible!

this post was submitted on 08 Oct 2023
922 points (96.4% liked)

Programmer Humor

19315 readers
94 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS