Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 999593
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T07:22:44+00:00 2026-05-16T07:22:44+00:00

There is a website (called the Anti-if campaign) that talks about how to replace

  • 0

There is a website (called the Anti-if campaign) that talks about how to replace big nested if-statements with something more maintainable (through the use of a ‘bond class’ see example). I understand the concept, but I don’t know how to implement it (even with the example).

Question:
May I get a concrete example of how to implement this (ie, the bond class)? – it has been bugging me for some time now. Java is my preference, but any examples are welcome.

note
I have found one more article on this in stack overflow here

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T07:22:44+00:00Added an answer on May 16, 2026 at 7:22 am

    This special technique to avoid if-else-if constructs like shown in the example on that campaigns website can be found in in Clean Code by Robert C. Martin. If you follow his basic advices, you don’t need to join the campaign 😉

    The example at the referenced page looks dramatic mainly because the code is poorly formatted. This is how it should look like:

    // Bond class
    double calculateValue() {
      if(_type == BTP)  { 
        return calculateBTPValue();
      } else if(_type == BOT) { 
        return calculateBOTValue();    
      } else {
        return calculateEUBValue();
      }
    }
    

    The recommendation is to replace the condition with polymorphism, which isn’t even the best ideas. A better design is to use composition:

    public interface BondType {
      public double calculate();
    }
    
    public class BOT implements BondType { 
      //...
    }
    
    public class Bond {
      private BondType type;
      public Bond(BondType type) {
        this.type = type;
      }
      public doublce calculateValue() {
        return type.calculate();
      }
    }
    

    Here we got rid of the conditions and delegated the calculation to a new type class.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Is there a website that lists all of the publicly available JQuery plugins? Also,
Does there exist a website service or set of scripts that will tell you
I'm wondering if there is a website that collects (and hopefully updates) information on
Are there any good books or website that go over creating a JTable ?
Assume there is a website called http://example.com/a the website is being developed using PHP,
Lets say there is a website called www.hello.com So what really is www -
I have a parent table called 'Website' which holds records about websites. I have
I have a Section in my website called Recent Updates. in that I will
There is a website called: Engrade.com. It's pretty cool, you can monitor what your
there is this awesome website called www.engrade.com. You can get your grades from the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.