推荐阅读【不用任何赋值的程序设计称为*函数式*程序设计】
SICP 第三章的标题是:模块化、对象和状态。我在这一章找到了「函数式程序设计」的定义(见知识点五),哈哈真是一本神书。
知识点一:
开篇的一段话十分吸引我,这段话在高层次上说明了面向对象编程的缺点,以及 Rx.js 这种编程范式的优点。
有一种非常强有力的设计策略,特别适合于构造那些模拟真实物理系统的程序,那就是「基于被模拟的系统的结构去设计程序的结构」。
在这一章里,我们要研究两种特点很鲜明的组织策略,它们源自对于系统结构的两种非常不同的世界观。第一种策略将注意力集中在「对象」身上,将一个大型系统看成一大批对象,他们的行为可能随着时间的进展而不断变化。第二种策略将注意力集中在流过系统的信息流上,非常像电子工程师观察一个信号处理系统。
基于对象的途径和基于流处理的途径,都对程序设计提出了具有重要意义的语言要求。
对于对象途径而言,我们必须关注计算对象可以怎样变化而又同时保持其标识。这将迫使我们抛弃老的计算的代换模型,转向更机械式的、理论上也更不容易把握的环境模型。在处理对象、变化和标识时,各种困难的根源都在于我们需要在这一计算模型中与时间搏斗。如果允许程序并发执行的话,事情就会变得更困难。
对于流方式来说,它特别能够用于松解在我们的模型中对时间的模拟和计算机求值过程中的各种事件的发生顺序。我们将通过延时求值做到这一点。
作者:方应杭在饥人谷
链接:https://t.cn/Ey2aF7T
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
SICP 第三章的标题是:模块化、对象和状态。我在这一章找到了「函数式程序设计」的定义(见知识点五),哈哈真是一本神书。
知识点一:
开篇的一段话十分吸引我,这段话在高层次上说明了面向对象编程的缺点,以及 Rx.js 这种编程范式的优点。
有一种非常强有力的设计策略,特别适合于构造那些模拟真实物理系统的程序,那就是「基于被模拟的系统的结构去设计程序的结构」。
在这一章里,我们要研究两种特点很鲜明的组织策略,它们源自对于系统结构的两种非常不同的世界观。第一种策略将注意力集中在「对象」身上,将一个大型系统看成一大批对象,他们的行为可能随着时间的进展而不断变化。第二种策略将注意力集中在流过系统的信息流上,非常像电子工程师观察一个信号处理系统。
基于对象的途径和基于流处理的途径,都对程序设计提出了具有重要意义的语言要求。
对于对象途径而言,我们必须关注计算对象可以怎样变化而又同时保持其标识。这将迫使我们抛弃老的计算的代换模型,转向更机械式的、理论上也更不容易把握的环境模型。在处理对象、变化和标识时,各种困难的根源都在于我们需要在这一计算模型中与时间搏斗。如果允许程序并发执行的话,事情就会变得更困难。
对于流方式来说,它特别能够用于松解在我们的模型中对时间的模拟和计算机求值过程中的各种事件的发生顺序。我们将通过延时求值做到这一点。
作者:方应杭在饥人谷
链接:https://t.cn/Ey2aF7T
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
一门功能强大的程序设计语言,不仅仅是指挥计算机执行任务的手段,也更是一个开发人员用来组织计算处理的思维框架。
—— 《计算机程序的构造和解释》(SICP), 1.1节 编程之本基
A powerful programming language is more than just a means for instructing a computer to perform tasks. The language also serves as a framework within which we organize our ideas about processes.
Structure and Interpretation of Computer Programs, Section 1.1 The Elements of Programming
PS:《计算机程序的构造和解释》(豆瓣) https://t.cn/RG1WZjE
—— 《计算机程序的构造和解释》(SICP), 1.1节 编程之本基
A powerful programming language is more than just a means for instructing a computer to perform tasks. The language also serves as a framework within which we organize our ideas about processes.
Structure and Interpretation of Computer Programs, Section 1.1 The Elements of Programming
PS:《计算机程序的构造和解释》(豆瓣) https://t.cn/RG1WZjE
#异步专访# 今天推荐的是黄健宏老师的专访《为什么真正的聪明人喜欢用笨方法? 》,在深入地阅读一本书的时候,我们通常会花很大的力气,争取把书本“吃透”,而做笔记则是把书本“吃透”的其中一种办法。然而正是这个耗费力气的“笨办法”才能使其基本功更加扎实。https://t.cn/EvWWIVE
【人物介绍】黄健宏,一位1990年出生的计算机技术图书作译者,《Go Web编程》《Redis实战》的译者。除了已出版的两本作品之外,他还创作和翻译了《Go标准库中文文档》《Redis命令参考》《SICP解题集》等一系列开源文档。
【人物介绍】黄健宏,一位1990年出生的计算机技术图书作译者,《Go Web编程》《Redis实战》的译者。除了已出版的两本作品之外,他还创作和翻译了《Go标准库中文文档》《Redis命令参考》《SICP解题集》等一系列开源文档。
✋热门推荐