Let’s look at some different ways you could implement the strategy pattern in C#. First, I’d like to briefly mention why we care about design patterns and where the strategy pattern fits in.
Are fluent interfaces evil? (As some might suggest)… I don’t think so. In fact, I think they are great.
I plan on doing a few posts around this topic in the coming days / weeks (I’m pretty busy…). I wanted to start by addressing some common arguments I’ve come across.
In software development, indications of “bad” or poorly designed code have been given the title of “code smell(s)”. If it smells bad, it is probably bad. One of the smells I’ve learned to identify is what I’ll call “Stinky Managers.”
This smell is easily identifiable – in software code, if you see anything post-fixed with “Manager” – it probably stinks. Read more
I’ve started using ts-jest for a project at work and have really enjoyed it. It works great because you can write your tests in TypeScript and ts-jest will just compile on-the-fly then run your tests like you would expect. However, tests can easily become unreadable or harder-to-read (which isn’t limited to ts-jest, of course).
In order to make the tests more readable, I am creating generic functions that I can re-use in my test cases. Read more