对JAVA的理解

double深坑

java 是 一个笨重的垃圾语言么?

一个语言笨重,但是这么多年还是常胜不衰肯定是有原因的,因为它本身就是用来做企业级大项目的。很多在做项目的时候都是在考虑如何快速的写出来,但是对于软件工程来,快速写出并不是软件工程需要解决的问题,软件工程主要解决的是迭代和维护一个项目。

软件工程的方法论: 项目的维护和迭代

设计到软件设计的几个原则:

  • 开闭原则(OCP: Open Closed principle)
  • 历史替换原则
  • 迪米特法则

以上几个以 “开闭原则” 最为重要,它是编写可维护代码的基本原则,所谓 “开闭原则” 就是对函数、类、扩展是开放的,而对于修改是封闭的。

要实现 “开闭原则” 就要学会面向抽象编程,如: interface、abstract

为什么要实现开闭原则就要抽象编程?

=> 面向抽象 => OCP => 可维护的代码

重点理论

  1. 单纯interface 可以统一方法的调用,但是它不能统一对象的实例化
  2. 面向对象主要做两件事情:实例化对象 、调用方法 (完成业务逻辑)
  3. 只有一段代码中没有new的出现,才能保持代码的相对稳定,才能逐步实现OCP
  4. 一段代码如果要保持稳定,就不应该负责对象的实例化
  5. 对象实例化是不可能消除的
  6. 把对象实例化的过程,转移到其他的代码片段里
  7. 代码中总是会存在不稳定,隔离这些不稳定,保证其他的代码稳定。
  8. 变化造成了不稳定

写代码是写什么?

计算机里面的代码其实是对现实世界规律的实现。

总结:
所有软件的复杂性,都是为了写出可维护代码