關於編程語言的幾點思考

首先須要說明,一直執迷於編程語言的選擇,是一件使人羞愧的事情,說明能力平庸,牛人有這個時間隨便選一種語言都能把事情辦成,參見T.Linus編GIT的故事,C語言直接來,兩週完成雛形。javascript

遺憾的是,我就是這樣一個在不斷思考這件事的人。java

我看過C++、python、Go、Rust、Java、Scala、Erlang、C、object C、javascript(node.js),而後,由於複雜度、性能等緣由,我陸續排除了C++、Go、Java、javascript、Scala等等,留下了erlang、rust、C,erlang實現功能,Rust/C實現性能,兩步走。node

其實,上面任何一個語言,搞一個交易系統都是能夠的,功能上都能實現,但難易程度有差異,實現結果有差異。好比,python對多線程支持很差性能受限,C++語言特別複雜須要花不少心思在語言自己上,node.js寫複雜業務會很吃力且內存管理能力弱,C語言缺乏庫支持須要考慮指針,等等。總之,沒有完美的語言,只有作不成事的人。python

若是我的能力更強,作事短平快,邊學邊作,估計2個月搞一個系統,反覆推倒重來幾回,即可以登峯造極。在我的有限的能力範圍內,想作成一件事,方向就變得很重要,須要反覆不斷地思考,由於試錯的成本很大。目前我使用erlang,幾百行代碼就有但願搞出一個能夠擴展成千上萬個客戶的系統來,這背後依賴的是erlang的語言特色,相同的功能若是用java實現,可能還須要用docker。docker

相關文章
相關標籤/搜索