Although C# is considered an imperative (procedural) language, there are techniques we can borrow from a declarative (functional) language, such as F#, that will allow us to write more robust, testable and maintainable code. The recent additions to the C# language make the transition from writing C# code using a procedural approach to a functional approach even easier.
In this talk we will discuss applying functional techniques to C# code and the advantages of thinking “functional” instead of procedural. We will transform examples of C# written in a traditional imperative style to a functional style incorporating some of the newer C# language features. In addition, although not a recent addition to C#, we will also demystify the scary looking Action and Func to demonstrate how powerful these delegate wrappers can be used to write flexible and reusable code.
Stephen Peterson is a F# and C# Sr. Software Engineer with Valore Partners based in Phoenix, Arizona. Steve has been developing applications for over twenty years and has been working on the Microsoft .NET platform since 2002. Steve is excited about the latest F# and C# language features allowing developers to write cleaner, maintainable, and more robust code than ever before. Steve has earned MCSD certifications in Application Lifecycle Management and Web Applications.
Steve likes to spend his spare with his wife, four Golden Retrievers, two Chocolate Labs, a St. Bernard and a cat. He enjoys running and makes an effort to run at least one half marathon a year. Steve also holds a private pilots certificate, so flying is also a passion. He is currently in the process of earning his Instrument pilot’s certification.