我们一起来读书吧 关注:113贴子:1,513
  • 0回复贴,共1

代码里的世界观,前三章读后感

只看楼主收藏回复

第一章:程序世界由数据和代码构成
数据与代码的关系
1)数据是根本目的,代码是手段,代码永远是为数据服务的 。在软件开发的过程中,代码的作用是将数据转化为想要的形式。比如客户端将数据以想要的形式展现在界面上,服务端将想要的数据取出并筛选最后发送给客户端。
2)有什么样的数据,决定了会有什么样的代码 。 在开发过程中,不同形式的数据以及不同用途的数据都会有不同的代码逻辑处理,代码的不断升级与修改永远是为了匹配数据的要求或者追逐数据的变化。
第二章:用面向对象的方式去理解世界
1) 面向对象的方式本质上是借用人类理解世界的方式去构架这些数据和方法之间的关系 。 面向对象的方式还能减少人类之间的沟通戚本,它不但有利于开发人员去设计架构,还有利于其他程序员阅读和记忆你的架构 。
2) 封装、继承、多态:
封装将若干数据和方法组合在一个叫 “类”的身体里。 数据是肉体,而方法是让身体动起来的各种行为,方法存在的意义就是操作它对应的数据。
继承将公共的代码放在基类中,抽出共性,简化代码。
多态是抽象的基石,把基类和所有子类们动态联系起来 。
第三章:面向抽象编程
1)“面向抽象编程”本质上是对数据的抽象化 。 在面向抽象编程中,对new的使用是尤为关键的,既不能限制类型的自由,也不能处处抽象,要在关键且合适的地方抽象。
控制反转:在函数的参数类型中采用抽象,目的是将类型的注入权交给调用函数的人,而在形式参数列表中只去制定范型。
工厂模式:与控制反转类似,创建的具体类型,由传入的参数决定。即由创建的人来决定创建什么具体类型,而不是在方法中写死具体的类型。
2)需要谨慎用抽象的场景:局部变量:我们内部使用的变量绝大多数要是具体类型。
3)抽象的程度:抽象和具体之间一定有个平衡点,这个平衡点一定是由用户需求决定的。你返回的类型,是客户需需求对应的最根上的那个类型节点。


IP属地:北京1楼2024-05-20 21:57回复