• 运行良好的软件和运行正常的软件之间是有区别的。仅考虑其行为,构建有效的软件是一项工作完成了一半。软件工程师应该通过考虑其结构来构建灵活且可扩展的软件。好的软件来源于好的结构,好的结构来源于好的架构。因此,像软件架构师一样思考很重要。 
  • Account类有withdraw, deposit两个方法,是放在Account类的里面还是外面? 方案一: Account代表我的账户,代表我的一个身份,那么当然是一个主动的对象。 Account取钱,存钱是里所当然的。withdraw, deposit两个方法应
  • 当您编写的代码应该可以处理几种不同类型的值,但事先不知道它们是什么,不同语言处理方式不同: 动态语言就可以让您传入任何内容。 Java/C# 会要求一个接口或一个超类。 Duck类型的语言,如 Go 或 TypeScript,需要一些结构类型:例如,具有一组特 icon
  • 例如:class Father{public void test(){System.out.println("this is father"); }} class Son extends Father{pub icon