Tips_OO

http://tot1.blog.hexun.com/2848595_d.htm 哲学是观察世界的角度学,思路学,思路一变,你眼中的世界也随之改变

  A、宏观、全局的眼光
  哲学用粗线条、定性和模糊的语言把握市场,而科学用得是细线条、定量和精确的语言

C、抽象的思维特点
忽略局部、细节的运动,抓住市场运动的核心。对长线交易者来说,这是必须的。

B、历史的、系统的观点
与西医相比,中医更注重身体系统,而不是病灶本身。这一点与期货交易非常相似,但你必须用时间、过程和经验去积累,时间到了,自然体会到大道至简

D、我的市场认识理论——投机的理论、模型、假设决定市场观察和交易
理论、模型、假设在很大程度上决定了投机者在市场中关注什么,也决定了人们的思考、判断和行动方式。

假如你相信、选择了本杰明 格雷厄姆、沃伦 巴菲特的价值投资学说,你就根本不会试图从市场价格波动中投机赚钱,而会把精力集中在选择价格远远低其内在价值的股票;
假如你相信市场趋势理论,认为市场价格以趋势的方式波动,那么你就会忽略市场短期随机的、偶然的变化,重点关心市场主要趋势的发展;
假如你运用某一条移动平均线作为判断市场中期走势的标准,而且行之有效,你就不会试图去理解中间过程暧昧不清的市场变化。我自己经常用55天均线把握市场、监视市场的中长期走向。

可见,一个投机者选择什么样的理论作为市场观察和交易决策的标准、依据,是一件关系重大的事情。

从 心理学的角度分析,投机者在观察市场的价格变化之前就有一套系统的市场理论、框架、模型,这样的市场观察就是一种“自觉注意”。投机者不再让市场价格变 化主宰、左右自己的思维、情绪,而是以超然的态度审视市场运动,通过理论模型观测市场、寻找市场交易机会。“自觉的注意”不是由市场价格涨跌对投机者本能 的吸引而引起的,这样产生的注意是“自发注意”。大多数投机者往往在这陷入困境,一旦坐在显示屏前,就不由自主的被市场带着跑。“自觉的注意”恰恰是抑制 了投机者的本能欲望、利益,而是强调关注投机者自身的主体操作过程。




http://cache.baidu.com/c?word=%C3%E6%CF%F2%3B%B6%D4%CF%F3%3B%B5%C4%3B%B7%BD%B7%A8%3B%CA%C7%3B%B2%C9%D3%C3%3B%B9%B9%D4%EC%3B%C4%A3%D0%CD%3B%B5%C4%3B%B9%DB%B5%E3&url=http%3A//spaces%2Emsn%2Ecom/members/XPDN/PersonalSpace%2Easpx%3F%5Fc%3D&b=0&a=85&user=baidu

面向对象方法


面向对象方法是一种运用对象、类、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。

面向对象方法能够提高软件的重用性和可扩展性。面向对象方法能否提高软件项目的成功率是有争议的。

面向对象的系统分析

面向对象的分析方法是利用面向对象的信息建模概念,如实体、关系、属性等,同时运用封装、继承、多态等机制来构造模拟现实系统的方法。传统的结构化设计方法的基本点是面向过程,系统被分解成若干个过程。而面向对象的方法是采用构造模型的观点,在系统的开发过程中,各个步骤的共同的目标是建造一个问题域的模型。在面向对象的设计中,初始元素是对象,然后将具有共同特征的对象归纳成类,组织类之间的等级关系,构造类库。在应用时,在类库中选择相应的类。

面向对象的程序设计

面向对象的程序设计(Object Oriented Programming,简称OOP,亦有译为物件导向),指一种程序设计范型,同时也是是一种程序开发的方法论。它的最大特点是能够大幅度的提高软件项目的成功率,减少日后的维护费用,提高软件的可移植性和可靠性。它的特征主要包括以下几个方面:

