Contents ...
udn網路城邦
我的車牌辨識軟體都是用VB.NET寫的
2018/12/27 15:31
瀏覽1,228
迴響0
推薦10
引用0

Microsoft’s Visual Basic .NET makes TIOBE top 5 programming languages

這篇報導說VB.NETTIOBE這個程式語言排行榜列為2018年的第五名!讓很多專家跌破眼鏡,但也同時暗示微軟將不再繼續讓VB.NETC#同步進化,意思是說雖然VB.NET現在各方面的功能與效能和C#完全一樣,但終究還是會被主流派慢慢淘汰?裡面也再次提到幾十年來根深蒂固的成見:

It is considered a toy language meant for people who start to learn programming.

很有趣的!從VB誕生開始這種說法觀念從來都沒改變過,VB好像是在NBA打球的林書豪,總是被低估,總是被說即將被淘汰,其實也從來沒有甚麼專家或團體刻意支持保護它,但它就是長命百歲,到現在都死不了?居然還排名上升,鋒頭蓋過了同胞兄弟C#

近二十年來我都是靠寫程式的技能過活的,教了十多年程式設計,現在開軟體公司,做的還是極需要演算效能的影像辨識軟體,產品效能也非常好,做車牌辨識的速度應該是世界頂級的!這些優秀的產品沒有例外都是用VB寫的,所以應該也有資格談談我對這種語言的心得感受。

我自己接觸的第一種語言是比C語言更古老的Fortran,一直到博士論文中發明的地形辨識演算法,都是用Fortran完成的!但事實上我從買第一部自己的PC開始(1984),就愛上了Basic語言!第一個程式就是寫邏輯很繁複的橋牌自動叫牌程式!其實對我來說用這個「初學者」語言要寫任何複雜的程式都毫無窒礙。

如果讀研究所時學校的那些工作站電腦也可以用Basic我一定會用它完成博士論文,而且絕對不會有問題!在VB.NET之前的版本確實執行效能比較差,但我覺得這是非戰之罪,其實也是因為微軟對於當時的VCVB厚此薄彼,一直將C語言當作要繼承家業的長子,Basic則連小媳婦都不如。

2003年起VB進入.NET時代之後,其實已經與微軟公司最好的C語言功能效能都完全一樣好了!加上它的好閱讀與智慧感知容錯能力較好的特性,我持續的用它寫我需要的軟體,其實我覺得用C語言寫複雜的演算法遠比用VB困難!光是層層疊疊的大括號就讓我看得很累!過度拘謹的語法格式更讓人覺得像是脫了褲子放屁,我真的不知道C語言比VB好在哪裡?

當然我也會因應實際的需要使用C#JavaScriptJava甚至C++來完成某些受到平台環境限制的程式,SQL也是做資料庫應用時必須熟悉的!但是說到開發介面複雜或演算邏輯深奧的軟體,我絕對不會想用C語言找自己的麻煩,一定就是用VB

我不會批評別人愛用甚麼程式語言,基本上也認為任何受到作業環境支援的程式語言都可以做到所有的工作。譬如有必要時我也可以用HTML5做影像辨識軟體,我真的作過HTML5車牌辨識程式的!我很想告訴大家,對於語言的成見是很討厭,也沒有必要的!譬如一般人認為台語是不太正式,不能表達太複雜的論述,但是選舉期間很紅的謝龍介議員就是可以全程講台語參與任何的政治辯論!

程式語言的世界也一樣!VB語言的最初設計動機確實是方便初學者使用的,但是這不表示它就不能繼續用於寫複雜的程式!就像磚塊、水泥與鋼筋可以蓋公寓透天厝,同時也是台北101大樓的建材!程式語言能否寫出好的程式主要還是要看設計者腦袋裡能想出來的邏輯演算法,用任何語言寫作,最後都是一樣編譯成01的機械語言,那時就完全看不出你是用VBC寫的了!

正因為VB是替初學者設計的,它最棒的特色就是「人性化」!處處貼心地替初學程式的「人」著想,幫助還不太習慣「機械化思考」的初學者適應這個新環境。但是如C語言之類的語言就好像是準備讓機器人學習的語言,生硬拘謹多了!VB這種人性化特色,其實一直到我們寫複雜程式時還是很方便貼心的!

沒騙你!我的所有影像必是軟體產品都是用VB.NET寫的!如果以後微軟硬是讓VB退出江湖,有必要時我還是會順應環境改變語言的!但是現在真的毫無必要!如果你質疑我用VB做得軟體不好,寫個比我的軟體更好的C語言或Java軟體來PK就好了,別說一些無聊的廢話!

有誰推薦more
全站分類:心情隨筆 工作職場
自訂分類:教育學習

限會員,要發表迴響,請先登入