• (nodebb)

    cat /dev/null

  • Secnod (unregistered)

    Secnod

  • David (unregistered)

    public class FristProcesSpecification extends CompositeProcesSpecification {

        @Override
        public boolean isSatisfiedBy(CommentType frist) {
                return null != frist && CommentType.ONE == frist.getType();
        }
    

    }

  • (nodebb)

    Return of the Enterprise Rules Engine!

  • (nodebb) in reply to David

    @Override public CommentType getType() { if() {} }

    Addendum 2017-01-12 08:00: if(){}=if(this==CommentType.ONE) throw new DoesntWorkException();

    Mistype fark'd comment

  • Mark Richmond (google)

    Bonus Time: If you highlight the term "Shub-Niggurath" in the text, you'll get a Unicorn AND a Rainbow! TRWTF??

  • EvilSnack (unregistered)

    The only time I've seen Java in a company document, it was a kudo to a new developer who had migrated one of our products away from Java.

  • Herr Otto Flick (unregistered) in reply to Mark Richmond

    First time here?

    Bonus Time: cornify is in every Remy article. Now I only come here for a quick 100 rainbows and unicorns. Double Bonus Time: Remy also puts a quips, snarks and an easy reader version of the story in HTML comments inside the article.

  • Spivonious (unregistered)

    Someone didn't understand the Specification pattern from Evan's DDD book...

  • _that_guy_ (unregistered)

    The worst part is the constant misspelling "proces".

  • Ingo B. (unregistered)

    Yoda conditions you must use.

  • Carl Witthoft (google) in reply to masterX244179

    <quote>cat /dev/null</quote>

    Either I got badly whooshed, or you accidentally a ">" there.

  • (nodebb)

    It also looks like some sort of bastard application of SOLID principles.

  • Ex-lurker (unregistered) in reply to Herr Otto Flick

    ... although he was unusually economical in the number of HTML comments this time. Also, the easy reader version is AFAIK the shortest he's ever wrote.

  • I dunno LOL ¯\(°_o)/¯ (unregistered)

    For those to whom Remy's comments and cornify are new, here's a bookmarklet that you can use to show them:

    javascript:(function(){var%20e=document.getElementsByClassName("article-body")[0];e.innerHTML=e.innerHTML.replace(/<!--/g,"<div%20style='background-color:gainsboro;border:solid%201px%20black;padding:4px;color:red;'><span%20style='font-style:italic;'>").replace(/-->/g,"</span></div>").replace(/%20title="click%20me!">/g,"%20title="click%20me!">%F0%9F%90%8E");})();

    Less than and greater than characters were entity-escaped to protect the innocent formatting.

  • Duke of New York (unregistered)

    ProcesSpecification: remember to leave off the second "s" which stands for "sanity"

  • (nodebb) in reply to Carl Witthoft

    reading from /dev/null immediately end-of-file's aka no data. that meant. no real text in this comment

  • (nodebb) in reply to _that_guy_

    Well, in French, procès is the word for "trial", you know, the thing that happens in a court, with a judge and lawyers and all.

    For when you are hauled up and prosecuted for ... tickling ... the oxygen-thief who created this mess. With your GAU-8...

  • Brad Wood (google)

    I went to add a comment asking what in the world this code does, but then I noticed that there is a whole underground culture in these comments. TRWTF, yo.

  • JimTonic (unregistered) in reply to Brad Wood

    That's alright Brad. Just mention the president's daughter and wooden tables and some other stuff, and they'll quickly think you're one of them.

    As for the code itself. I found it quite nifty actually. First the code sets up a system for specifying and combining (and/or/not) requirements (predicates), and then it applies the pattern to a few (presumably) often used requirements (type one, type two, etc.). Most of this could have been done utilizing Apache Commons Collections which has these interfaces and implementations out of the box. Java 8 also looks like it has Predicates out of the box.

  • Kogad (unregistered) in reply to JimTonic

    The code is nifty if you're trying to express business language as a natural language. But... it was only used in these instances, and there was no extension planned. It would've been fine if it were in a side project, to get some feeling of the plumbing necessary... but the code is riddled with all of these one-off different programming styles.

  • maurizio (unregistered)

    I mean, we all knows that designing smart frameworks is more fun that writing flat code, right ?

  • molle (unregistered)

    "Shub-Niggurath, the black goat of the woods with a thousand young, to eat the eyes of developers"

    I can't get over it. Tears are running out of my eaten eyes.

    Comparing C,Java, JavaScrip like this is identical to that dropdown-option "Mr."|"Mrs."|"Folding Chair"

Leave a comment on “Extended Conditions”

Log In or post as a guest

Replying to comment #:

« Return to Article