• The Cuuuuube@beehaw.org
    link
    fedilink
    English
    arrow-up
    15
    ·
    1 year ago

    Java devs have some of the worst habits when they learn a new language. Why create a global variable for a setting in python when you can instead wrap that global variable in a Singleton class that makes using it no safer, and far more complicated

    • Jummit
      link
      fedilink
      arrow-up
      8
      ·
      1 year ago

      Actually, I like encapsulating global state in a structured and documented construct. But I guess I could see Java developers going overboard with abstraction in an imperative language.

      • Knusper@feddit.de
        link
        fedilink
        arrow-up
        6
        ·
        1 year ago

        I think, the point is that in Python (like Rust) that construct is a module. In Java, a module does not exist in that sense. You put everything into classes in Java and static classes, i.e. singleton objects, are what you use instead of modules…

        • Jummit
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Interesting, that definitely makes sense!

      • The Cuuuuube@beehaw.org
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        There are good reasons to do singletons in python. But your first instinct shouldn’t be to jump straight to one