The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

    • RT @EvaKestemont: Gezocht voor een vriendin met pech en een zware revalidatie: iemand die enkele maanden bij haar en haar lief en baby wil… 5 hours ago
    • RT @steve_asbell: My therapist said “Why did you get an autism diagnosis? You’re more than a label!” I told him “I have ALWAYS been labele… 5 hours ago
    • @Zangstem Ik duim dat je oud wordt. In goede gezondheid. 5 hours ago
    • RT @JasonErvD: Weet je van die docenten die de cijfers van de hele klas voorlezen of projecteren op het digibord? Moet echt stoppen. Is ec… 5 hours ago
    • RT @IanColdwater: I don't know why keynoting in front of 10,000 people feels less weird than this, but here we are 👩🏻‍💻 https://t.co/25ShsH… 9 hours ago
  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,821 other followers

If you have a gripe with nested if-then-else statements in any language, then usually it’s time to refactor some code…

Posted by jpluimers on 2019/12/10

Every time I run into complex nested if/then/else statement in any language with truckloads of code blocks, it usually means it is time to refactor in two steps:

  1. the code blocks into separate methods
  2. the decisions and methods into a polymorphic structure

Of course this adds some overhead, but usually you end up with code that is easier to unit-test and understand both the overall structure and detailed implementations of.

I’m all for language enhancements that allow deeply nested logic to be more manageable (for instance by enhancing a case construct), but usually refactoring makes that less of a need and more of a nice to have.

Via: [WayBackAnybody else have a gripe with nested if-then-else statements in Pascal? What if we had the following statement/syntax available in Pascal? … – Gerhard Venter – Google+

–jeroen

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

 
%d bloggers like this: