Dependency Broadcaster 13

Posted by tottinger Tue, 17 Jul 2007 01:34:00 GMT

I’m not sure if there is already a code smell name for this situation. The idea is rather like “Large Class” or “God Class” but isn’t really related to behaviour. It’s just a matter of dependency.

Michael Feathers refers to “horrible include dependencies”, and that’s the right idea.

So what if you have a class file that includes (or forward-declares) a few hundred other classes, and that class is used by almost every other class in the system?

This is perhaps what comes from writing a very class-rich architectural layer as a single class.

Mainly the idea is that the class takes a lot of ugly dependencies and spreads them evenly over the application. I would call that “broadcasting” although the correct agrarian term is “manure spreader.” I will stick with the less evocative “dependency broadcaster.”

Comments

Leave a response

  1. Avatar
    Sebastian Kübeck about 13 hours later:

    I’d rather call it “Widow Maker”. Whoever is assigned to fix it will inevitably break the whole system…

  2. Avatar
    Steve Lewis about 15 hours later:

    I see this as a type of “Global Hub”

    A Component Global Hub is a structural antipattern for a component that has many global dependencies and many global dependents. A global hub is often affected when anything is changed, and it affects a significant percentage of the system when it changes. Global hubs are undesirable because they indicate fragility and lack of modularity in the system.

    fn1.http://publib.boulder.ibm.com/infocenter/rtnlhelp/v6r0m0/index.jsp?topic=/com.ibm.r2a.archdisc.doc/topics/rstructuralpatterns.html

  3. Avatar
    replica watch rado over 3 years later:

    dsferg

  4. Avatar
    axial fan over 4 years later:

    This article is very usefull for me! I can see that you are putting a lots of efforts into your blog. I will keep watching in your blog, thanks.

  5. Avatar
    Criminal Records over 4 years later:

    This is perhaps what comes from writing a very class-rich architectural layer as a single class.

  6. Avatar
    Tenant Screening over 4 years later:

    This is perhaps what comes from writing a very class-rich architectural layer as a single class.

  7. Avatar
    SEO Firm India over 4 years later:

    Very nice article! Thanks for sharing your thoughts and corporate experiences. Looking forward for updates on this. Will definitely bookmark this for future reference.

  8. Avatar
    mens polos over 4 years later:

    shirts free shipping

    mens polos

  9. Avatar
    Gaylene Mortell over 4 years later:

    I saw this blog through Facebook (a friend of mine posted it). After reading, I clicked like and also shared it myseld. More power.

  10. Avatar
    okey oyunu oyna over 4 years later:

    Gerçek ki?ilerle sohbet ederek okey oyunu oyna ve internette online oyun oynaman?n zevkini ç?kar.

  11. Avatar
    ysbearing over 4 years later:

    Slewing bearing called slewing ring bearings, is a comprehensive load to bear a large bearing, can bear large axial, radial load and overturning moment.

  12. Avatar
    Learn Spanish Language FREE over 5 years later:

    I will keep watching in your blog, thanks.

  13. Avatar
    backup iPhone sms over 5 years later:

    Well. Though I am not a good application developer. And I need do more hard work to improve myself. When I come to here. I know that I have come to the right place to learn something I need. Thanks for your good advice. And I will do the practice as possible as I can. Thanks.

Comments