艰难的选择 C++Builder OR VC++

昊86 2014-08-25 11:29:13
C++Builder :非常好的快速开发工具,只要会C、C++ ,懂操作系统原理,稍微看一下事件驱动的知识,很快就上手了。 所见即所得,并且它用的VCL控件封装的非常好,你放一个按钮,只要双击就可以编辑功能代码,工程文件除了窗体文件就是CPP/H文件,非常简洁高效!
但是除了6.0 有一个完善的帮助文件系统,XE 的帮助文件系统就差多了,控件也查不到,系统API也查不到。
C++Builder 有一个地方非常怪,做的不标准。 使用线程函数API,得到线程实例的句柄,按说可以使用WaitSingleObject函数,等待线程结束,可是线程结束了,这个函数也返回不了。 而在VC++中就很好的执行。这可是按照教科书上的写法呀。


VC++: 非常好的开发工具。Windows开发的利器,不过相比C++Builder,它的使用繁琐的多,它的项目留给你一堆技术细节要处理,例如画刷(Brush),设备上下文(DC),画图区域(Rect)等等,里面的代码结构也比较松散,往往看了以后,容易头大,不如C++Builder 的整齐,另外它的工程文件也很复杂,包括了APP.cpp/ View.cpp/ Dlg.cpp/Doc.cpp 文件,要开发一个windows程序,上手时间长。


C++Builder我用了4年,开发了10来个程序,VC++用了半年多,只做过一些练习。由于版权问题,不能大量使用。
不过有一点,让我对VC另眼相看,C++Builder 开发过一个Socket 网络通信程序,跟范例写的一模一样,但是范例通信非常快,自己写的就要等30多秒才发送成功。而VC的Socket 瞬间就发送成功了。 当时调试这块的程序,试了很多方式,花了很长时间。

不过也看到网上有资料说,惠普等一些500强公司就是用C++Builder的,但是看到国内软件工程师的招聘条件,都是要求会VC++。没有说会C++Builder的。Builder太小众了?
个人感觉,Builder是工作中用的,尽管存在一些小缺陷,但是毕竟快,还是不错的。
VC也一定要掌握好,因为市场认可度高,如果只会Builder, 万一换了环境,人家要求VC,还得学习。
并且在界面绘图等方面也更加灵活,网上资料多,另外图像处理、机器视觉等系统在业内也要求VC做。很多公司都没听说过Builder。


各位高手,都用什么工具开发大型项目呀?对于使用VC还是Buidler有什么看法? 建议用那一个?
...全文
11495 点赞 收藏 39
写回复
39 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ooolinux 2017-03-09
引用 38 楼 silverpot 的回复:
为什么要二选一? 我做directshow和opencv就用VC++ 其它的应用,比如数据库,网络通信啥的,我就喜欢用C++ builder
做directshow和opencv用VC++,这个需要MFC吗?
回复
银点 2017-03-09
为什么要二选一? 我做directshow和opencv就用VC++ 其它的应用,比如数据库,网络通信啥的,我就喜欢用C++ builder
回复
车蓬草 2017-03-08
  我最近偶尔也玩玩C++,对它的开发工具也有点纠结。VS玩久了,想看看其它工具如何。问百度,结果就找回这里了。
