哪種程式語言更好?抓到‘老鼠’就是‘好貓’

pythontab發表於2013-01-22

哪種程式語言最好?哪種程式語言更好?一直是IT界爭論不休的話題,特別是對於初學者,往往因為選擇哪門語言而傷腦筋。哪種語言最好呢?我感覺哪種語言不重要,因為程式就是演算法 + 資料結構,選擇哪門語言主要看專案的需求定位。追求極快的速度就可以用C/C++,注重開發速度就用python;而web開發注重開發速度那就選php。


先來看個例子。兩個工匠製作國際象棋,其中一個工匠使用傳統的工具——各種規格的鑿子、銼刀和錘子,首選的材料是石頭。他仔細地雕刻細節,像他的父親做的那樣。另一種工匠使用更現代的技術去熔化金屬、使用模具製作,他使用火以及可以承受極高溫度和壓力的模具和工具。最終,這兩個工匠的作品同樣精緻、細膩、美麗。

誰的方法更好?

這兩個工匠產生了同等價值的東西——美麗的國際象棋。你可能更喜歡經典樣式的石質棋盤,或者更喜歡冰冷的沉甸甸的金屬製品。你的選擇與工匠們所使用的方法沒有任何關係,你只關心最終產品。

同樣,開發一個應用程式,選擇什麼語言真的不是很重要。自各種程式語言誕生以來,關於孰優孰劣的爭論一直沒有停止過,比如“Python更好,因為……”、“PHP是戰鬥力不足5的渣,Ruby才是王道”……此類話題如同一針雞血,可以瞬間點燃碼農們的鬥志。

眼中體:程式語言擁護者眼中的程式語言

選擇程式語言和工匠選擇材質是一樣的,其中一個工匠之所以選擇石頭,可能他認為石頭比金屬好一些。爭論這些毫無意義——因為兩種方法創造了類似的結果和價值,而且這兩種方法都是有用的。

其實,我們應該將時間花費在如何創造更有價值、更具創新的東西上,而不是在這些無關的討論上。

我們幾年前開發的一個產品中包含了一個Python後端和PHP前端,儘管我的很多同事都討厭PHP,但一點都不妨礙該產品的開發和使用。去年,我們才遷移到一個新的基於Python的Web框架。這一決定並不是因為PHP不好用,而是出去其他方面的考慮,如開發者的技能、PHP框架老化(一些功能需要重寫)等。儘管遷移到了Python框架,該產品中還是包含了基於其他語言的程式碼。

程式語言只是一個工具,重要的是使用這些工具做出的產品。每個開發者應該儘可能瞭解如何使用不同的語言和不同的方式來完成同樣的事情。一旦開發者開始思考他們選擇的語言是否優於另一種語言時,就應該回顧一下文章開頭的工匠的故事。

最後要說的是,語言並不重要,重要的是你拿它做什麼

相關文章