<BR>
<P>说的蛮透彻的,</P>
<P>看来真的要用心学一下了,,,,,,,</P>
<P>顶一下!!!</P> <P>确实说的挺透彻的!万分感谢</P> aqin发表于2004-10-23 1:36:00static/image/common/back.gif如果能将Arx弄好了,他就不会局限于AutoCAD,不会局限于CAD,他可以做任何事,他的职业范围将非常的广
唯一的条件就是不能脱离autocad平台!
<BR>可以! <P>arx的缺点:</P>
<P>1.难学,需要的基础知识比较多.必须熟悉C++和AUTOCAD的一些基本概念.VC++中的类库已经够一个人研究一两年,arx的类库更是复杂.</P>
<P>2.软件的移植比较困难,在不同AUTOCAD之间移植时,至少要重新编译.</P>
<P>3.开发费用比较高,需要多个AUTOCAD版本的软件时,必须配置多个版本的AUTOCAD和最高版本的VC.</P>
<P>4.代码书写的工作两远比AUTOLISP大.</P>
<P>优点有四:</P>
<P>1.代码运行速度快.</P>
<P>2,代码的保密性好,编译后的代码无法破解.</P>
<P>3.功能强大,可以实现大量AUTOLISP不能实现的功能(如二进制文件的操作\系统资源的调用).</P>
<P>4.程序的移植性好.在不同版本的AUTOCAD之间移植时可以不做修改.</P>
<P>因此采用什么方式取决于本人的计算机水平和预期要达到的目标.不能一味的追求所谓的先进.</P>
<P> </P>
<P> </P> <P>有一种所谓adsrx的方法兼顾上述两钟语言的优点,其核心就是利用C语言的与AUTOLISP对应的函数来实现相应AUTOLISP的功能.它具有执行速度快\代码保密性好的特点.</P>
<P>其编程的要求只需要熟悉C语言和AUTOLISP就OK了.</P>
<P> </P> <P><FONT face=新宋体>adsrx将会在不久被淘汰,只是必然的趋势,因为不面向对象的编程方式导致的将是灾难性的混乱。你可以在一个过程里来回将acedNewBufer或者acedSSFree写几十遍,也不会觉得风格不好,这是因为他没有对象的氛围,过于线形了。</FONT><FONT face=新宋体>SDK中的adsrx函数一年比一年少,少有的几个常用的还注明了:will be removed in a later release,更说明了这一点,</FONT></P>
<P><FONT face=新宋体>如果说兼顾的话,可以使用CLR,06以后提供了对.net的完整支持,使用混合托管代码,可以使你的程序易于管理,并通过_unsafe的使用获得更高的速度,缺点是混合编码的技巧高不好学,如果纯托管又没有理想的速度(跟VBA是一个级别)。虽然作为一个对C++有深厚感情的人要想接受.NET需要一定的勇气,但是我还是在尝试他的使用。</FONT></P>
<P><FONT face=新宋体>Objectarx的价值完全不仅仅在于可以使用各种命令,Objectarx的价值是Objectarx和COM,如果没有他们,Objectarx的价值趋近于零,如果仅仅是用C写lisp可以做到的程序的话,我宁愿用lisp,就因为Objectarx的可能是无限的,我才坚持它。我相信没有任何一种脚本语言或者伪脚本语言可以和C++相提并论,BitTorrent的经验也告诉我们,从来没有一种需要速度的程序,能有脚本语言把它做的完美,而我们所需要的是C++。用过DBX的人会感觉到,与lisp相比,DBX价值如同在闪耀。</FONT></P>
<P><FONT face=新宋体>另外.ARX/.DBX就是一个win32dll因此ARX的意义不仅仅在于CAD,而在于对控制力的态度,既然是win32dll因此可以做任何事情,你也许看到过3d的目录里那个熟悉的图标,你明白它的意义吗?那就是DBX是可以跨平台的!道理很简单,因为是win32dll,所以不同语言,不用用途的程序只要在windows下就可以调用它,只是看方法的问题,这就是为什么说,ARX不是局限在CAD的范围内的了,况且,使用C++编制的程序,是那样赏心悦目,还有什么理由让你绝的lisp是可与ARX比较的呢?lisp的优点在于小,诚然,抛开CAD不管,ANSI LISP是出色的语言,但是,autoLisp继承的就太少了。</FONT></P>
<P><FONT face=新宋体>我是一名ARX的爱好者,视ARX如同视朋友一般,这是我的一点拙见,也可能带着我的偏见,但是希望还没有学ARX的朋友能够从心底喜欢他,使用他。如果你怀疑他的能力,那么最好打消你的念头了,ARX的能力简直是无限的!</FONT></P>
页:
1
[2]