• astrsk@fedia.io
    link
    fedilink
    arrow-up
    0
    ·
    2 months ago

    Properties are great when you can cache the computation which may be updated a little slower than ever time it’s accessed. Getter that checks if an update is needed and maybe even updates the cached value then returns it. Very handy for lazy loading.

    • nous@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      Functions can do all this. Computed properties are just syntactic sugar for methods. That is it. IMO it makes it more confusing for the caller. Accessing a property should be cheap - but with computed properties you don’t know it will be. Especially with caching as your example. The first access can be surprisingly slow with the next being much faster. I prefer things to not do surprising things when using them.