• magic_lobster_party@kbin.social
    link
    fedilink
    arrow-up
    12
    ·
    edit-2
    2 年前

    I’ve seen code that look like this:

    int delay = 15 * 60; // 10 minutes

    Even if the comment was on the same line someone forgot to update it. People just ignore comments.

    Better solution is to write (in C#):

    TimeSpan delay = TimeSpan.FromMinutes(15)

    Much more obvious what the code actually means.

    • 18107@aussie.zone
      link
      fedilink
      arrow-up
      8
      ·
      2 年前

      A better comment would be delay in seconds as that is the one thing not obvious from glancing at the code.

      • magic_lobster_party@kbin.social
        link
        fedilink
        arrow-up
        13
        ·
        2 年前

        Or just name the variable delaySeconds if you really want to store it as an int. Bonus is that every use of the variable perfectly communicates what it is.

    • CCatMan
      link
      fedilink
      arrow-up
      1
      ·
      2 年前

      Is the better way is a runtime performance hit. Does the compiler optimize this?

      • magic_lobster_party@kbin.social
        link
        fedilink
        arrow-up
        1
        ·
        2 年前

        It’s probably a little bit slower, but there are other things more worth to optimize than to shave off a few microseconds from a 15 minute delay.

        • CCatMan
          link
          fedilink
          arrow-up
          2
          ·
          2 年前

          Yeah, it adds up eventually when working with embedded platforms, but for PC stuff I agree.