找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2903|回复: 23

[讨论]:ARX与VBA比较

[复制链接]
发表于 2006-9-8 23:35:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
ReadCAD先生您好
久仰先生大名
听说您原先是搞VBA的
后来改ARX了
所以我想您一定清楚二者的异同了
能给大家详细介绍一下您的切身感受吗
谢谢
也欢迎各位大虾各抒己见
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-9-9 10:05:57 | 显示全部楼层
好的,那我简单说两句吧
最早是搞Visual_Lisp的,那时只是个人兴趣而已,当时做一些参数化绘图程序。但LISP的语法实在让人难以接受,每个附值语句都要用SETQ。其DCL界面设计非常原始,总的感觉采用LISP编程的难度不亚于ARX,如果是简单的程序,用LISP是很容易实现的,但如果要编写终合型的大程序那LISP简直是不可想象的,可能也是做不到的。
后来接触到了VBA,所以就开始了VBA编程,在VBA下到是真正感觉到了程序的味道。VBA通俗易懂,非常容易上手,能编写出比较象样的程序,而且界面设计也彻底摆脱了DCL。当时就以VBA为核心,同时采用VB还有LISP同时开发一个软件。因为VBA的有许多功能难以实现,所以不得不借助于其它两种语言。但随着时代的变换,用户的要求越来越苛刻,竞争越来越激烈,在VBA下做出的程序远不能根同行的软件相抗衡。这主要是VBA采用COM接口机制,所提供的功能太有限了,好多功能设想根本就实现不了。我把VBA系统该具备的所有功能都研究过了还是难以实现。我感觉当时已经把VBA发挥到了淋漓尽致,但最后还是决定选择更换其它的开发工具。
所以我认为,LISP和VBA都是属于定制层次的二次开发,LISP是简单的定制,而VBA则是高级定制。
从2005年8月正式转向了ARX,ARX太难了,非常难以入门,即使入门了也不是能轻而一举能用好的。但我心理知道,任何真正有价值的东西都是很难的,所以就拼命去研究,由于对AutoCAD比较了解,所以学ARX还算好一点,再者,我在以前也对VC++和C语言也研究过一点,所以大概3个月自后我就对ARX开始有了兴趣,开始在新的平台下开发软件了。搞AutoCAD的而次开发选择ARX是非常理想的,当难度也是相当大的,这是大家都有同感的。好多人都说ARX很强大,无所不能,我不这样认为,ARX功能确实很强,但我还是感觉受制于人,有相当部分我设计的想法还是非常难实现,有些还要饶很多圈子才能实现。但我完全接受这样的现实,既然我选择了ARX,那么我能将AutoCAD发挥到多大成度,其实早已由ARX决定了的。要想真正随心所欲,那只有直接采用VC++了。目前我宁愿在ARX下饶些圈子也不想自己独立去开发一个独立的CAD平台,因为那不是想做就能做到的。在这一年多的时间里,遇到的问题太多了,攻下的技术问题不下二三十个,当然主要是得益于本论坛许多好心人的无私帮助,在我的软件中,几乎没有采用任何AutoCAD的命令,也没有使用任何AutoCAD的实体,全部是自定义实体。而且实体非常复杂,相互之间的关系也是非常复杂的。ARX的范围太大了,我也只能对我要用到功能做些研究。
最后,我认为如果你想真正搞软件这一行,那就选择ARX不错,不要说难,当你把身边有限的资料翻烂了那ARX也就自然贯通了,否则就选择VBA比较好,LISP难度大,但却很难编出好的软件。
希望所有想学或刚开始学的朋友都能在ARX中感受到乐趣,工作做的更出色。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-9 11:40:17 | 显示全部楼层
ReadCAD说得精辟啊,同感:)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-9-9 17:46:24 | 显示全部楼层
非常感谢
说的太好了
对于初学者ARX入手太难
特别是没有VC开发经验的
直接看ARX的书很难深入的理解
而且这方面的资料少得可怜
我想如果想学二次开发的话
先学VBA,然后再学ARX
是否会柳暗花明呢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-10 12:53:08 | 显示全部楼层
看了RedCAD兄发表的话,我深感佩服!我是去年底才开始接触CAD二次开发的,开始为了图简单,也用VBA,但用了两三个月后,感觉VBA用起来不是很顺手,就想转,但也是怕难,就不想转ARx,但到后来,项目需要呀,VBA实在做不了太多的事,而且我以前主要是用C、C++,对MFC有一定的了解,感觉用起来要熟悉些,所以在今年大概是3、4月份的时候转向了ARX,到现在学了快半年了,从最初的数据库结构,实体操作,字典,扩展记录,到现在的JIG拖动,自定义实体,CAD的COM接口,反应器,协议扩展等等,书看了两三本,但感觉还是不够,特别是运用到实际的工作中,所以只有啃SDK了,English了,MD,赶明儿中国人还是搞个什么东西,让老外啃中文SDK去,搞死他们!呵呵,这是玩笑了!不过,感觉现在对ARX的大概的一些东西,都有了一些了解,后面就是深入每个技术方面来进行研究了!在这里,还要感谢晓东论坛里面的高手们,特别是RedCAD老兄,对我帮助甚多!只是觉得高手们应该联合起来出本书了,现在市面上的ARX书,没几本像样的!祝各位ARX兄弟事业有成!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-11 10:51:22 | 显示全部楼层
yoursmile ,东西我终于收到了,真是非常感谢你,在新的环境下可能要遇到一些问题,可能需要你的帮助啊。

