Python是近年來最流行的編程語言之一。它清晰的語法和可讀性使它成為初學者的完美編碼語言。考慮到Python的廣泛使用,認為學習Python是必要的是可以原諒的。
這就提出了一個問題:Python何時不是正確的答案?Python編程語言什麼時候是學習和/或使用的錯誤語言?
簡而言之,Python正在成為機器學習的語言。大多數機器語言課程都是用Python語言編寫的,編碼教育作為一個整體已經採用Python作為學習語言,在教室、樹莓Pi和其他地方都有廣泛的應用。很容易創建、導入和重用Python模塊。
這些原因,再加上大量大公司使用Python,讓許多人認為Python是未來的主要編程語言。但是如果蟒蛇是一把瑞士**,你什麼時候不用它呢?
Python完全可以進行大規模web開發。Instagram是運行Python網絡框架Django的最大網站。這可不是什麼了不起的壯舉,Instagram工程師李澤坤解釋道:
"We began using Python early on because of its simplicity, but we've had to do many hacks over the years to keep it simple as we've scaled."
也就是說,Django是一個健壯、優雅的框架。問題不在於它本身的缺陷。簡單的問題是:既然JavaScript仍然佔據主導地位,為什麼還要學習Django呢?
像React和虛擬用戶.js需求量很大。兩者都可以使用Django或rubyonrails等其他後端。然而,既然這兩種語言都是基於JavaScript的語言,為什麼還要使用其他語言呢Node.js?這就形成了一個完整的JavaScript應用程序棧。學習和掌握一門語言。
這並不是說JavaScript是一種完美的語言;許多人會持相反的觀點。但是,如果您剛開始從事web開發,那麼仍然沒有比JavaScript更好的選擇。
Pygame的用戶可能會覺得這一部分有點混亂。難道沒有一個很好的庫專門用來用Python創建電腦遊戲嗎?是的,有,Pygame是學習Python和遊戲機制的極好的資源。
有些不錯的遊戲是用Python編寫的,甚至還有一款完全用Pygame**的第一人稱射擊遊戲:
不帶走杜加的驚人成就,你可以看到問題在這裡。大多數(但並非所有)想進入遊戲開發的人都在尋找更多的東西。一個健壯的平臺,帶有開發工具和編輯器。從一個小想法擴展到一個更大更主流的東西的潛力。
Python不能提供這種功能,而Unity和Unreal等遊戲引擎可以。
Unity完全基於C#,上面有大量的庫來幫助遊戲開發。Unity編輯器是一個非常強大的工具,它允許快速原型化,並且是初學者第一次玩遊戲的快速開始。
為了對比尺度和視覺美,《逃離塔爾科夫》是一部統一引擎的作品:
就像底層Python教程涵蓋編程要點一樣,Unity的官方教程沒有預先假定編程知識。
C++因學習困難而臭名昭著。網上有初學者的資源,虛幻引擎網站也有一些很好的入門工具。
如果你需要任何證據證明虛幻引擎遊戲是成功的,那就看看Fortnite吧。這個非常流行的遊戲,你甚至可以在你的**上玩,創建和優化使用虛幻。
像這樣的遊戲,在1080p下運行,幀速率很好,目前不可能使用Python。這並不是Python的失敗,而是一個簡單的例子,說明遊戲開發不是Python的強項之一。
雖然業餘機器人社區喜歡Python,但它並不是最適合這項工作的語言。在許多底層和嵌入式系統中,Python不是一個選項。
雖然嵌入式系統的定義在最近幾年變得模糊,但有一個很好的類比。把像Arduino這樣的小型開發板看作嵌入式的是安全的。更大,更復雜的設備,如樹莓Pis或類似的單板計算機一般不被視為嵌入式。
問題在於記憶和時間是至關重要的。嵌入式硬件中的8位芯片需要非常小心地管理其內存。這不是Python所適合的,並且有一個原因,為什麼ARDUNO語言是C/C++的簡化版本。掌握ARDUNO的C++版本比你想象的要複雜。
C編程語言是強大的,因為它可能是危險的。C和C++超級集合儘管是高級的,但可以訪問低級進程。從本質上說,C是第一個將機器代碼翻譯**類可以很容易理解的東西。
除了在低級別上管理系統的能力之外,C還帶來了速度提升。由於C是一種非常原始的語言,因此沒有任何開銷或垃圾收集來降低它的速度。這就是C因其危險性而聲名遠揚的地方,因為內存洩漏會導致可怕的問題。然而,這確實意味著C在時間和速度至關重要的地方大放異彩。
任何想要進入硬件編程或任何形式的內核編程的人都應該考慮進入C語言。對於任何想要創建設備驅動程序的人來說也是如此。
額外的事實:你有沒有用VST來創作數字音樂,並想知道如何**它們?你可以用C++編寫你自己的。
雖然這聽起來很明顯——如果你已經知道另一種有能力的編碼語言,為什麼要改變呢?
如果你在學校上了一門編碼課,或者開始了一門特定語言的在線編碼課程,那麼堅持下去是有好處的。學習你的第一語言給了你編程的基礎知識,而學習一種全新的語**減慢這個過程。
大多數頂級Python程序員並沒有開始使用這種語言。由於其可讀性強和語法直觀,許多人發現從其他語言學習Python更容易。
有這麼多的語言,選擇可能會有壓力。事實是,不可能有一種完美的語言來表達每一件事。
有關更多信息,請參閱我們關於Python的最常見問題。你也應該瞭解其他函數式編程語言。
...瀏覽器端部分。但是Python是一種令人驚歎的語言,這就是為什麼它仍然是JavaScript的強大替代品。進一步瞭解Python for web開發。 PHP:你已經不太瞭解PHP了,因為它不像一些較新的web語言那麼流行,但它仍然被廣泛使...
...裝包不相容。你的安卓平板電腦怎麼樣?蘋果**?PS4?你為什麼不能把那軟體帶到你喜歡的地方去用呢?讓我們來探索一些不同的障礙,實現“買一次,跑一次”的夢想 ...
...編碼。如果你這樣做,請讓我知道你使用哪個編輯器。你為什麼選擇它,是什麼讓它獨一無二? ...
如果您正在考慮學習Python,那麼您可能會被初始設定過程弄得不知所措。您需要在系統上安裝Python,然後學習如何使用命令列處理程式碼,或者學習如何使用互動式shell,或者學習如何設定pythonide。 ...
...新手web開發人員中。思路是:“如果前端需要JavaScript,為什麼後端不也使用JavaScript呢?”這是有道理的。PHP已經存在了幾十年,有很多文件,所以它也是一個可行的選擇。 ...
...的應用程式啟動並執行起來,需要做大量的工作,這就是為什麼許多人更喜歡使用Ionic Framework(它使用Cordova部署到各種平臺)。 ...
...hon示例。如果您認為Python是一種無用的語言,請檢視我們為什麼不使用Python的原因。 ...