CodeSOD: Objectifying Yourself

Date:

Share:

"Boy, stringly typed data is hard to work with. I wish there were some easier way to work with it!"

This, presumably, is what Gary's predecessor said. Followed by, "Wait, I have an idea!"

public static Object createValue(String string) {
	Object value = parseBoolean(string);
	if (value != null) {
		return value;
	}

	value = parseInteger(string);
	if (value != null) {
		return value;
	}

	value = parseDouble(string);
	if (value != null) {
		return value;
	}

	return string;
}

This takes a string, and then tries to parse it, first into a boolean, failing that into an integer, and failing that into a double. Otherwise, it returns the original string.

And it returns an object, which means you still get to guess what's in there even after this. You just get to guess what it returned, and hope you cast it to the correct type. Which means this almost certainly is called like this:

boolean myBoolField = (Boolean)createValue(someStringContainingABool);

Which makes the whole thing useless, which is fun.

Gary found this code in a "long since abandoned" project, and I can't imagine why it ended up getting abandoned.

[Advertisement]
Keep all your packages and Docker containers in one place, scan for vulnerabilities, and control who can access different feeds. ProGet installs in minutes and has a powerful free version with a lot of great features that you can upgrade when ready.Learn more.

Source link

Subscribe to our magazine

━ more like this

Lead, lead again, with Sheryl Sandberg

REID HOFFMAN: When technologies become ubiquitous and essential, they also generate opposition. Take PowerPoint, a product I use almost every day. There’s a...

Entitled neighbor repeatedly enters couple’s backyard property unannounced, neighbor escalates issue to the HOA and couple escalates issue to the police: ‘Please send help’...

Fences exist for multiple reasons, but the biggest one is privacy. Most humans live in fairly close quarters with one another, so measures are...

‘A push towards the conservative’: Cannes tries to ban oversized outfits and naked dressing | Cannes film festival

Not for the first time, organisers of the Cannes film festival, the ritziest and most photographed in the industry’s calendar, have decreed that various...

REVIEW & SWATCHES | Shu Uemura Murakami Holiday Collection

It's that time of the year again where every makeup company is buzzing about their new holiday collections and Shu Uemura definitely has one...