对象的使用——对象的概念被广泛的使用在从建模到构建程序的各个方面。
抽象化——将各种独立的操作分解成为可以用命名区分的单元。
封装性——不同的操作具有不同的作用范围。
多态性——对于不同数据类型的相似操作使用相同的命名。
继承性——类可以被继承,从而实现不同层次的对象。
抽象化是面向对象的一个重要特征但是并不是它所独有的特征。重用是面向对象的一个重要优点。当我们提到面向对象的时候,它不仅指一种程序设计方法。它更多意义上是一种程序开发范式。在这一方面,我们必须了解更多关于面向对象的分析(Object Oriented Analysis,简称OOA)和面向对象的设计(Object Oriented Design,简称OOD)方面的知识。
 

面向对象分析
 
面向对象的思维方式

面向对象是围绕对象和类来分析、设计软件系统的。

面向对象分析

面向对象分析的主要任务是根基用户的需求,建立一个准确的、完整的、一致的系统模型。在面向对象的分析过程里,项目组通过分析软件的功能性需求,得到一个理想化的系统模型,该模型更多的侧重于描述我们需求解决的问题是什么——我们称这种模型为分析模型。

面向对象分析与面向对象设计的区别

在侧重点上,面向对象分析侧重于理解问题,描述软件做什么,而面向对象设计侧重于理解解决方案,描述软件如何做。
面向对象分析一般只考虑理想的设计,不关心技术和实现的细节,而面向对象设计更具体、更详细、更接近真实的代码的设计方案。
在设计结果的描述方式上,分析阶段侧重描述对象的行为,设计阶段侧重于描述对象的属性和方法。
面向对象分析只关注功能性需求,而面向对象设计既关注功能性需求,也关注非功能性需求。
面向对象分析的产生的系统模型通常规模较小,而面向对象的设计产生的系统模型规模较大,内容也比较完整、详尽。
用例驱动的面向对象分析

面向对象分析的过程包括:

从用例中提取实体对象和实体类。
提取实体对象的方法,依据用例描述中出现的名词和名词短语来提取实体对象,必须对原始的名词和名词短语进行筛选。
得到实体对象后,对实体对象进行归纳、抽象出实体类。
提取属性
提取关系
添加边界类
添加控制类
绘制类图
绘制顺序图
编制术语表


http://www.joeco.com.cn/wj/yykf/rjgc/rjgc_xxxtjmff.htm《信息系统建模方法
大型信息系统通常十分复杂,很难直接对它进行分析设计,人们经常借助模型来设计分析系统。模型是现实世界中的某些事物的一种抽象表示。抽象的含义是抽取事物的本质特性,忽略事物的其他次要因素。因此,模型既反映事物的原型,又不等于该原型。模型是理解、分析、开发或改造事物原型的一种常用手段。例如,建造大楼前常先做大楼的模型,以便在大楼动工前就能使人们对未来的大楼有一个十分清晰的感性认识,显然,大楼模型还可以用来改进大楼的设计方案。

  在信息系统中,模型是开发过程中的一个不可缺少的工具。信息系统包括数据处理、事务管理和决策支持。实质上,信息系统可以看成是由一系列有序的模型构成的,这些有序模型通常为:功能模型、信息模型、数据模型、控制模型和决策模型,所谓有序是指这些模型上分别在系统的不同开发阶段、不同开发层次上建立的。


http://www.blogcn.com/User2/nightlast/blog/5241724.html《
信息建模
系统模型
1,技术模型(程序模型和数据模型):数据模型从文件系统、数据库系统演进到数据仓库系统;程序模型技术进展不大,许多创新也和数据模型发展有关,比如面向对象技术类型的封装和继承等等。
  2,开发模型:为提高软件开发的质量和效率,软件业已经发展出许多种开发模式,如生命周期模型、过程化模型、原型模型、RAD模型、构件组装模型、并发开发模型、形式化方法模型等等。
  软件工程的理论和不断提出的开发模型部分解决(缓解)了软件质量的问题,使得软件生产能力较大幅度提高,软件产业进一步希望开发通用化软件产品实现效益最大化,而这和个性化企事业单位的需求产生了巨大矛盾。
  3,管理模型:软件通用性与企业个性化的矛盾中,软件产品必需服从客户业务信息化个性化管理要求,软件应该充分“柔软”,适应这种变化性和多样性,通过简捷的配置而非程序系统的修改,达成整个软件体系的自然生长,从而不断成熟和优化。


