起初这是一个如何使用LINQ
来组合业务代码的教学项目。其基本理念源自Railway Oriented Programming,我个人十分喜欢F#
,不过由于在小城市生态不好招到相关人才,我改用C#
的LINQ
来做一个简化版的ROP
,虽然写起来不如F#
干爽,但是好歹算是能用的土枪土炮了。
这种函数式的编程**,可以大幅提高业务代码的可读性和可维护性。这种编程**横跨各个编程语言,在F#
、C#
、Rust
、TypeScript
、Python
等等编程语言中,均有相似实现。
- 要求用户输入的整数a
- 要求用户输入的整数b
- 输出a + b
现在需求变更,改成:
- 要求用户输入的整数a,要求a > 10
- 要求用户输入的整数b, 要求b < 100
- 输出a + b
这里列出部分编程语言ROP风格的代码示例:
C#
版Rust
版Python
版