- Mastering Immutable.js
- Adam Boduch
- 237字
- 2021-07-08 10:29:59
Preface
I like functional programming languages. One of my favorite features is native immutability. Some functional languages, by default, don't let you change values. What's amazing about this capability is that you can't accidentally break your application by mutating data at the wrong time. If you try, the code won't even compile.
I also dislike certain aspects of functional programming languages. On one hand, it's great that immutability is enforced the way it is. On the other hand, there are times when I just need to push aside my functional programming principles and get the job done.
The JavaScript language has many useful functional programming features out of the box. You don't need a library to compose higher-order functions, for example. Something that's difficult to get right with JavaScript is immutability. This is where Immutable.js shines.
When I first heard about Immutable.js, I pictured a library that enforced immutability on JavaScript structures and nothing more. It turns out there's much more. When you're working with immutable structures, you're constantly creating them. The Immutable.js collection API helps you create the structures you need, when you need them.
Since this is a JavaScript library, there's no immutability by default. This allows me to use Immutable.js where immutability matters, and to mutate things when I need to. This is what makes this such an essential library for applications in the real world; pragmatic functional programming that gets the job done.
- C語言程序設計教程(第2版)
- Dependency Injection in .NET Core 2.0
- Linux命令行與shell腳本編程大全(第4版)
- Learning Python by Building Games
- Hands-On Functional Programming with TypeScript
- 可解釋機器學習:模型、方法與實踐
- 劍指MySQL:架構、調優與運維
- Java高并發核心編程(卷1):NIO、Netty、Redis、ZooKeeper
- R數據科學實戰:工具詳解與案例分析
- Learning Kotlin by building Android Applications
- Modular Programming with JavaScript
- Mastering High Performance with Kotlin
- Learning C# by Developing Games with Unity 3D Beginner's Guide
- 網頁設計理論與實踐
- Implementing OpenShift