`
helloworld
  • 浏览: 16926 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

我的OO观

阅读更多
【编程】
    OO之于编程,对于编程来说OO带来了两项新的内容:更好的重用和多态性。这方面典型的例子是控件,确实帮了程序员很大的忙,这是结构化没有做到的。而OLE,COM和CORBA则光环多于实用。结构化编程也可以做到重用,但相比较于OO来说很难想象我们常用的UI控件用结构化来重写是怎样的一种情况,而科学计算库用结构化编程实现重用的开销要小。因此结构化编程具有简单清晰的优势,却不能处理复杂的重用。

【设计】
    OO之于设计——设计模式,可以说没有OO就不能有所谓设计模式之发展。结构化编程中实际上分析和设计的界限非常的不清晰,模块分解实质是系统分析的产物。而OO使得开发人员有能力设计出好的对象组合(结构视图)及其交互(行为视图)来更好的实现具体的功能。

【分析】
    OO之于分析,曾经是早期OO的巨大困惑之一。因为人们所了解的分析就是要将系统进行划分为不同的模块,相当于要将系统的组成结构做出来。这对结构化来说是很自然的。对于OO来讲,把系统分解为Object显然一下子显得太细节,不容易抓住系统的主干。然而引入主题这个概念,使得系统的划分变得非常自然而然。尽管这样,OO之于分析还是有不足之处,个性化多于科学性。

【OO之牵强】
编程现在都已经非常习惯采用面向对象的方式了,但在操作符 .(dot)前面那个是不是真实的对象呢,往往都不会在意了。

1、非对象之对象
非对象之对象指原本没有对象,而是为了对象而造出来的。这种对象太多了,最常见的有为了给一堆方法找的对象,如数学函数库对象,业务对象等等。
2、实体对象
实体对象简单说来对应于数据库表的一条记录(不完全是这样),首先这些对象本身是没有什么的方法;其次这些对象一般属于一个集合,主要的操作是集合类操作。
3、深层对象
现实世界中大多数对象都是深层次对象(即多次继承),在实际应用中往往会压扁了使用。


暂时写这些
分享到:
评论
4 楼 Trustno1 2008-07-01  
helloworld 写道
http://topic.csdn.net/t/20021231/19/1317388.html
引用

  GTK+本身是用C语言做的,同时它有非常好的可扩展性,你完全可以用C/C++,PERL,PYTHON,直到C#(有一个叫GTK#的,在SOURCEFORGE.NET上)来开发GTK+程序。 
  GTK+设计上具有OO特色,这是一个很有趣的特点,C语言   又有OO特点,又不是C++,只有你研究透它时才会发现这一特点的妙处。


有时间一定看一下,如果是说仅仅是用C语言实现了OO的思想,那出发点还是OO,这和我关于OO,结构化之于编程重用的观点还是一致的:结构化重用:简单清晰;OO重用:复杂灵活。

OO思想这个东西,就很扯淡了.
只要有struct,signal,callback就是OO了?
随便翻翻一个Unix软件的代码,那个不是signal,callback漫天的飞的?





3 楼 helloworld 2008-07-01  
http://topic.csdn.net/t/20021231/19/1317388.html
引用

  GTK+本身是用C语言做的,同时它有非常好的可扩展性,你完全可以用C/C++,PERL,PYTHON,直到C#(有一个叫GTK#的,在SOURCEFORGE.NET上)来开发GTK+程序。 
  GTK+设计上具有OO特色,这是一个很有趣的特点,C语言   又有OO特点,又不是C++,只有你研究透它时才会发现这一特点的妙处。


有时间一定看一下,如果是说仅仅是用C语言实现了OO的思想,那出发点还是OO,这和我关于OO,结构化之于编程重用的观点还是一致的:结构化重用:简单清晰;OO重用:复杂灵活。
2 楼 helloworld 2008-07-01  
听说过,但从来没想到GTK+是非OO的?至于TCL则广泛用于工具,知道能做一些UI,但不知道能够做多复杂的UI,假如一个按钮,一个窗体算是控件的话,那早期用C也做了不少。
1 楼 Trustno1 2008-07-01  
引用
结构化编程也可以做到重用,但相比较于OO来说很难想象我们常用的UI控件用结构化来重写是怎样的一种情况

LS的这位,没捣鼓过GTK+,TCl/TK吧.

相关推荐

    OO客服右侧在线客服代码 兼容IE 火狐

    描述中提到的"非常漂亮"可能涉及到前端界面设计,包括色彩搭配、布局和动画效果等,这些都要求开发者具有良好的审美观和HTML/CSS技能。"跟随滚动条滚动"这一特性,通常通过JavaScript或者jQuery来实现,通过监听滚动...

    57oo电影整站系统 v6 SP4 FLV版.rar

    9. **用户体验优化**:为了提供良好的观影体验,57oo电影整站系统可能内置了流畅的视频播放器、快速的搜索功能、影片推荐算法等。此外,考虑到网站的可访问性,可能还进行了响应式设计,使其能在不同设备上良好展示...

    A Functional Pattern System for oo design

    文章假设,无论是软件开发还是语言设计,在被限制于纯粹的面向对象世界观时,都无法发挥它们的全部潜能。 为了解决这一问题,Kühne提出了一种解决方案,即借鉴与面向对象互补的函数式编程范式,研究高级、已被证明...

    深入核心——VCL架构剖析.part2

    Inside VCL(深入核心——VCL架构剖析) (2008 年度畅销榜NO.22 ) <br>原书名: Inside VCL(深入...让您在了解VCL Framework的同时,体验源自顶尖程 序员的OO观。 <br>http://www.dearbook.com.cn/book/12996<br>

    深入核心——VCL架构剖析.part3

    Inside VCL(深入核心——VCL架构剖析) (2008 年度畅销榜NO.22 ) <br>原书名: Inside VCL(深入...让您在了解VCL Framework的同时,体验源自顶尖程 序员的OO观。 <br>http://www.dearbook.com.cn/book/12996<br>

    深入核心——VCL架构剖析.part1

    Inside VCL(深入核心——VCL架构剖析) (2008 年度畅销榜NO.22 ) <br> 原书名: Inside ...让您在了解VCL Framework的同时,体验源自顶尖程 序员的OO观。 <br>http://www.dearbook.com.cn/book/12996<br><br>

    员工培训方案暨二OO六年度培训计划(doc 32).doc

    培训的具体目标包括:传达公司文化与价值观,明确企业战略,提升岗位技能,支持项目推进,引入新观念,提高团队素质,以及促进个人职业发展。培训课程体系的设计需考虑不同层级和部门的需求,定制化的技能提升路径,...

    专题资料(2021-2022年)IP8OO商业计划书518.doc

    公司理念可能包括其核心价值观、使命和愿景,强调为客户提供高效、便捷的通信解决方案。公司资产则会列出其拥有的硬件设施、软件技术专利以及人力资源等关键资源。管理团队部分将详细介绍关键领导者的背景、经验和...

    李维新书《Inside VCL》的前两章预读

    让您在了解VCL Framework的同时,体验源自顶尖程序员的OO观。 Delphi已经推出了7个版本,在未来也会持续的推出新的版本,许多人可能也已经使用Delphi许多年并且开发了各种不同的应用系统,但是不管我们使用了Delphi...

    Head.First.设计模式.中文版 1-8章

     我如何使用设计模式?  设计箱内的工具  习题解答 2 让你的对象知悉现况  气象观测站  认识观察者模式  出版者+订阅者=观罕者模式  五分钟短剧:观察主题  定义观察者模式  松耦合的威力  设计气象站 ...

    四川省古蔺县观文初级中学2020学年七年级英语上学期期中试题(无答案)(新版)人教新目标版.doc

    这份文档是针对七年级英语学习的一份期中试题,出自四川省古蔺县观文初级中学,采用的是人教新目标版教材。试题旨在检测学生的基础英语知识和技能,包括字母认知、词汇理解、语法运用以及情景对话等核心知识点。下面...

    Head.First设计模式_PDF.part1

    在我的资源下可找到其他两部部分 强大的写作阵容。《Head First设计模式》作者Eric Freeman和ElElisabeth Freeman是作家、讲师和技术顾问。Eric拥有耶鲁大学的计算机科学博士学位,E1isabath拥有耶鲁大学的计算机...

    Head First Design Pattern(en) pdf(part3)

     我如何使用设计模式?  设计箱内的工具  习题解答 2 让你的对象知悉现况  气象观测站  认识观察者模式  出版者+订阅者=观罕者模式  五分钟短剧:观察主题  定义观察者模式  松耦合的威力  设计气象站 ...

    Head First Design Pattern(en) pdf(part1)

     我如何使用设计模式?  设计箱内的工具  习题解答 2 让你的对象知悉现况  气象观测站  认识观察者模式  出版者+订阅者=观罕者模式  五分钟短剧:观察主题  定义观察者模式  松耦合的威力  设计气象站 ...

    软件工程中的重要知识点笔记

    1、OO的基本概念 面向对象的概念 2、用况图,用况之间的关系 3、类图,类之间的关系,类中的属性和方法 4、状态机图,顺序图,结构图的基本概念 第十章 敏捷软件开发 1、敏捷开发的定义,特点,价值观及原则 2、XP...

    Unit 5教案.doc

    - 句型应用:关键句型有“I'd like some...”(我想要一些...),用于表达需求;“Have some...”(吃/喝点...)是邀请他人享用食物或饮料的表达;以及“Here you are.”(给你),是递东西时的常用语。 2. **能力...

    状态型激励理论.ppt

    用公式表示就是:OP/IP = OO/IO,其中OP代表个人的报酬,IP代表个人的投入,OO代表他人的报酬,IO代表他人的投入。如果这个比例相等,人们就会感到公平;如果不等,就可能产生不公平感。 当个体感到不公平时,可能...

    CSDN编程经典书籍 c++规范

    **面向对象(OO:Object-Oriented)的方法** 是一种重要的编程思想和技术,它强调通过将数据和与这些数据相关的操作封装在一个对象中来模拟现实世界的行为。面向对象的世界观认为世界上的事物都是不断变化发展的,并且...

    关于面向对象的哲学体系及科学体系的探讨_设计模式

    面向对象的哲学体系及科学体系探讨,是一种深入分析软件工程领域中面向对象(OO)设计理念的方法。这一探讨不仅触及技术层面,还涉及哲学视角,旨在理解面向对象的本质及其在软件开发中的应用价值。 ### 面向对象的...

    大学物理:第8章 狭义相对论基础.ppt

    两个参考系(约定系统)OO,重合时,0tt计时开始。 伽利略相对性原理是指事件:t 时刻,物体到达 P 点Stzyxr,,,tzyxv,,,aStzyxr,,,tzyxv,,,axS...

Global site tag (gtag.js) - Google Analytics