哈哈,大家来看我现在的发贴数,正好是911,而且今天也正好是911,多么巧合啊,难道上天注定我与911有关吗。其实我只不过上个星期天和拉登大哥作了一次非正式的会晤,讨论如何消除目前国内潜在的各种矛盾,同时探讨如何来劫富济贫的事宜,同时我们还共进晚餐。我还问他如何看待布什这个家伙,他坚决地说,他是21世纪的东条鹰鸡。最后他也表示出对ARX的强烈兴趣。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-11 15:19:28 | 显示全部楼层
老兄东西收到了就好了,相互帮助,共同进步!
老兄的发贴数太巧了!刚才我还和老胡同志讨论这个问题呢,老胡说RedCAD兄这个发贴数太刺激了,想给你个二十一世纪第一巧合奖呢!赶紧申请吉尼斯世界纪录!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-13 18:00:31 | 显示全部楼层
对于用惯C语言的人来说
LISP语言很别扭
不知LISP为什么没有参考C或者BASIC的语法
记得以前看过一种叫Prolog智能语言
虽然也有点怪异,却有其道理
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-22 21:31:30 | 显示全部楼层
各位高手,小弟有个问题想在这里请教一下,
如果我想做这样一个自定义实体,应该怎么下手,
我想把当前数据库中所有的实体,放入自定义实体中,
成为自定义实体的一部分,应该怎样处理呢???
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-22 23:52:22 | 显示全部楼层
直接在WordDraw中画出所有的图形,但那样会带来许多问题,这样的做法其实已经违背了CAD软件的软件的根本原则。不知道强行这样做有什么好处?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-24 01:11:23 | 显示全部楼层
厉害。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-24 14:58:25 | 显示全部楼层
CAD中不是有AcDbBlockReference实体,可以把当前实体加到块中,
形成一个新的图块,插入到当前数据库,既然CAD本身能做到,
哪自定义实体应该可以实现呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-9-24 20:24:36 | 显示全部楼层
最初由 RedCAD 发布
[B]序,因为VBA的有许多功能难以实现,所以不得不借助于其它两种语言。... [/B]


最近看到一本介绍用VB.NET开发CAD的书
是不是功能强大一些
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-27 15:28:08 | 显示全部楼层
arx真的很难,尤其是对我这种业余选手,不过我发现看了arx之后,对CAD有了更多的理解。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-10-11 20:49:30 | 显示全部楼层
顶一下
大家继续讨论
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-5-5 16:05 , Processed in 0.255388 second(s), 57 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表