太阁技术秀再聊函数式编程(Functional Programming)
Posted BitTiger
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了太阁技术秀再聊函数式编程(Functional Programming)相关的知识,希望对你有一定的参考价值。
1什么是函数式编程
函数式编程,又称泛函编程,是一种编程范式,它将电脑运算视为数学上的函数计算,并且避免使用程序状态以及易变对象。
函数式编程语言的基础:
Lambda Calculus是函数式编程语言的基础,它的函数可以接受以函数作为输入和返回值
函数式编程vs命令式编程:
比起命令式编程,函数式编程是通过函数来保存程序的状态的,更准确地说,是通过函数创建新的参数或返回值来保存程序的状态的,它更加强调程序执行结果而非执行过程,倡导利用若干简单的执行单元让计算结果不断渐进,逐层推导复杂的运算,而非设计一个复杂的执行过程;
在一个月前的太阁技术秀中,和大家一起聊过关于函数式编程的构建、几种典型的函数式编程语言,本次讲座让我们再深入地谈一谈所谓函数式编程思维逻辑到底是怎样的。
2程序逻辑中的数学
当我们在写程序逻辑的时候,通常的做法是直观的想象并设计程序的工作流图,然后用控制流语句去实现我们设计的逻辑。但这样实现出来的程序常常会有两个问题,第一就是很难预测程序的正确性。由于人们的想象通常是不严谨的,所以会经常出现意想不到的情况。第二就是,当出现问题的时候,我们需要花很长时间去排错,这往往有可能会使我们最终得到的程序逻辑与我们最初设计的大不相同。当程序逻辑越来越复杂,漏洞往往就会越多,维护起来往往会花更多的精力。
这次分享,将与大家讨论另一种编程思维,这种思维使我们在设计程序逻辑的时候用一种更严谨的方式去把问题抽象化,最终会使我们得到的程序更容易正确,并且在修改程序逻辑的时候更容易保留我们最初的设计。这里面会用到一些抽象的数学知识。相信从来都很好奇数学是如何在计算机编程中应用的同学可能会很有兴趣。
3讲座详情
【主题】:
一起聊聊函数式编程(Functional Programming)
【分享时间】:
美西时间4月20日(周三)晚7点30
美东时间4月20日(周三)晚10点30
北京时间4月21日(周四)早10点30
【在线分享】:
采用的是先进的Webinar视讯会议系统,用户在自己的电脑上使用我们提供的会议链接登入成功后,可以清晰的看到演讲嘉宾的屏幕内容,也可以听到演讲嘉宾的声音,还可以提问发言。
注册链接:https://attendee.gotowebinar.com/register/1150708559813755649
【活动主办方】:
-太阁实验室
- 神州专车北美实验室
Chao LI:
Worcester Polytechnic Institute, MS in Computer Science
曾经研究方向包括解析组合数学,代数图论,组合优化等。现任Avi Network后端工程师。
太阁实验室
WeChat ID: bit_tiger
长按二维码,关注我哟~
以上是关于太阁技术秀再聊函数式编程(Functional Programming)的主要内容,如果未能解决你的问题,请参考以下文章
编程范式:命令式编程(Imperative)声明式编程(Declarative)和函数式编程(Functional)