信息建模方法
  1,面向过程的建模(Yourdon设计法):把过程看作系统模型的基本部分,数据是随着过程而产生。
  2,面向数据的建模(Jackson设计法)把模型的输入输出看成是最为重要的,因此,首先定义的是数据结构,而过程模块是从数据结构中导出的,即功能跟随数据。
  3,面向信息的建模(注意信息和数据的区别)从整个系统的逻辑数据模型开始的,通过一个全局信息需求视图来说明系统中所有基本数据实体及其相互关系,然后,在此基础上逐步构造整个模型
  4,面向决策的建模(Petri网和GRAI法):由数据库、模型库和各自的管理系统
  5,面向对象的建模:面向对象的分析方法是利用面向对象的信息建模概念,如实体、关系、属性等,同时运用封装、继承、多态等机制来构造模拟现实系统的方法。
   传统的结构化设计方法的基本点是面向过程,系统被分解成若干个过程。而面向对象的方法是采用构造模型的观点,在系统的开发过程中,各个步骤的共同的目标 是建造一个问题域的模型。在面向对象的设计中,初始元素是对象,然后将具有共同特征的对象归纳成类,组织类之间的等级关系,构造类库。在应用时,在类库中 选择相应的类。 
  IDEF方法族是很重要的信息建模方法。IDEF(集成计算机辅助制造,Integrated Computer- Aided Manufacturing,ICAM) DEFinition。最初的IDEF方法是在美国空军ICAM项目建立的。最初开发3种方法:功 能建模(IDEF0)、信息建模(IDEF1)、动态建模(IDEF2),后来,随着信息系统的相继开发,又开发出了下列IDEF族方法:数据建模 (IDEF1X)、过程描述获取方法(IDEF3)、面向对象的设计(OO设计)方法(IDEF4)、使用C++语言的OO设计方法(IDEF4C+ +)、实体描述获取方法(IDEF5)、设计理论(rationale)获取方法(IDEF6)、人-系统交互设计方法(IDEF8)、业务约束发现方法 (IDEF9)、网络设计方法(IDEF14)等。


http://bbs.blacksky.cn/bbs/read.php?tid=591&page=e《OO in C(4): C语言中的面向对象思想
面向对象思想的目的是框架化,手段是抽象

相信很多人都明白面向对象讲了什么:类,抽象类,继承,多态。但是是什么原因促使这些概念的产生呢?

打 个比方说:你去买显示器,然而显示器的品牌样式是多种多样的,你在买的过程中发生的事情也是不可预测的。对于这样的事情,我们在程序语言中如何去描述呢。 面向对象的思想就是为了解决这样的问题。编写一个程序(甚至说是一个工程),从无到用是困难的,从有到丰富是更加困难的。面向对象将程序的各个行为化为对 象,而又用抽象的办法将这些对象归类(抽象),从而将错综复杂的事情简化为几个主要的有机组合(框架化)。

其实我们的身边很多东西都是这 样组成的:比如说电脑:电脑是由主板,CPU加上各种卡组成的。这就是一个框架化。而忽略不同的CPU,不同的主板,不同的声卡,网卡,显卡的区别,这就 是抽象。再比如说现在的教育网:是由主核心节点:清华,北大,北邮等几个,然后是各个子节点,依次组成了整个教育网网络。


『『『
所以我觉得面向对象的编程思想就是:一个大型工程是分层次结构的,每层又由抽象的结构连接为整体(框架化),各个抽象结构之间是彼此独立的,可以独立进化(继承,多态)。层次之间,结构之间各有统一的通讯方式(通常是消息,事件机制)。

其实编程序和写文章一样,都是先有一个提纲,然后慢慢的丰富。抽象化得到程序的骨架,然后再考虑各个方面的其他内容:程序极端的时候会发生什么问题?程序的这个地方的功能现在还不完善,以后再完善会有什么问题?程序是不是可以扩展的?

