回覆列表
  • 1 # 使用者7827989780935

    個人建議學習Golang,主要原因如下:

    Erlang的硬傷在於程式碼的可讀性、表現力。為什麼說是硬傷? 因為對一門語言來說,語法是不大可能會大幅度變更的, 而且不會出現大的變化;Erlang的軟肋在於高質量的庫少。儘管有不少殺手級應用, 同樣Go在這方面也是軟肋, 這一點對於一個不到五年的語言有情可原, 但對於一個20多年的語言是不是有點說不過去;Erlang不合群。 這主要體現在跟其他語言的互動性上, 當然這也有深層次的原因, Erlang本身有自己的哲學, 如出錯恢復機制, 你融入一個其他語言的東西進去, 這帳就不好算,就好比你硬要讓一個喝咖啡的跟一個吃大蒜的坐在一起, 總之你寫一個Erlang的port遠遠比Go複雜, 甚至比Python/Java還要複雜, 這就造成了Erlang在底層程式設計上效果不是很好, 沒法利用linux已有的很多優秀成果,我一直認為Erlang的什麼的mysql/pg/oracle驅動都沒有必要存在, Erlang一定是一個self-container應用, 你只要用到了其他東西, 根據木桶理論, 你就不敢號稱9個9,以系統的眼光看問題, 我覺得一個系統的魯棒性不能依賴於某一元件, 這也是為什麼愛立信本身的Erlang應用並不廣泛;Erlang的的報錯資訊太讓人糾結了。在Erlang中一切都是並行的, 所以它根本不care是物理哪一行出錯, 只跟Actor繫結, 然後告訴你Actor的ID和出錯代號。這一點Golang就做了很好的折中, 不需要並行的時候你老老實實的寫序列程式碼, 需要並行的時候也有較複雜的機制來應對, 合乎情理。

  • 中秋節和大豐收的關聯?
  • 大齡剩男還能遇到對的人嗎?