Functional programming with F#

Kursarrangør: Glasspaper AS
Sted: Oslo, Helsfyr
Kursadresse: Brynsveien 12, 0667 Oslo (kart)
Type:Åpent kurs / gruppeundervisning
Undervisningstid: kl 09:00 - 16:00
Varighet: 3 dager
Pris: 18.900

Functional programming is being increasingly used in domains such as finance, gaming and web and mobile development. It makes solving complex problems simpler and allows developers to easily write maintainable and robust code.

In this hands-on training you will learn how and why to write real world functional programs on the .NET platform with the F# language.

Course content:

Module 1 - Introduction to functional programming:
• Why learn functional programming
• Functional concepts
• Comparison to OO programming

Module 2 - The F# language:
• Basic syntax
• Functions
• Types and the typesystem

Module 3 - More advanced functions:
• Recursive functions
• Lambdas
• Nested functions
• Function composition

Module 4 - Working with collections and data:
• Immutability
• Map, filter and fold
• Introduction to Type providers for data querying and processing

Module 5 - Error handling:
• Exceptions
• Fault handling in a functional way

Module 5 - OO concepts in F#:
• Use your F# code in a C# project (and vice versa)
• Interfaces
• Mutable classes

Module 6 - Domain modelling:
• Introduction to DDD with F#
• Creating DSLs

Module 7 - Asynchronous and concurrent programming:
• Non-blocking functions
• Async workflows
• Agent based programming

Instruktør: Ronald Harmsen

Ronald Harmsen er en senior konsulent og instruktør basert i Nederland. Ronald har vært profesjonelt utviklet programvare siden 1997 og har valgt. NET som sitt primære utviklingsmiljø siden versjon 1.0. Han har lang erfaring i utvikling av webapplikasjoner med ASP.NET, ASP.NET MVC, WCF, Silverlight og HTML5.

Målgruppe for kurset

You have development experience on the .NET platform and (preferably) the C# language. Now you are interested to learn another programming paradigm next to object oriented programming and get familiar with the F# language.