I’m trying to make minesweeper using rust and bevy, but it feels that my code is bloated (a lot of for loops, segments that seem to be repeating themselves, etc.)

When I look at other people’s code, they are using functions that I don’t really understand (map, zip, etc.) that seem to make their code faster and cleaner.

I know that I should look up the functions that I don’t understand, but I was wondering where you would learn stuff like that in the first place. I want to learn how to find functions that would be useful for optimizing my code.

  • @[email protected]
    link
    fedilink
    186 months ago

    Experience is the best teacher. Keep writing code, revisit old code and rewrite it.

    Also, is worth knowing when not to optimise. Code you can read is code you can maintain, and some optimisations are not as readable.

    Learn how to use a profiler. Its a bit of an artform, but learning to interpret the results will help you find slow code sections. It’ll also help you determine if your optimisations are actually worthwhile. Measure first, optimise second.

    • @hactar42
      link
      76 months ago

      Also, is worth knowing when not to optimise. Code you can read is code you can maintain, and some optimisations are not as readable.

      This is one of my biggest pet peeves. So many people want to equate the number of lines as a sign of how well it’s programmed. But all they really do is chain a bunch of stuff together that makes it harder to debug.

      • @[email protected]
        link
        fedilink
        56 months ago

        Annoys me as well. Blind optimisation is just busy work, you need to know what your optimising for.

        And less lines != better performance.

      • Baldur Nil
        link
        fedilink
        26 months ago

        “Any improvements made anywhere besides the bottleneck are an illusion” (Gene Kim)