回复
rickys2035 2016-03-01
逻辑和算法用纯C++/C, 界面用熟悉的工具就好啦
回复
cxxer 2016-02-24
C++ Builder RAD
回复
老顽童 2015-01-04
说得好,一个开发工具必须纯熟才有效率。
回复
麻酱面条 2015-01-03
我个人认为还是看任务。任务驱动来选择开发工具。
回复
weill 2015-01-03
引用 3 楼 ccrun 的回复:
我哪个都不精,只是会使用一点而已。 我现在用VC++写类库,用C++Builder/Delphi做界面,混合开发。
个人认为,这的确是最佳的方案。 BCB在窗体、控件等方面非常容易上手,但核心的一些方面存在一些说不清道不明的味道。 VC好象更规范,稳定,但用起来很头痛,不是所见即所得。
回复
xjq2003 2014-11-18
引用 楼主 u010758237 的回复:
C++Builder :非常好的快速开发工具,只要会C、C++ ,懂操作系统原理,稍微看一下事件驱动的知识,很快就上手了。 所见即所得,并且它用的VCL控件封装的非常好,你放一个按钮,只要双击就可以编辑功能代码,工程文件除了窗体文件就是CPP/H文件,非常简洁高效! 但是除了6.0 有一个完善的帮助文件系统,XE 的帮助文件系统就差多了,控件也查不到,系统API也查不到。 C++Builder 有一个地方非常怪,做的不标准。 使用线程函数API,得到线程实例的句柄,按说可以使用WaitSingleObject函数,等待线程结束,可是线程结束了,这个函数也返回不了。 而在VC++中就很好的执行。这可是按照教科书上的写法呀。 VC++: 非常好的开发工具。Windows开发的利器,不过相比C++Builder,它的使用繁琐的多,它的项目留给你一堆技术细节要处理,例如画刷(Brush),设备上下文(DC),画图区域(Rect)等等,里面的代码结构也比较松散,往往看了以后,容易头大,不如C++Builder 的整齐,另外它的工程文件也很复杂,包括了APP.cpp/ View.cpp/ Dlg.cpp/Doc.cpp 文件,要开发一个windows程序,上手时间长。 C++Builder我用了4年,开发了10来个程序,VC++用了半年多,只做过一些练习。由于版权问题,不能大量使用。 不过有一点,让我对VC另眼相看,C++Builder 开发过一个Socket 网络通信程序,跟范例写的一模一样,但是范例通信非常快,自己写的就要等30多秒才发送成功。而VC的Socket 瞬间就发送成功了。 当时调试这块的程序,试了很多方式,花了很长时间。 不过也看到网上有资料说,惠普等一些500强公司就是用C++Builder的,但是看到国内软件工程师的招聘条件,都是要求会VC++。没有说会C++Builder的。Builder太小众了? 个人感觉,Builder是工作中用的,尽管存在一些小缺陷,但是毕竟快,还是不错的。 VC也一定要掌握好,因为市场认可度高,如果只会Builder, 万一换了环境,人家要求VC,还得学习。 并且在界面绘图等方面也更加灵活,网上资料多,另外图像处理、机器视觉等系统在业内也要求VC做。很多公司都没听说过Builder。 各位高手,都用什么工具开发大型项目呀?对于使用VC还是Buidler有什么看法? 建议用那一个?
与其左右为难, 不如左右逢源
回复
踏岸寻柳 2014-11-13
随便一个都可以的,另一个也别落下,就当玩儿了,慢慢会发现各有千秋
回复
过客猫2020 2014-11-12
远离开发,珍惜生命
回复
zzhong2 2014-10-28
To be or not to be that is a question
回复
xjq2003 2014-10-27
回复
DelphiGuy 2014-10-24
语言本身不是问题,问题是库,所谓的应用开发框架,每个工具都有自己的一套东西(以及应用这套东西的开发思路),或复杂或简单,象Delphi的组件源码中定义了10000多个类(就我的检测,Delphi7中定义了4509个类,DelphiXE5中则有12248个类,不包括提前声明的类),而.net 3.5也有近10000个类,JDK中有多少我没有数据,估计也少不了。所以“C++转JAVA那太简单了”这只针对语言本身大致是没问题的,但是你要把JDK那套东西搞熟练,做到拿出个项目来你就能接上手,没个两三年根本不可能。就是Java Script,也不是象很多人想象的那么简单,照猫画虎抄个小应用是比较简单,但是要独立完成个复杂点的东西,比如页面游戏,也够你研究一阵的。
回复
Hank 2014-10-24
侧重通用底层的,VC是第一选择 侧重数据库界面的,DELPHI是第一选择 BCB说白了,就是为了所谓的TC情节搞出来的怪胎,除了语法是C++的,其他全是DELPHI的,甚至编译器都是通的。 兴趣和生产力是两回事,企业考虑的是综合成本,所以,放弃BCB是现实选择。 语言,当你到一定程度后,什么语言都没关系,前提是你能到这个程度,而在中国,80%的程序员是过不了这个坎的。而C/C++是高级语言之母,只要搞精这一个,C++转JAVA那太简单了。
回复
SuperDay 2014-10-17
我来说两句吧,如果你CB用了四年,那么VC就不是什么问题了。我以前用CB比较多,后面主要都是用VC了,毕竟现在外面用VC的更多一点,虽然我更喜欢CB一些。我觉得要有平常心
回复
ccrun.com 2014-10-17
test
回复
sczyq 2014-10-17
养家糊口 与 兴趣爱好 是两码事
回复
fohoo 2014-10-16
windows 平台搞 C++, VC肯定是第一选择,如果你要做个界面啥的,还是用VS,用C#来开发,C/C++来扩展比较有效率,界面简单全用VC也行
回复
fohoo 2014-10-16
听我的没错,C++ Builder 没有前途,和Delphi一样的坑,坑程序员的时间,时间是很宝贵的 软件开发,核心语言还是C/C++,操作系统和基础底层都是C/C++写的,当然其他JAVA,C#,Python,LUA也都很不错,各有所长 基本你用JAVA,C#,Python,LUA这些个语言,最后这些语言都会来个类似JNI之类或者其他C/C++接口让你和底层接口打交道扩展(android特别一点,由java提供了大量系统API接口) C++ Builder / VC / QT Creator/g++这些,从C/C++语言来讲大体是一样的,然后底层API系统有差别,和这些开发工具没多大关系,区别大的就是他们有的会提供一些框架分支底层的API,其实是封装有成本和滞后的,大部分底层的API都设计的很好,我们直接用更好,或者我们直接简单封装处理一下更好,当然最大需要的框架是界面,这个可以说是区分C++ Builder / VC / QT Creator/g++的关键,做界面的话,windows直接C#好了,跨平台QT/WxWidgets比较多人用,QT大庞大了,只是做界面的一个选择,其他时候不建议用
回复
加载更多回复
相关推荐
发帖
茶馆
创建于2007-08-02

529

社区成员

C++ Builder 茶馆
申请成为版主
帖子事件
创建了帖子
2014-08-25 11:29
社区公告
暂无公告