我看了刘艺的<面向对象思想>这本书.
可是我还是不知道要怎样运用到数据库系统当中去.
一直感觉每个表就是一个类吗?
所以望高手指点.

解决方案 »

  1.   

    1有空看看他那本设计模式,你会觉得写几个类,真太爽了。代码的重用,设计的重用。RAD 与 OOP 是相对立的
      

  2.   

    <设计模式>我刚买,过几天可能就到货.一定抽空看一下.我也买了李唯的那本新书,不知道怎样.
    我现在对面向对象还是很薄弱.
    我公司一个人说:窗体继承就是面向对象设计了.可是我认为.窗体继承是面向对象.可是真正面向对象应该没有那么简单吧.应该把每个业务都写成类.这样应该算面向对象吧
      

  3.   

    一个表对应一个类.那是OR/Map 
    面向对象.只是为了解决代码重用.方法维护.具体情况具体分析,不一定全部照搬.
    平时尝试着用其中的几种常用的设计模式体验一下.就有感觉了
      

  4.   

    窗体继承,只是用到了面向对象中的一个特性.即子类继承了父类的全部特性.以致于你在更改基类社会窗体时子类窗体都会发生变化.这也是为了好维护.具体的面向对象.因个人理解不同.设计出的结构也很大不同.MIS系统方面.有不少成熟的框架,可以借鉴一下.详细的.要看具体的业务流程了.不能一概而论吧...
      

  5.   

    MIS系统方面.有不少成熟的框架,可以借鉴一下phaler(笑传醉梦):哪里有,能不能提供一下.谢谢.只是为了解决代码重用.方法维护.这样我写个公共模块,写个公共函数.不也可以吗?
      

  6.   

    买李维那本新书吧,<<面向对象实践>>
    虽然没多说数据库的,才也是相关的
      

  7.   

    ,<<面向对象实践>>过几天就到货了,正准备看
    里面不知有没有实际的例子
      

  8.   

    楼主真款,
    一下在买了这么多的书。
    羡慕ing。
    不过买书,我也用了 1 K 多了。Delphi 模式编程,里面的例子用得上的。
      

  9.   

    yeeyee(易 一 想找 M*M) ( ) :
    你都用了1K了
    我才用200多
    不过要学知识,这些钱发的值.
    我也是挤出来的.没有办法.
      

  10.   

    严重同意 phaler(笑传醉梦) ( ) 信誉:100  2005-5-11 17:01:04  得分: 0  
     
     
       
    一个表对应一个类.那是OR/Map 
    面向对象.只是为了解决代码重用.方法维护.具体情况具体分析,不一定全部照搬.
    平时尝试着用其中的几种常用的设计模式体验一下.就有感觉了  
     都什么时候了,delphi落伍了
      

  11.   

    都什么时候了,delphi落伍了
    那现在什么算没有落伍.
    语言每个都会落伍的
    就是思想不会落伍.面向对象设计方法不会落伍.
    所以要加快学.可是还是不明白.
    只有等<设计模式>和<对象实践>书到了,再学.
      

  12.   

    等待<<面向对象实践>>ing....................
      

  13.   

    我看了李维的那本,PFM的实例,感觉还是把握不住设计需要到什么样的深度
      

  14.   

    向大家推荐一本好書,
    <<delphi高手突破>>
    感覺還不錯,著重講面向對象這部分.
      

  15.   

    所谓OOP,指的是一种编程方法,或者说是一种编程思想。OOP有
    三大特点,即数据封装、派生和多态。如果某种编程语言符合这
    三种特性,就可以说它是支持OOP的。VC是完全支持OOP的。VB只
    支持数据封装,不支持派生和继承,因此它不是完全的OOP语言。
    虽然它号称通过多重 ActiveX 接口来支持多态,但大家都知道,
    连派生都不支持,是不可能真正支持多态的。所以VB被称之为
    “伪OOP语言”。很多人以为数据封装就是OOP,这是不对的。数
    据封装只是OOP的一个特性,一些非OOP语言也支持数据封装。这一
    点非常重要!
    而DELPHI也支持上述三个特性,所以它也是完全支持OOP
    的。虽然它不支持多重继承,但只能说它对OOP的支持没有C++强
    大,不能说它对OOP的支持不完全。多重继承并不是OOP的必要特性。
    有很多人把面向控件的编程与面向对象的编程混为一谈。
    事实上,控件只是封装好了的数据结构,与OOP在很大程度上是两回
    事。如上所述,VB就是面向控件的编程工具,而不是真正面向对象
    的编程工具。VB中的类和对象,只是一些数据结构和数据结构的实例
    化而已。因此你使用控件编程,并不等于使用OOP。一些DOS下的开发
    工具,象BC++,完全支持OOP的三个特性,但不支持控件,你不能说
    它不支持OOP。
    Delphi对VB最主要的优势,就是它是完全的OOP语言。(这也
    是我不喜欢VB而喜欢Delphi的原因之一。)这一点CJ兄说得很对,但
    他对VB的评论小弟并不赞同,而创建一个类也并不等于就掌握了OOP。
    那么OOP到底有什么好处?同时支持OOP的三个特性,为什么
    就比仅仅支持数据封装要强?这话很难一下子讲清楚。事实上,很多
    功能不用OOP一样可以完成。这主要在于编程者的思想,其实OOP本身
    也只是一种编程思想而已,所以即使编程工具本身支持OOP,使用者
    也完全可以编出很不OOP的程序。编程并不仅仅是写出一些代码来实
    现某个功能,我倒觉得,很大程度在于写代码前的规划。在一个OOP
    程序员眼中,需要处理的问题可以被分解为若干“对象”的互动,只
    需实现这些对象的类并将其实例化,编程的任务便完成了最主要的部
    分。这些类之间的派生继承关系可以让其实现极其复杂的现实世界的
    抽象,再加上多态的特性,使得OOP编程更象是一种哲学思考。诚然,
    不使用OOP而只用结构化的编程方法,也能实现之,但二者的水平相去
    天渊。
    这就是所谓的“不OOP”和“很OOP”之间的区别。打个不适
    当的例子,如果要你编程去做一套家具,OOP程序员是这样做的:首先
    实现一个“椅子”的类,再从这个“椅子”类中派生出“高背皮椅”
    这一子类,然后调用create将其实例化(啊,这个程序员是用Delphi的
    ;-)),再调用“摆放”方法将其放置于某一位置。以此类推,实现
    “桌子”、“床”、“书柜”等等家具,这样就创建了一个家具世界。
    而一个结构化程序员,走到房中,觉得需要一只椅子,他不去管“椅
    子”或“高背皮椅”这些概念,而是立刻找来锤子、凿子等“全局函数”
    工具,建造他心目中的某一只具体的椅子。走得两步,他觉得需要另一
    只椅子,于是又如泡制,做成另一个椅子,既无图纸,也不知道与前一
    只椅子有何相同及不同之处。这样下去,固然同样能做出一套家具。但
    当家具需要加以改进,或是有某种特殊要求,又或是需要更换位置,OOP
    程序员只需对类进行修改,或是派生一个,重载若干函数,或是重新调
    用一次“摆放”方法即可。非OOP的程序员却只有将所有的家具都拆了,
    重新做上一遍。
    这样说不知说清楚了没有。其实,并非故弄玄虚,其中真意,
    难以尽用语言表述,只有自己去亲身体会。
    小弟对OOP的爱好,倒并非由于它在代码维护等方面的优势。我
    是学文科出身,现在的工作与计算机也全无关系,之所以对编程痴迷,
    完全是因为编程语言本身。在刚从C转向C++时,我被它精妙无比的结构
    所深深震撼,不能自己。我写的东西都是凭兴趣,因此常常不惜把已经
    实现的代码重写多遍,为的是更加“OOP”。痛快淋漓使用OOP时,已经
    不是在编程,而是在运用自己的思想。
    我坚持认为,OOP是划时代的伟大变革,在这个时代编程,离开
    OOP是不可想象的。最后还要补充一点,就是“支持面向对象编程”和“纯面向对
    象编程”的区别。象C++、Delphi都是支持面向对象编程的语言,而Java、
    SmallTalk等是纯面向对象编程的语言。纯面向对象编程语言的一个重要
    特点就是,不支持全局函数,因为OOP中是没有全局函数的。对于习惯于
    结构化编程的程序员来说,这似乎不可思议,其实很容易理解,因为在
    现实中,你只见过“椅子”、“桌子”这一个个的“对象”以及依附于对
    象的“方法”,从没有见过游离于对象之外的“函数”!在需要使用全局
    函数时,应该使用类方法来代替。也就是说,在纯面向对象编程语言中,
    是没有函数的,有的只是方法。CAkk老兄的反问:“写什么程序不需要函
    数?”这话似乎还停留在结构化编程阶段。
    诚然,在Windows编程中,常常需要使用WINAPI函数,而直接使
    用这些函数是不OOP的。但按照OOP的规范,的确如此,Delphi应该直接将
    所有的API都封装在VCL中,作为对象方法或类方法提供。当然,这不太现
    实,也没有必要。不过在一个OOP程序员眼里,不妨将整个WINAPI看成一
    个对象,将一个个的函数看成是它的方法,聊以自慰,呵呵。
      

  16.   

    有刘艺的<面向对象思想>这本书的电子版吗,发给我吧。很早以前就想看,可总是找不到电子版的
    [email protected]
    谢谢
      

  17.   

    《设计模式》 《OOD启思录》《敏捷软件开发》《重构》经典
      

  18.   

    有刘艺的<面向对象思想>这本书的电子版吗
    这个好象没有
      

  19.   

    www.2ccc.com 有框架下载。
    搜索 【框架】 或 【Frame】
    但是没有文档,看不懂。可以稍微研究下,理会里面的设计思想。
    http://www.2ccc.com/search.asp?keyword=框架&keyrange=0&catalog=0&subcatalog=&pageid=1
    http://www.2ccc.com/article.asp?articleid=2144Simple Application Framework for VCL 
    SmallStruct V2.2 (C/S应用框架)  
      

  20.   

    面向对象的设计实用的话就写写uml吧,装个together就行了,面向对象本来就只是一种思想,解决实际问题的时候,也会遇到不如其他想法或不必面向对象的情况,所以不必强求面向对象的
      

  21.   

    面向对象一种是建立在公共函数上的更能实现减少重复Coding的细想,而Delphi是一直能很好体现这种思想的好工具。
      

  22.   

    对,《DELPHI高手突破》是本不错的书。里面的理论性很强。也有例子。不过,看了之后得好好想想。
    我现在也是在学习面向对象的编程思想。
    你最开始说的,每一个表是一个类,我不知道为什么?就我的理解,一个表应该是一个对象。如果要写类的话,应该是为所有的表写一个类。你用这个类创建一个对象,就是创建了一个表。
    我也是糊里糊涂的,不是很清醒。欢迎+我QQ讨论7473174
      

  23.   

    当然可以为所有的表写一个类,因为所有的表都有字段列表属性,插入、更新、查询等方法。但是这只是跟业务无关的基础操作,就如同VCL的TObject,我们同样可以象TObject一样在所有表的基础类上进行继承拓展业务功能,而怎样找到继承的主线是让人头痛的一件事,业务的多样性、操作的不可预见性、流程的易改变性,都是将来导致已经设计好的继承体系的彻底崩溃的潜在可能。
      

  24.   

    《Delphi高手突破》很好
    理论比较丰富很值一看
      

  25.   

    把表当成类纯粹是为OOP而OOP,在维护和设计上根本没有简化利何工作。
      

  26.   

    yuwenge(问个问题) 我就是跟你差不多的问题
    就是不是要怎样实践
      

  27.   

    要面向对象,并不是非要通过看书从别人那里学来。只要在平常的实践中牢记:不要ctrl c/v,千万不要ctrl c/v,自然而然,逐渐就会走向把代码变成自己的(写自己的函数(面向过程)--》写自己的对象模板/类(面向对象)。看了无数的书,不管是烂书,还是某某著名书,还不如自己写一句Hello World,而不是从他光盘例子中ctrl c/v过来运行。
      

  28.   

    有些哥们对OOP理解的比较深,向你们学习
      

  29.   

    很多地方调用应该用ctrl c/v吧
    最近在看李维的<面向对象实践>和刘艺的<模式>
    但是里面都没有比较实用的例子
    很难搞懂
      

  30.   

    看了 Inside VCL 吗?结合一起看,你就会发现,单例称模式,观查着模式,工厂模式,门面模式。都在 VCL 中用到了。我还打算买到这本书 <面向对象实践>回学校看看,看完学生生活就永远 886 。模式也是人们实践出来的,不要刻意用。怎样做简单,可维护性好,就怎样做。