`
shxiao
  • 浏览: 30396 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

state 学习

阅读更多
state 学习

1:对状态的访问, 直接访问,对内直接访问,对外间接访问

2:公共状态, 所有对象共享的状态,对于部分方法才会使用到的状态最好使用别的方式存储状态,例如参数或者助手
   类。 all common state in an object should have the same lifetime.

3:变化的状态集合,不仅对象使用的状态变化,而且状态的数量也变化时,通常使用一个map集合来存储此类的状态。
   Use common state whereever possible, Use variable state for the fields in an object that
may or may not be needed  depending on usage.

4: 外来状态。 某个特别的对象感兴趣的状态,如果把他放在类中,将会违反对称性,把此类状态和其主人存储在map中。 缺点时对象复制时比较困难。

5:局部变量的类型
     a: Collector(收集者), 通常是为了所有的计算而收集信息。收集的结果通常被作为计算结果返回给调用者。
         通常命名为result 或者results.
     b: Count(计数器), 一个用来收集某些对象的次数的收集者。
     c: Explaining.  用来解释复杂表达式的中间结构,利于理解代码。通常时助手类的接入点,减少代码重复。
     d: Reuse(复用). 一个表达式的变化随着时间而变化,这时需要一个临时的住所来暂住一下
     e: Element(元素)  一个集合中的单个元素,例如迭代器

6:数据域(field)
         常见域扮演的角色
        a: 助手(Helper),保持对别人的引用,帮助主人和别人通信,当主人的很多行为都涉及到某个别人(当作
         参数传递的),可以重构为助手域,通过助手和别人通信。
        b: 标帜域(Flag),用来区分对象的行为,可以重构为策略模式
        c: 策略域(Strategy), 对象的行为根据策略对象的变化而变化,如果对象的其生命周期内的行为不变化,
         只是在同类不同对象间变化时,通过构造函数注入策略对象
        d:状态域(state)
        f: 组件(Components); 一个具有自主能力的对象

7: 参数(Parameter)
         耦合性较小的通信方式,当一个对象和某个对象的交互次数较少时通过参数通信较少,但交互次数较多时
      就该把别人招纳为手下了。
     常见参数类型
      a: 收集参数(Collecting Parameter),  就像个无底麻袋,把他轮流传递给每个人,把他们的money放到袋
        子里,最后把他再返回到我这里,看看袋子,就知道其作用了。
      b: 可选参数(Optional Parameter), 可有可无,无时认为其默认的, 可变参数可以当成一个集合作为一个
      对象传递过去。
      c: 参数对象, 太多的对象经常一起出入的话,那就把他们当成一个对象吧!

8:类的全局常量Const  (static final)

9: 通过变量的角色来命名(scope, lifetime, role)

10:类型声明

11:初始化
        a: eager initialization, 在声明出初始化,在构造函数中初始化
        b: Lazy initialization 懒初始化,在真正需要的时候再去初始化。


tips:
      variables (scope, lifetime, role, runtime type of variables)
      role-suggesting name

从Implementation patterns中学到的
分享到:
评论

相关推荐

    VisualSTATE的学习

    ### VisualSTATE 学习知识点详解 #### 一、引言 在嵌入式系统开发过程中,状态机作为一种重要的设计模式,被广泛应用于多种场景中,如汽车电子、家电控制、工业自动化等领域。状态机能够清晰地描述系统在不同条件...

    visualstate study ppt file

    【VisualState学习PPT解析】 在信息技术领域,VisualState是一个重要的概念,特别是在Windows Presentation Foundation (WPF) 和UI设计中。VisualState管理器允许开发者控制用户界面(UI)元素在不同状态下的外观和...

    stateflow学习资料下载别人的-stateflow功能介绍.wps

    stateflow学习资料下载别人的-stateflow功能介绍.wps stateflow学习资料

    stateflow教材手把手教你-Stateflow教程.pdf

    总结来说,Stateflow教程通过介绍Stateflow的基本概念、语法和设计工具,让学习者能够掌握如何设计和实现基于事件的复杂控制系统。对于MATLAB和Simulink的用户而言,Stateflow是一种不可多得的补充工具,它可以与...

    自己学习stateflow过程中的总结-Stateflow学习.rar

    这个“Stateflow学习.rar”压缩包包含了一位学习者在探索Stateflow过程中积累的经验和理解,通过Word文档的形式提供了一些基本操作和详细解释,旨在帮助初学者更好地掌握这一技术。 Stateflow结合了状态机和流程图...

    Android学习 StateMachine与State模式

    Android中StateMachine机制 对与State改变切换这种常见常用的处理, 只是各个平台框架中处理的方法不同, 这种在处理多状态较为复杂的大部分场景都能见到的策略——状态机(StateMachine) 。在Android中使用的了...

    stateflow 计时器

    基于simulink的计时器,方便学习stateflow,Stateflow是一个跟Simulink联合起来使用的,可视化图形界面工具。在Simulink环境下,它是用来模拟和控制一些逻辑系统. Stateflow跟Simulink是完美结合在一起的,可以建模...

    详解Stateflow建模与应用实例,简单stateflow建模实例,matlab

    本文将深入探讨Stateflow的概念、其在MATLAB中的应用以及如何通过实例来学习Stateflow建模。 Stateflow是MATLAB Simulink中的一个组件,它允许用户以图形化方式表示离散事件系统,包括状态机、决策逻辑和定时器。...

    有关stateflow的学习(英文)

    ### 有关Stateflow的学习 #### 一、Stateflow概述与应用背景 Stateflow是一种与Simulink紧密结合的交互式图形化设计工具,主要用于建模和模拟事件驱动系统,这类系统通常被称为反应性系统。事件驱动系统能够根据...

    stateflow学习资料-sf_building-090904.pdf

    stateflow学习资料-sf_building-090904.pdf 网上收集的一个资料,希望对大家有用。 至少对stateflow有一个感性的认识 ican注:论坛里已经有这个帖子了,以后发帖要注意点 1.jpg

    Simulink的Stateflow教程

    通过深入学习`Stateflow教程1.ppt`到`Stateflow教程PPT学习教案.pptx`这些资料,你可以逐步了解如何创建、编辑和仿真Stateflow图表。学习过程中,建议先从基础概念入手,然后逐步掌握更高级的功能,如嵌套状态、并行...

    Stateflow教程,stateflow教程 pdf,matlab

    通过学习和掌握Stateflow教程,工程师们能够更加高效地建模和验证基于事件的系统,从而减少开发时间和错误。在提供的"Stateflow教程.pdf"文件中,您将找到更详细的步骤指导和示例,进一步提升您的Stateflow技能。

    state threads学习笔记.docx

    ### 协程库State Threads Library (ST) 学习笔记 #### 一、引言 在探讨协程库State Threads Library(简称ST)之前,我们首先需要了解几个基础概念:协程、用户线程以及它们如何帮助提升软件的并发性能。 #### 二...

    Stateflow逻辑系统建模.rar

    通过学习这份资料,读者将能够利用Stateflow的强大功能来设计、模拟和测试各种逻辑系统,无论是简单的状态机还是复杂的混合动态系统,都能得心应手。同时,Stateflow的可视化特性使得系统行为的解释和沟通变得更加...

    Stateflow入门资料

    在"Stateflow入门资料"中,我们可以预期学习到以下几个关键知识点: 1. **Stateflow的基本概念**:Stateflow的核心是状态和转移。状态代表系统在某一时刻的行为模式,而转移则描述了系统如何从一个状态移动到另一个...

    Android的状态机模式StateMachine与State

    状态机模式(StateMachine)在Android开发中是一种常用的设计模式,特别是在处理复杂的系统行为时,它可以帮助我们更好地组织代码,使其更具有可读性...通过深入学习和实践,开发者可以更好地应对各种复杂的编程挑战。

    IAR visualSTATE中文教程PPT

    《IAR visualSTATE中文教程PPT》是一份深入解析IAR visualSTATE的教育资源,适合对嵌入式系统设计和验证感兴趣的工程师以及学习者。这份教程以其详尽的内容,为中国用户提供了方便的学习路径,帮助他们理解和掌握这...

    Stateflow教程_stateflowsimulink_stateflow教程_stateflow_matlabsimuli

    通过学习这个教程,你将掌握如何利用Stateflow和Simulink构建和调试复杂系统模型,这对于控制系统设计、软件工程和自动化领域的工作来说是非常有价值的。无论你是初学者还是有经验的工程师,深入理解Stateflow都将...

Global site tag (gtag.js) - Google Analytics