> I fear that, by the time they get around to that, lots of code will handle the cases null and Optional containing null differently, making that a breaking change.
Yes, I was working with code once which wrapped string IDs into a FooId object (a good idea in principle) and all of the following had different meanings:
FooId x = null;
FooId x = new FooId(null);
FooId x = new FooId("");
FooId x = new FooId(...an actual ID...)
I think one was for not showing any content at all, one was for showing default content, another was that content was there but the user wasn't allowed to see it, etc.
Yes, I was working with code once which wrapped string IDs into a FooId object (a good idea in principle) and all of the following had different meanings:
I think one was for not showing any content at all, one was for showing default content, another was that content was there but the user wasn't allowed to see it, etc.I'm so glad I left that company...