Transforming your C# code to Functional Style
Since the introduction of lambda expressions in C#, we have had two different style of programming. Yet, programmers used to the habitual style often find it easy to fall back on those old practices. In this presentation we will take a number of common tasks we code in C#, discuss the downsides of the habitual style, transform it into functional style, and discuss the benefits. We will also discuss some techniques that can help make this transformation easier on everyday projects.
Outline/Structure of the Talk
Using a series of example we will learn how to restructure or transform code to functional style and discuss the benefits of doing so.
Learn to think in functional style
Look for refactoring opportunities during evolution of software
Create code that has fewer chances of errors
schedule Submitted 6 years ago
People who liked this proposal, also liked:
Venkat Subramaniam - Keynote: The Joy of Functional Programming
It's been around for a long time, but everyone's talking about it all of a sudden. But why and why now? We've been
programming in languages like Java for a while, quite well. Now we're asked to change and the languages themselves
are changing towards this style of programming. In this keynote, a passionate polyglot programmer and author of
"Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions" will share the reasons
we need to make the paradigm shift and the pure joy—the benefits—we will reap from it.
Venkat Subramaniam - Haskell for Everyday Programmers
I learn different languages not to make use of them, but to program in my current languages in a better way. As we adapt functional style of programming in mainstream languages, like Java, C#, and C++, we can learn a great deal from a language that is touted as a purely functional language.
Haskell is statically typed, but not in a way like Java, C#, or C++. Its static typing does not get in the way of productivity. Haskell quietly does lazy evaluation and enforces functional purity for greater good. Everyday programmers, like your humble speaker, who predominantly code in mainstream languages, can greatly benefit from learning the idioms and style of this elegant language. The next time we sit down to crank out some code in just about any language, we can make use of some of those styles, within the confines of the languages, and move towards a better, functional style.
Venkat Subramaniam - Designing with Lambda Expressions in Java
As Java programmers we have used a number of design patterns and design techniques. With the introduction of lambda expressions, we now have some more sharper tools in our design toolbox. Come to this presentation to learn how we can implement some elegant design ideas with lambda expressions. We will learn about these design techniques, not using diagrams, but by realizing the ideas in code.
Venkat Subramaniam - Programming with Lambda Expressions in Java
Now that Java is supporting lambda expressions, it's time to hone our skills to make use of them. Lambda expressions can help create concise code, however, it takes more than learning the syntax to put them to good use. In this presentation we will learn the idiomatic use of lambda expressions, explore the ways in which we can use them to solve common tasks, and look into libraries and APIs that make use of them in Java.