http://www.joeco.com.cn/wj/yykf/rjgc/rjgc_xxxtjmff.htm
IDEF4把面向对象的设计活动划分成离散的、可管理的大块。每个子活动由一个强调设计决策的图形化语法支 持IDEF4方法很容易让设计者在设计类继承、类组成、功能分解和多态之间作平衡IDEF4更是一个图形化的语法,它为运用和发展面向对象的设计提供 了一个一致的框架,而这一设计最终是由类不变数据清单和方法集约定描述的。
』』』


http://www.sdlgame.com/content/blogsection/3/99999999/9/423/
正因为MFC是建立在C++的基础上,所以我强调C/C++语言基础对开发的重要性。利用C++的封装性开发者可以更容易理解和操作各种窗口对象;利用C ++的派生性(共性)开发者可以减少开发自定义窗口的时间和创造出可重用的代码;利用虚拟性(个性)可以在必要时更好的控制窗口的活动。而且C++本身所具备的超越C语言 的特性都可以使开发者编写出更易用,更灵活的代码。


http://www.matrix.org.cn/resource/article/1/1645_oo.html
OO 概念非常之广,简单地说是现实世界的一种简化映射

OO的出现是为了重用,这是OO的精华。

OO本身并没有脱出结构化编程的概念,这从OO的汇编可以看出,实际上一种语言的自我进化,描述世界仍然可以用最初级的语言,只是累点儿。

OO可以简化为结构化+代码生成+动态地址,实际上在C++中也是这样实现的,毕竟C++是由C来完成的。


http://blog.csdn.net/aawolf/archive/2005/12/30/565958.aspx
组件化就是面向对象的一种应用
功能更完整,适应性更强的一种对象而已
思想来源于抽象
面向对象来源于抽象
设计模式也来源于抽象
范型技术也来自于抽象
抽象的目的,在于探讨世界的本质


http://www.ptpress.com.cn/books/Book_Information.asp?BID=09011&Section=Authority
众多长期从事编程的人员从实践中体会到,只要真正领会了面向对象的编程思想,即使是很高深的编程领域,诸如COM、ActiveX、CORBA、MIDAS都不难掌握。

http://www.lgui.net/column/artical3/artical3.htm
那些熟悉并已适应了面向对象编程的人员将发现它(Qt)是一个理想环境。而且,面向对象的体系结构使代码结构化、可重用并且运行快速




☀ Blue Myth™ ☀ : 学期伊始的怪现象..
值得一提的是UML的那位女老师,典型的东北人性格,吉大研究生毕业,教得还不错的,她对于面向对象的认识,有自己独特的见解,可以把枯燥的计算机语言作一系列的生动比喻,真的难得,也挺佩服。

关于面向对象的生动描述

    她关于OO當中的成员描述。

       把面向对象语言中的"对象"比喻成(生)鸡蛋,

       把鸡蛋打破,里面的蛋黄就相当于"数据",

       蛋青相当于"功能".

    照她的见解,按稳定性而言:”对象“较稳定,"数据"较易变,"功能"最易变。就好比鸡蛋,蛋黄,蛋青了。学习OO以来,第一次听到有老师作这样生动而且贴切的描述,我想对于初学OO的同学,这是一个相当不错的理解方法。

   还有一个相当精彩的描述,是”用对象观点认识事物”。大家都知道,面向对象语言(OO)是最接近人类语言的一种计算机语言,老师建立了“一个用对象观点认识事物”的认识方法,是用一问一答的方式提出的,相当新颖:

    Q:这里面有什么东东?A:类与对象

    Q:每个东东看上去是什么样的?A:类的属性

    Q:每个东东能做点什么用?A:类的方法

    Q:这些东东都呆在什么地方?A:类的部署

    Q:这些东东之间有什么关联?A:类间的关联

    Q:这些东东是怎么成事的?A:类间的交互

    个人觉得这种描述方法很精彩,如果那时学JAVA之前老师也这么教的话,那时我从面向过程转变为面向对象思维的时候就不用那么困难了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值