James Hickey's Blog

Looking At Software Related Ideas Using Short And To The Point Code Samples :)

Menu Close

Category: C#

How I Made LINQ 6X Faster Using A Functional Optimization!

I really did make LINQ 6X faster! Even though the title is “click-bait-ish”… This was a little experiment to see if I could speed up LINQ queries by using the functional pipe technique. By “piping” LINQ queries, we can avoid the inherent issue with LINQ whereby each query will issue a whole iteration over the collection. This optimization allows us to issue the equivalent of one iteration and pass each element through the entire method chain.
Read more

Refactoring Legacy Monoliths – Part 3: Game Plan And Refactoring Tips

So your engineering team is convinced that you need to make some drastic changes. The direction of future development needs to improve. Things can’t stay as they are. Management is also convinced that the product needs to move in a new direction. What’s next? Well, before doing any actual changes or refactoring to your product, planning a refactor is your next step. In other words, you need a game plan. I’ll also discuss some refactoring tips for you to get started!

Read more

Strategy Pattern Implementations In C#: Basic To Advanced

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.

Note: This is day #9 of the First C# Advent Calendar @ https://crosscuttingconcerns.com

Read more

Advanced Fluent Interfaces: LINQ Case Study

In Martin Fowler’s “famous” article about fluent interfaces, he talks about how it’s beneficial (when using strongly typed languages) to have the return type of your fluent method be flexible. We’ll be looking at this advanced fluent interface technique today. Read more

3 Benefits Of Fluent Interfaces

In my previous post I looked at a few reasons that I’ve seen given for thinking that fluent interfaces are “not all that.” I personally think that fluent interfaces can add some serious benefits to developers.
Read more

Exploring Fluent Interfaces With C# (A.k.a. Fluent Interfaces Are Not Evil)

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.

Read more

Functional Programming With C#: Simple Use Case

Update: I created a YouTube video based on this post, if you are interested….

During the past year and a half I have been making a point to learn about and develop my skills in functional programming. For the majority of this experience, I have been using JavaScript and TypeScript. After moving onto another project at work, I was brought back to “C# and SQL world.” Long story short, I noticed the way I was thinking about software problems in C# were totally different than before.
Read more

© 2018 James Hickey's Blog. All rights reserved.

Theme by Anders Norén.