Learn how to apply functional F# design patterns to a huge range of programming challenges, and discover a smart route to building better applications
About This Book
* This book provides a path if you are coming from imperative and object-oriented paradigms
* It will take you to an intermediate level of functional programming in very practical manner to write enterprise-quality idiomatic F# code
* Tackle complex computing problems with simple code by fully embracing the functional-first F# paradigm
* Packed full of practical coding examples to help you master F# programming and author optimal code
Who This Book Is For
This book is for .NET developers, web programmers, C# developers, and F# developers. So, if you have basic experience in F# programming and developing performance-critical applications, then this book is for you.
What You Will Learn
* Acquire the practical knowledge to use the main functional design patterns
* Realign some imperative and object-oriented principles under the functional approach
* Develop your confidence in building and combining first-order and higher-order functions
* Learn to use core language pattern matching effectively
* Make use of native F# algebraic data types in place of custom-built classes
* Recognize and measure the difference in resource consumption between sequences and materialized data collections
* Navigate and use F# Core libraries with ease by seeing patterns behind specific library functions
* Master writing generic polymorphic code
Following design patterns is a well-known approach to writing better programs that captures and reuses high-level abstractions that are common in many applications. This book will encourage you to develop an idiomatic F# coding skillset by fully embracing the functional-first F# paradigm. It will also help you harness this powerful instrument to write succinct, bug-free, and cross-platform code.
F# 4.0 Design Patterns will start off by helping you develop a functional way of thinking. We will show you how beneficial the functional-first paradigm is and how to use it to get the optimum results. The book will help you acquire the practical knowledge of the main functional design patterns, the relationship of which with the traditional Gang of Four set is not straightforward.
We will take you through pattern matching, immutable data types, and sequences in F#. We will also uncover advanced functional patterns, look at polymorphic functions, typical data crunching techniques, adjusting code through augmentation, and generalization. Lastly, we will take a look at the advanced techniques to equip you with everything you need to write flawless code.
Style and approach
This book will teach you how to write F# code in an idiomatic functional-first manner, thereby improving the productivity of F# programmers. This book is ideal for an F# programmer who wants using F# in functional-first way.