Im März wird Mark Seemann http://blog.ploeh.dk bei uns zu Besuch sein mit folgendem Thema: No mocks / Functional Architecture
A Functional architecture with F#
F# is a Functional language in the .NET framework; while most people still regard it as a niche language, it’s a Turing complete, general purpose language, so you can build almost any sort of application with it. However, with its strong focus on immutability, programmers used to Object Orientation struggle with creating a proper architecture for a Functional system.
One way to approach Functional architecture is to separate the system into abstractions for writing data, and abstractions for reading data.
A set of design patterns collectively known as Pipes and Filters provide a model for receiving and persisting data, while a programming model known as Map/Reduce addresses the concerns of reading (persisted) data and transforming it into useful boundary constructs.
Look, no Mocks! Functional TDD with F#
Test-Driven Development (TDD) is supposed to be about feedback, but a recent criticism has been that it tends to cause ‘test-induced damage’, because the design resulting from TDD is worse than an alternative design one could produce without kowtowing to testability.
The counter-argument is that this may indicate a failure in API design, rather than a failure on the part of the TDD process.
Often, the problem with TDD is an over-reliance on Mocks, which again causes an over-emphasis on mutation. Functional Programming, with its emphasis on immutability, can help significantly pull the tests away from relying on Mocks, leading to a better overall design, and more maintainable unit tests.
This session uses F# to demonstrate how to use Functional design with TDD to remove the need for Mock objects.
Die Treffen der User Group sind wie immer kostenlos und eine Mitgliedschaft in der User Group ist nicht notwendig. Allgemeines Ziel der Treffen sind soziales Networking und direkter Austausch. Kollegen und Interessierte sind herzlich willkommen.
Treffpunkt am 3. März 2015 um 18 Uhr
Microsoft Deutschland GmbH