几种不OO的设计

作者: 这事情急不得 | 来源:发表于2019-04-12 00:03 被阅读9次

OO大法虽好,但即便是在MS这样的公司,也不是每个人都能理解的很深刻的,俗话说,过犹不及。有些脑洞大开的framework,初看不错,各种用法都很一致,但因过度抽象导致对debug十分不利。

这里总结几种不OO或者过度OO的设计,其实过度OO就等于不OO:

所有的Constants都在同一个文件里定义。

所有的依赖注入都在同一个文件里定义。

对于任何简单的操作,都想定义一个基类。

对于任何简单的操作,都想把它封装在一个class里。

代码里的所有object,当你在IDE看definition的时候,看到的都是基类。

代码里出现很多XXXManager,XXXProvider之类的类,这些类往往用来操作一堆某个基类继承下来的类。

一个没有成员变量的类。

在类里出现很多static方法。

妄图把类都划分到不同的component里面,component之间的通信由某个单独的类来统一处理。

请记住OO大法的几个最关键之处:

每个类必须有意义。

每个类必须有自己的操作。

每个类必须有自己的数据。

每个类必须和其他类通信。

每个类只做自己的事。

等到有code重复了,再考虑继承,不要一上来先写基类。

相关文章

  • 几种不OO的设计

    OO大法虽好,但即便是在MS这样的公司,也不是每个人都能理解的很深刻的,俗话说,过犹不及。有些脑洞大开的frame...

  • 设计工具箱.1初识

    本文是针对《Head First 设计模式》的阅读笔记。 OO基础 封装 继承 多态 抽象 OO原则 封装变化 多...

  • 面向对象 设计原则 & 松耦合设计 & 设计模式

    0 OO 设计原则 & 松耦合设计 & 设计模式 1 23 种 设计模式 Key Points 2 Fact...

  • 《写给大家看的面向对象编程书》读书笔记

    第1章 面向对象概念介绍 OO和过程式程序设计的区别在OO设计中,属性和行为都包含在一个对象中,而在过程式程序设计...

  • chapter13_总结

    OO设计原则(1) 封装变化(2) 多用组合, 少用继承(3) 针对接口编程, 不针对具体的实现编程(4) 为交互...

  • 615

    (*’(OO)’*)(*’(OO)’*)(*’(OO)’*)(*’(OO)’*)(*’(OO)’*)(*’(OO)...

  • 谁知道呢?

    o(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(o)oo(...

  • 设计模式要点

    OO指面向对象 OO基础 抽象 封装 多态 继承 OO原则 封装变化 多用组合,少用继承 针对接口编程,不针对实现...

  • 设计模式——OO原则

    封闭变化 多用组合,少用继承 针对接口编程,不针对实现编程 为交互对象之间的松耦合设计而努力 对扩展开放,对修改关...

  • 策略模式--《HeadFirst设计模式》

    良好的OO设计必须具备可复用、可扩充、可维护三个特性模式可以让我们建造出具有良好OO设计质量的系统 Joe是一名O...

网友评论

    本文标题:几种不OO的设计

    本文链接:https://www.haomeiwen.com/subject/sssiiqtx.html