autocad二次开发,用vb还是vc? 语言选择之我见
www.dimcax.com
autocad二次开发,用vb还是vc? 语言选择之我见
首先承认:lisp等其它语言我是不大懂的,所以只好拿这两个最常用的语言来比较。
然后声明:纯属个人意见,给初学者参考,老手请高抬贵手。
先说说vb相对于vc的优势:
1、简单易学,vb哪怕是现学也只要几天就行,而c++有令人无限敬仰的mfc内裤。
2、cad自带有vba,很多情况下无需安装编程软件
3、编制功能相同的程序,vb耗费的时间很少,出程序快
4、相对的,作出来的程序bug也少一些
5、不仅cad支持vba,连microstation、office等全都支持vba。
先不谈程序的跨平台移植,自己也省事啊。学一门语言可以适应多种场合的需要。
缺点也是很明显的:
1、功能不如c++那么强大,有少数功能实现起来还是有些费劲
2、运行速度很慢。真的不是一般的慢,特别是采用vb设计一个独立程序和cad交换数据,
或者做一个cad-office程序的时候。
我测试的结果,在现在主流商用pc的配置下,每秒大约可以交换1000-2000次数据,
这个速度造成的结果是,在运行一些大量数据处理程序时会有数十至数百秒的失去响应状态。
3、当你用了非标控件的时候,需要在部署程序的时候带上ocx文件。
4、vb主要的思路还是过程语言,在多人协作或编制大型程序的时候明显比不上vc的面向对象。
再谈谈我的看法:
平时所谓的“cad二次开发”,真正很多人协作来开发一个功能很强大的软件包是非常少的。
绝大多数的情况是仅仅需要对cad软件固有功能的一种有限的扩充,例如按照某一指定规则批量修改某类图元等。
对于这种超小型的开发,因为运行次数很少,关键问题并不是程序运行的有多快,或者部署起来方便,而是出程序有多快。
比如一个批量的操作,人手工来改如果需要1周=5天。使用vb编程需要1天,运行起来需要10分钟,
用vc编程需要3天,运行只需要10秒。那我仍然选择vb,因为该程序应用范围小(基本只有我一个用),
运行次数少(工作干完程序就基本没用了,以后有相似问题可以参考代码)如何更快的解决问题才是主要的。
而平常工作中,遇到需要开发的情形绝大多数是像这样的小问题。
真正做一个功能强大的二次开发,那根本不是一两个人能在短时间内搞定的。
那不是应用人员的事情,而是软件公司的工作。
re:autocad二次开发,用vb还是vc? 语言选择之我见
赞同楼主的意见。
re:autocad二次开发,用vb还是vc? 语言选择之我见
所以,只要不是在软件公司工作,还是vb或者vba吧。
简单又实用,性价比相当高。
re:autocad二次开发,用vb还是vc? 语言选择之我见
10分钟和10秒钟相差太悬殊,我不能苟同
造成这么大的差距,我只能说是方法有问题
re:autocad二次开发,用vb还是vc? 语言选择之我见
爱咋咋的
反正很少看到有多少算法的开发,基本都是些很低级的代码,常常只是一个基础函数语句的调用而已,对开发者个人可能有用,开发的时间还多于手动修改的时间
re:autocad二次开发,用vb还是vc? 语言选择之我见
vb比较好
re:autocad二次开发,用vb还是vc? 语言选择之我见
vc比较底层,限制少,自由度大,比较灵活,开发难度大,可开发出很强大的软件;
vb的数据结构、类方面比较差,如果是简单的应用,当然是vb比较好,直接利用软件内建的对象,但如果在这些对象之外做开发,就很麻烦了
re:autocad二次开发,用vb还是vc? 语言选择之我见
lisp如何?
re:autocad二次开发,用vb还是vc? 语言选择之我见
我也觉得vb的好!
但是我的是感觉,
说不出哪些方面是比vc优越的。
技术员
re:autocad二次开发,用vb还是vc? 语言选择之我见
vb比vc好学么,不敢苟同
没有个性的才是个性的
re:autocad二次开发,用vb还是vc? 语言选择之我见
vb好学,如果单单是自己用的话,还是vb好点,仅限于小的局部性的二次开发