DEV Community

Discussion on: While vs for

Collapse
 
gabriela profile image
Gabi

Hi, in this case i find the for loop way more developer friendlier and easier to understand. Thanks for sharing this.

Collapse
 
elasticrash profile image
Stefanos Kouroupis

I am trying to understand as to why is a for loop friendlier than a while loop

because to I've heard a similar thing for switches in the past compared to ifs

Collapse
 
fnh profile image
Fabian Holzer

I don't think the code comprehension problems have anything to do with the type of loop, but with the density of the code. If I look at the while loop you wrote, I do not only see a condition, but also up to two side effects (depending on whether or not the evaluation is short-circuited). This single line has up to four different responsibilities.

I actually think a while loop is the more suitable option, but maybe the introduction of one or two explanatory variables could enhance readability a lot.

Thread Thread
 
elasticrash profile image
Stefanos Kouroupis

Code comprehension though is not always a objective term. Sometimes it heavily depends on a person's perception. Throughout my career I've seen different styles of coding and I tend to accept them.

In this case they felt that for is more readable so I let them change it (for me it's tom[a]to, tomat[o]). Now if they chose, to do it with recursion, again I wouldn't object to it.

Recursion is another fine example of a style. Some people love it, it make sense to them. Others are afraid of it.

once we had a guy that only wrote decrementing-for-loop...nowadays everyone hates his legacy code. But if you ask me...they get stuck at details and not the big picture, and the big picture is that he code was a freaking masterpiece. Sometimes hard to read, but he wrote the most resilient consumer services I've ever seen.