zoukankan      html  css  js  c++  java
  • 状态模式

    昨天回来,翻看书,就看到了状态模式

    话题是有小菜加班引起,很自然小菜按他一天的不同时段来划分他的不同状态

    不同的状态自然产生不同的行为

    大鸟让小菜写出第一版,小菜习惯性的用面向过程的思考写出代码

    这也是不经常用面向对象的人的第一反应,也是很多人正常的,很正向的思维

    也正是有了这第一种实现方式,才有可能对这样的好坏作评价和好的改进

    若是没有这些代码,第一步都没有,改也就无从谈起

    这就在教我们大家一种思考模式,方向,顺序,或者叫套路

    叫什么套路呢,遇到问题先按正常的思维去思考一种解决方案

    有了这个解决方案,在这个基础上去思考

    要是有新的需要会有什么样的改动,怎么去避免最小的改动

    这就是第二步,提炼优化已有的代码,让代码更好的面向对象

    职责单一,开闭原则,最高目标就是面向需要变化时,可以做最小的改动

    小菜的思维很正常,针对于不同的时间段,状态不一样

    他自然会想到,上午九点到十二点 是什么样的状态

    下午是什么状态,晚上又是什么状态

    这怎么转换成代码呢,什么都不用改

    只需要用最直接的方式去照搬出这些就行了,说明一个问题

    人的大脑结构,在进行选择时,如果没有思考时,会自动选择最简单,最快的方式

    但这种方式,并不一定是最优的,当然这也和每个人的经历有关

    可能有的人,面对同样的情况直接就是面向对象的思考方式,所以才需要先学习这些模式,来培养面向对象的思维方式

    那么由小菜加班,引出的设计模式,也是面面向对象优化的方式,总结出来的好的方式

    当然这有好就有坏,要选择恰当的来用

    那么小菜学的状态模式到底什么样呢?

  • 相关阅读:
    端口以及服务常用cmd
    异步,同步,阻塞,非阻塞,并行,并发,
    mysql启动不起来
    安装nagios出现的错误
    Linux内核优化
    mysql使用常见问题
    mysql日志
    mysql数据库使用脚本实现分库备份过程
    mysqladmin常用用法
    mysql授权
  • 原文地址:https://www.cnblogs.com/gdnyfcuso/p/6843695.html
Copyright © 2011-2022 走看看