大多数企业用的开发语言,莫过于C++了,但是随着科技地发展,其他的编程语言也在慢慢的进入用户的视野,那么这三种开发环境并不一定说哪个程序比哪个程序要好,但是目前还是C++开发环境占主流。
一个古董级的开发环境,说他是古董是因为很少有软件用那么久还有大量的用户在使用,有点像当年的Borland公司的tc。vc6.0用微软在开发环境上的***突破,是带有历史意义的。由于vc6.0的出现,使微软打破的长久以来被Borland公司的C++ builder独占C++开发环境的局面。
VC6.0界面简洁,软件运行效率高,使得他成为的大家都***。其实就用vc的后续版本,现在微软已经把它出到了vs2010。每年更新一次版本,可见微软对vs的雄心壮志。系出我软件,所以比起其它开发环境有着得天独厚的优势。
对自己操作系统的***支持,丰富的功能集成,使得他成为的大量程序员的***。BCBBorland的公司的杰作。特别是BCB6.0很是值得一提,看看市面的关于C++ builder相关的书就知道,几乎所有的书都是根据6.0写的。
比起微软的作品,BCB有着她独有的魅力。像vb一样的高效的开发环境,高度集成的控件可以满足我们大部分的需求。虽然BCB所开发的软件运行效率比不上微软的,但是使用它开发软件可以节省我们好多的时间。当前硬件发展的如此之快,BCB与vs的效率几乎是感觉不出来的。
使用vs可以提高软件运行效率,但是使用BCB却可以节约我们的开发时间。如果是个小程序BCB的开发时间是相当短的。BCB提供的控件相当丰富,操作又想到简单,使得它能节约相当多的时间。
微软的MFC框架是一套相当复杂的模型,用BCB则完全跳出来MFC框架。在计算量大且软件界面没什么要求的情况下完全可以使用vc6.0,要求再高点的话就可以使用vs,如果时间紧且对界面要求高,我很是建议大家用BCB。
单纯的比较开放环境其实是没有多大意义的,具体的选择还得看大家的个人习惯及工作环境。开放效率和运行效率本就很难两全齐美,就如同用sdk开发软件肯定比用mfc开发出来的运行效率高,但是大家却很少有人去用sdk开发一样。开发效率和运行效率只能有开发的要求去权衡,单纯的说哪个好求实是无稽之谈。
这篇文章本来发的很早了,写的也一般,只是今天无意间看到了网上一篇2003年的关于vc和bcb开发软件在执行效率上的比较,感慨一下,又把这篇改了一下。单纯的比较执行效率是一件愚蠢的事
但看了无数篇阐述C++复杂性的文章,和争论C++复杂性的吐沫星子(包括我前段时间写的两篇关于C++的总结)。我始终都有一个感觉——没分析透,就跟盲人摸象一样。正如“Why C++”的一位读者批评的,我在文章里面没有写明到底哪些是C++的“非本质复杂性”。
当然,我自己凭感觉就能知道,而接触C++一段时间的人大致也能知道,但新手乃至非新手则对我所谓的“非本质复杂性”根本没有一个具体的认识,这就使得那篇“Why C++开发环境”脱离了原本的意图——面向所有C++使用者和学习者。
同样的原因,在写了“你应当如何学习C++”一文之后,当孟岩先生邀请我给《程序员》写一个系列的文章,介绍一下我在接触C++的过程中的态度和认识转变时,我虽然非常高兴的答应了,但直到现在3个月过去了还是颗粒无收。
为什么?因为我觉得真正本质的问题没有被清晰的触摸到;所以直到现在我都没有动笔,免得废话说了一大堆,除了能被当成小说读读之外,对真正考虑是否要学习乃至使用C++开发环境的人未必有什么实际用处。
然而,这么个念头一直都放在潜意识里面。前一阵子和Bjarne通信,谈到了关于C++复杂性的一些想法,在邮件里面总结了一下C++的复杂性来源,感觉思路清晰了许多。而这篇文章要达到的目的,正是传达对C++的复杂性的一个具体而明确的认识,有了这个认识作为支持,我们便可以推导出学习C++的***(实践者)的方法。
【编辑推荐】