程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python這麼火,要不要學?聽聽華為工程師怎麼說...

編輯:Python

編程語言發展得非常之快,後起之秀中Python顯然最為耀眼。簡明優雅、易於開發,“人生苦短,我用Python”並非一句戲言,Python成為許多工程師們心中“最美的語言”是有道理的。但是,有人就有江湖,編程的江湖亦是如此。迅速崛起的Python,免不了要被拿來和其他語言比較,而“Python如此火爆,我需要學嗎?”也成為了很多人的困惑…


最近在社區裡也有關於Python的討論:“為什麼要用Python”?大家談到了,動態語言的靈活性是把雙刃劍,Python的三方庫,效率問題,等等。

工程師A:

最近用Python這種動態類型變量語言越用越煩躁,每次點完頓號都想摔電腦,太不方便了,啥方法提示都沒有。這種明顯降低編寫效率,無有效提示的竟然說適合新手。當然周邊支持類庫確實多,隨便拉一個都能寫個自動圖像識別點確認實現游戲掛機。如果說動態類型是趨勢,GOOGLE新出的(09年發布)go語言宣城綜合所有優點,不還是采用靜態類型麼。計劃放棄用Python了但是公司裡面天天吹Python。

工程師B:

Python和java的比較,其實金庸的天龍八部裡面說得很清楚,Python類似鸠摩智的小無相功,靠著小無相功內力催動,能夠輕松搞定少林寺72絕技,但是當實現復雜的大的項目的時候,如果沒有搞懂底層的東西,會被反噬。java類似北冥神功,威力無窮,和小無相功同出一門,但是適用范圍沒有小無相功那麼大,只針對天山派的武功才能發揮出威力。從這裡可以看出,在以效率優先的華為派,當然是鼓勵大家學習Python,這樣即便無法拿下72絕技,也能各自學個一招半式闖江湖。

工程師C:

Python合寫些小工具輕巧便捷,運維工具之類的,提示關聯找個好的IDE就行了和語言沒關系。go交叉編譯易,部署簡單,適合搞服務器做些高並發之類的場景。Java適合搞業務或者大型項目,主要是生態好,工具多,會的人多維護方便,像go依賴管理非常不便,Python的性能還是不行。當然只要你給力其實用啥高級編程語言都可以把項目完成出來,只是熟練度,語言成熟度,開發是否便捷的差異。就像前端的人玩js,搞一個nodejs把後端也玩出來了。

工程師D:

對Python真的是很無語。三方庫雖然多,然而難用之極,API返回的究竟是變量函數句柄還是類?完全不知道。除非在固定領域經常使用Python,能過對領域專用API爛熟於心,否則沒有help沒有文檔,只能翻源碼猜啊我去!根本不適合新手好嗎? 根本不是信手拈來的語言好嗎?一引用三方庫就各種依賴各種版本不匹配,2.x和3.x都叫Python長得完全不一樣啊!如果你需要花1天時間寫核心代碼,那麼之前需要2天做准備好啊有麼有!

工程師E:

作為Python和Go都略懂的人,簡單表達一下觀點:

  1. 語言選擇主要看場景,拋開這個一切都是空談;
  2. Python適合什麼場景:單人或者小項目開發,因為生態的加持,快速(比如AI、數據處理),如果不用庫,這個優點就體現不出來;
  3. Go適合什麼場景:大項目開發,因為靜態編譯的問題,靜態編譯解決的問題,一個是性能,另外就是編譯時發現問題,再加上強類型,比較適合多人合作;然後Go加了大量的工程化的優化和工具,都是對著軟件工程的常年痛點去的,這個是學院派語言不具備的;
  4. Go是不是那麼好?不是的,如果對於高手來說,寫Go特別別扭(我自己感覺有一點點,但優點居多,所以我也不是高手),因為有別於Python的寫什麼代碼都要寫到足夠好,Go是寫什麼代碼基本只有一種寫法(別瞎寫),而且比較boring;
  5. 一句話:Python寫的開心,Go寫得放心,個人更喜歡Python多一點。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved