• DarthFrodo@lemmy.world
    link
    fedilink
    arrow-up
    15
    ·
    1 year ago

    The neat thing is, you can add stuff like range checks and logging for getters and setters without changing every call. Separation of concerns is also vital in larger projects.

  • alokir@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    Wait until you hear about the concept of properties in languages like Javascript, C#, Kotlin and many others.

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

      At least for Kotlin it’s literally just syntactic sugar for getter and setter methods. I really like them, don’t get me wrong, but it’s just the bottom approach masquerading as the top approach

  • watermelonsushi@lemmy.fmhy.ml
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    I love dart’s approach to getter and setter methods… They let you define methods labelled explicitly as “get” or “set” methods that you can call without writing the parentheses. So the call looks like accessing a member variable, but internally it can handle additional functionality like logging or validation or whatever you want. So the syntax would look like the first example in the meme, but with all the benefits of the second example. I wish more languages would incorporate this