29

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.

you are viewing a single comment's thread
view the rest of the comments
[-] CameronDev@programming.dev 18 points 5 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@lemmy.world 7 points 5 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.

[-] balder1993@programming.dev 2 points 5 months ago

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

load more comments (1 replies)
load more comments (1 replies)
this post was submitted on 13 Jun 2024
29 points (100.0% liked)

Learn Programming

1616 readers
1 users here now

Posting Etiquette

  1. Ask the main part of your question in the title. This should be concise but informative.

  2. Provide everything up front. Don't make people fish for more details in the comments. Provide background information and examples.

  3. Be present for follow up questions. Don't ask for help and run away. Stick around to answer questions and provide more details.

  4. Ask about the problem you're trying to solve. Don't focus too much on debugging your exact solution, as you may be going down the wrong path. Include as much information as you can about what you ultimately are trying to achieve. See more on this here: https://xyproblem.info/

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 1 year ago
MODERATORS