最近这段时间由于工作换成实施岗位,公司的软件又都是跑在windows上,所以经常需要写一些windows平台小工具,去解决重复劳动的问题。回顾了自己所知道的windows桌面开发工具,MFC、QT、Delphi、C#、VB.net、VB、pyQT等等,Delphi自己不会,用C++有一种杀鸡用牛刀的感觉,用.net又觉得部署麻烦的很,一个工具可能连1M都不到,我还要安装并且跑一个几十上百M的.net框架,麻烦啊!想用Python,但是自己还在学习中,而且pyQT自己目前还没有搞定。最后考虑来考虑去最后还是决定用VB 6.0,可以说比较古老的工具,但就是这个工具,以前上学的时候,一直喜欢那它写上位机软件,聊天软件等等各种小工具。当时喜欢用的他的原因,只有一个: 那就是快!一个上位机程序,我可以半天就写出来,上下位机整机联调快的时候基本一天就可以搞定。这就是生产效率。
再说说vb的同胞兄弟vba、vbs,尤其是vbs我也做过不少东西,office自动化脚本,用百度翻译api写自动翻译脚本都是拿vbs实现的,也做过一些asp+vbs定制修改。还有他们的老祖宗basic,我也情有独钟啊。当年盖茨叔叔发家,我记得好像也是靠写basic解释器,赚的第一桶金(看过很多文章说盖茨的第一桶金因为basic,所以微软才有了vb、vba、vbs以及后来的vb.net)。有点说偏了,言归正传,我这儿特想说就是其实用vb开发也没什么丢人的,以前自己写上位机的时候,特害怕别人问我你用什么开发环境写的啊,那时候总是藏着掖着,总感觉用vb写很low的感觉(虚荣心作怪),N多次下次一定用vc或者qt写,但事实,开发时间上的巨大差异,使得自己在下一次的时候还是选择了vb。虽然vb一点也不高大上,但是确实很实用。
vb被很多人不屑一顾的还有一个原因,运行效率低,但事实真的如此吗?曾经在知乎看到过的这样一个回答:“一个语言的运行效率80%取决于使用者,20%取决于语言本身”(大概意思,原话记不清了),最近这段时间使用vb的体会,对这句话印象深刻。vb在绝大多数普通桌面场景下,只要编写得当,其性能完全可以满足,个人认为。这里顺便吐槽下微软,为了.net平台,为了把自家的C#推广出去,把vb平台积累用户强行迁移至.net平台,搞了一个vb.net,借此将开发者慢慢转移到C#,结果搞得vb.net感觉基本半死不活的样子,个人认为。自己也曾用vb.net写过上位机,但是部署的时候那是相当不方便啊。结果后面上位机编写的时候用得更多是NI公司的LabWindows/CVI。
最后要说的是编程的思想,现在感觉vb如此powerful,想写好vb,必须更好利用api,写更通用模块或者类模块(提高代码复用率,加快开发速度)等等,篇幅有限不细说了,这些思想是绝大多数语言通用的,可以说是软件开发的共性思想,我个人认为,能写好vb并不一定也能够把其他语言也写好,(比如basic和C的对比,想驾驭C完全是需要天赋的,basic则相对容易的多),但是一个人如果连vb也写不好,那么他去写其他语言也不会好到哪里去。(个人水平有限,还望大家多指正啊)
原文链接:https://www.f2er.com/vb/257184.html