CodeSOD: Suspicious Contents

This post was originally published on this site

The Daily WTF

While poring through some VB .Net code, John noticed some odd things in their datamodel. For example, a different process would scan files, and log any “suspicious” files into a database. The program John supported would then report on that data.

One of their classes had a property which looked like this:

Public ReadOnly Property SuspectedItem As SuspectFileDataItem Get Return Me End Get End Property

Now, there are many reasons why a method might return a reference to the instance- builder patterns are often a nice way to describe things in code. But a property returning its own instance, well… that doesn’t make sense at all. “Give me the thing I already have.”

It didn’t help that it was also used: item.SuspectedItem.someProperty() was scattered all through the codebase.

Then again, perhaps this code is self describing. I suspect a lot of things about this item. I also have some

To read the full article click on the 'post' link at the top.