Skip to content

Commit 2fa8288

Browse files
authored
Merge pull request #977 from IanWitham/NewBookEditions
Add new book cover images and update book references
2 parents 720df6b + 7581f77 commit 2fa8288

File tree

6 files changed

+37
-13
lines changed

6 files changed

+37
-13
lines changed

learn/files/BookDMMF.png

11.8 KB
Loading

learn/files/BookFSIA.png

10 KB
Loading

learn/files/BookGPWF.jpg

-3.01 KB
Binary file not shown.

learn/files/BookSF.jpg

-8.47 KB
Binary file not shown.

learn/files/BookSF6.png

9.81 KB
Loading

learn/index.md

Lines changed: 37 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -75,31 +75,40 @@ A range of coding dojos for F# from [Community for F#](http://c4fsharp.net) incl
7575

7676
<h2 id="books" class="anchor">F# Books - General</h2>
7777

78-
### [Get Programming with F#](https://www.manning.com/books/get-programming-with-f-sharp)
78+
### [F# in Action](https://www.manning.com/books/f-sharp-in-action)
7979

80-
<img src="/learn/files/BookGPWF.jpg" style="float:right;margin:5px 0px 5px 25px;" />
80+
<img src="/learn/files/BookFSIA.png" width="96" height="120" style="float:right;margin:5px 0px 5px 25px;" />
8181

8282
_Isaac Abraham_
8383

84-
Get Programming with F#: A guide for .NET Developers shows you how to upgrade your .NET development skills by adding a touch of functional programming in F#. In just 43 bite-sized chunks, you'll learn how to use F# to tackle the most common .NET programming tasks.Examples use the familiar Visual Studio environment, so you'll be instantly comfortable. Packed with enlightening examples, real-world use cases, and plenty of easy-to-digest code, this easy-to-follow tutorial will make you wonder why you didn't pick up F# years ago! In addition to the language itself, other topics covered include:
84+
F# is engineered to make functional programming practical and accessible. This book will get you started writing your first simple, robust, and high performing functional code.
8585

86-
- Interop with C# /VB projects
87-
- Working with disparate data sources
88-
- SQL database access
89-
- Web Programming
90-
- Unit testing
86+
F# lets you keep your code simple even in the most complex applications—and it’s the perfect language for taking your first steps in functional programming. This practical, example-driven guide shows you how to build professional applications the F# way.
9187

92-
By the end of the book, you’ll be able to use F# in your day-to-day development, and know how and where to deepen your knowledge.
88+
In F# in Action you will learn how to:
9389

94-
### [Stylish F#](https://books.google.com.au/books?id=WqR8DwAAQBAJ)
90+
- Write performant and robust systems with succinct F# code
91+
- Model domains quickly, easily and accurately with F#’s type system
92+
- Design solutions using functional programming patterns
93+
- Ingest and process disparate data sources
94+
- Develop data-driven web applications
95+
- Unit test F# code
96+
- Effectively model data using a variety of techniques
97+
- Use scripts to rapidly explore domains
9598

96-
<img src="/learn/files/BookSF.jpg" style="float:right;margin:5px 0px 5px 25px;" />
99+
_F# in Action_ is based on author and Microsoft F# MVP Isaac Abraham’s years of experience working with developers as an F# consultant. It upgrades .NET development skills with the core principles of functional programming, and you’ll soon see how F#’s functional-first approach makes it easy to learn this powerful paradigm.
100+
101+
### [Stylish F# 6](https://link.springer.com/book/10.1007/978-1-4842-7205-3)
102+
103+
<img src="/learn/files/BookSF6.png" width="84" height="120" style="float:right;margin:5px 0px 5px 25px;" />
97104

98105
_Kit Eason_
99106

100-
Stylish F# covers every design decision that a developer makes in constructing F# programs, helping you make the most educated and valuable design choices at every stage of code development. You will learn about the design of types and function signatures, the benefits of immutability, and the uses of partial function application. You will understand best practices for writing APIs to be used by F#, C#, and other languages. Each carefully vetted design choice is supported with compelling examples, illustrations, and rationales.
107+
Why just get by in F# when you can program in style. This book goes beyond syntax and into design. It provides F# developers with best practices, guidance, and advice to write beautiful, maintainable, and correct code. This second edition, fully updated for .NET 6 and F# 6, includes all new coverage of anonymous records, the task {} computation expression, and the relationship between types and modules.
108+
109+
_Stylish F# 6_ covers every design decision that a developer makes in constructing F# programs, helping you make the most educated and valuable design choices at every stage of code development. You will learn about the design of types and function signatures, the benefits of immutability, and the uses of partial function application. You will understand best practices for writing APIs to be used by F#, C#, and other languages. Each carefully vetted design choice is supported with compelling examples, illustrations, and rationales.
101110

102-
What You'll Learn
111+
**What You Will Learn**
103112

104113
- Know why, when, and how to code in immutable style
105114
- Use collection functions, piping, and function composition to build working software quickly
@@ -108,6 +117,7 @@ What You'll Learn
108117
- Identify and implement opportunities to use function injection to improve program design
109118
- Appreciate the methods available to handle unknown data values
110119
- Understand asynchronous and parallel programming in F#, and how it differs from C# asynchronous programming
120+
- Exploit records and anonymous records as low-overhead, easily comparable containers for structured data
111121

112122
### [Essential F#](https://leanpub.com/essential-fsharp)
113123

@@ -121,6 +131,20 @@ Everywhere you look, programming languages are gaining functional features. The
121131

122132
This book started life as a series of blog posts on my Company's website (https://www.softwarepark.cc/blog). The sum of the content is what a developer needs to know to be able to work on one of our F# Line of Business codebases. I have improved and extended the content, upgraded the code to F# 5 and ensured that the code will run in VS Code.
123133

134+
### [Domain Modeling Made Functional](https://pragprog.com/titles/swdddf/domain-modeling-made-functional/)
135+
136+
<img src="/learn/files/BookDMMF.png" width=100 height=120 style="float:right;margin:5px 0px 5px 25px;" />
137+
138+
_Scott Wlaschin_
139+
140+
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you’ll see how applying the core principles of functional programming can result in software designs that model real-world requirements both elegantly and concisely—often more so than an object-oriented approach. Practical examples in the open-source F# functional language, and examples from familiar business domains, show you how to apply these techniques to build software that is business-focused, flexible, and high quality.
141+
142+
Domain-driven design is a well-established approach to designing software that ensures that domain experts and developers work together effectively to create high-quality software. This book is the first to combine DDD with techniques from statically typed functional programming. This book is perfect for newcomers to DDD or functional programming—all the techniques you need will be introduced and explained.
143+
144+
Model a complex domain accurately using the F# type system, creating compilable code that is also readable documentation—ensuring that the code and design never get out of sync. Encode business rules in the design so that you have “compile-time unit tests,” and eliminate many potential bugs by making illegal states unrepresentable. Assemble a series of small, testable functions into a complete use case, and compose these individual scenarios into a large-scale design. Discover why the combination of functional programming and DDD leads naturally to service-oriented and hexagonal architectures. Finally, create a functional domain model that works with traditional databases, NoSQL, and event stores, and safely expose your domain via a website or API.
145+
146+
Solve real problems by focusing on real-world requirements for your software.
147+
124148
### [F# Programming Wikibook](http://en.wikibooks.org/wiki/Programming:F_Sharp)
125149

126150
The wikibook contains a comprehensive guide to F# programming. It covers

0 commit comments

Comments
 (0)