什么叫better C,ADT,OO,和GP?use() 是什么意思?急在线等

liufangzhou19840909 2004-12-22 10:41:33
什么叫better C,ADT,OO,和GP?use() 是什么意思?
...全文
250 点赞 收藏 8
写回复
8 条回复
nicknide 2004年12月22日
现在不是有了新的提法了吗?AO -> Agent-Oreinted

面向智能体的编程方法,不过好象还只有JAVA能够弱弱的直接支持一点……
其他的语言还没法支持

泛型就是好东西了啊,是C++思想的2大支柱之一了……而且C++也是靠这2条腿才得以快跑的……
回复 点赞
bruceteen 2004年12月22日
C++有四个主流部分:better C,ADT,OO,和GP,以及发展中的functional, generative,meta programming等。
Better C, 只增加函数重载、引用类型、缺省参数等简单特性的类C子集。因为有很多研究发现OO弊大于利,有很多大师一直认为OO是软件科学中出现的最垃圾的编程思想;
ADT C++,整个程序由平面化的具体类(concrete class)对象构成,无继承,无多态。
回复 点赞
beyondtkl 2004年12月22日
MK
回复 点赞
o1n 2004年12月22日
抽象数据类型(ADT) 你可以查看《数据结构》相关内容。
回复 点赞
wacle 2004年12月22日
我从来都只有一个信念:面向更高层的抽象. no matter oop or gp order by this rule.
回复 点赞
xboss 2004年12月22日
MARK
回复 点赞
xuzheng318 2004年12月22日
GP到底是什么?说实在的,我认为目前还没有几个人真正弄明白了。Template机制刚刚发明的时候,只不过是想用来制作“容器”,结果人们惊奇地发现,抽象能力的提升使C++具有了独一无二的表达能力,而这种能力又衍生出一系列编程模式。我和cber一样,坚定地认为GP是一种新的编程范型,虽然跟OOP有一些关系,但不是OOP的扩展,更不是它的一部分。前面有人说,OOP把世界看成物与物的集合,那么在GP看来,世界是对象与抽象行为的组合。思想上的本质不同,决定了GP与OOP的不同。从语言机制上来说,我们需要一种东西来帮助我们表现抽象“行为”。template就是这种东西。别的手段,比如说RTTI,比如说单根树,即使能达成这个效果,也是一种模拟行为,就好像在C中间实现OOP一样. 我的确认为向Smalltalk,java.util以及JAL中表达的意图也属于GP,但是那是绕着弯实现的GP,我不认为这是GP的发展方向。GP必须说自己的母语,才能创作最伟大的作品。

另外,从现在的发展看来,STL是GP的开始,而不是最终成果。Template所提供能力远远超过了STL所表现出来的。大家可以从Addison-Wesley下载Modern C++ Design一书的源码,或者去看看FC++库的文档,你会发现实际上STL已经是目前GP技术的底线了。如果C++社区足够激进的话,现在完全可以再做一个先进的多的Super STL。如果某些其他语言的程序员以为气喘吁吁地搞定了STL,就表明那个语言具有与C++同等的GP能力,那就大错特错了。

题外话,谈到效率,我给大家举一个例子。前几天看到一个英国的MVP(Microsoft Very Person?是不是,我不太清楚)的贴子,说自从他接触了WTL之后,就再也没摸MFC。这位老兄可是MFC老手,为什么放弃的这么干脆?他说了原因:他把自己颇为得意的一个MFC程序用WTL改写,结果让他极度惊诧,MFC程序有1.5M大,而且需要DLL支持,而对应的WTL程序,只有200K,而且无需任何附加DLL支持。他说他从那时候起就明白了,未来是属于GP的。
回复 点赞
xuzheng318 2004年12月22日
OO 只是一种思想
无论是 C++、Smalltalk,还是汇编,都只是手段
两者只有结合起来才能够发挥威力
你如果掌握了 OO 的实现机理的话
那么在汇编中应用 OO 思想也不会是什么不可能的事

我觉得,汇编中的 struc (结构)就提供了一个非常好的实现 ADT 的工具
虽然很简单
回复 点赞
发动态
发帖子
C++ 语言
创建于2007-09-28

3.1w+

社区成员

24.8w+

社区内容

C++ 语言相关问题讨论,技术干货分享
社区公告
暂无公告