架构师训练营第二周学习总结

发布于: 2020 年 06 月 17 日

第二周周四的课对我启发很大,引发了很多思考。这节的标题叫《软件开发简史——从编程的历史看编程的本质和未来》。

课程中提到的一些关于历史的内容之前大多已经了解过,不过对于莱布尼兹关于编程的设想还是第一次听到,不过不出意外,数学家总是走在前面的。计算器区别于计算机课程中有提到:计算器对数值进行计算,而计算机对数据进行计算。结合冯诺依曼模型,我认为可以再补充一条:计算器对数值进行计算,逻辑在脑中,操作计算器的人需要知道先按哪个按键再按哪个按键。而计算机则不然,计算机对数据进行计算,逻辑就在数据之中。

我时常会思考计算的本质,并赞叹于图灵机的简洁美妙,但是鲜有思考关于编程的本质,这次的课程老师给出了他对于这个问题的看法。

至于编程的本质,老师套用了马克思的生产力理论,其中阐述了生产力的三要素是劳动者、劳动工具和劳动对象。对应到软件工程中,便是软件工程师,计算机和客观业务领域。在此基础上提出:机器语言是面向计算机编程,高级语言是面向工程师编程,面向对象语言是面向业务领域编程。并断言,面向对象语言是编程语言的终极形态。

其中机器语言面向计算机不难理解。高级语言面向工程师强调的是一个工程师或小团队。面向对象思想则是将领域问题抽象化,并针对问题建立模型,从而实现大规模协作。

周六的课程主要包括了一些OOD的设计原则,这些设计原则有一些在工作中其实已经接触过了,不过因为没有系统的学习所以之前并不清楚。

发布于: 2020 年 06 月 17 日 阅读数: 12
用户头像

whiter

关注

还未添加个人签名 2020.05.29 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第二周学习总结