自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

資深C++開發(fā)人員稱:Python是最佳的入門編程語言

譯文
開發(fā) 前端
C++開發(fā)人員Phil Nash認為Python是最佳的入門語言,或者是前端和Web開發(fā)人員應(yīng)該選擇的第二語言。

譯者 | 布加迪

審校 | 孫淑娟?

Phil Nash是C++測試框架的早期開發(fā)者之一,也是SonarSource的開發(fā)倡導(dǎo)者。他認為,尋找第一語言的新程序員和任何想工具包添加另一種語言的人都應(yīng)該從Python入手。?

Nash告訴The New Stack :“選擇Python很乏味,但原因令人興奮。Python容易入手,它逐漸成為一種真正專業(yè)級的、非常流行的語言。我認為沒有其他語言能像Python滿足所有這些要求。?

第一語言是Python還是JavaScript ??

那么,JavaScript作為第一語言有什么問題呢?Nash表示,JavaScript是不錯的選擇,但它從來就不是一種對初學(xué)者友好的語言。順帶提一下BASIC:這80年代一種很流行的編程語言,全稱是“初學(xué)者通用符號指令。它很簡單,但是它不是一種非常好的語言,所以人們不用它開發(fā)專業(yè)級應(yīng)用程序,直到微軟在90年代推出了Visual Basic?

Nash表示,流行的Python一樣,因為它用起來簡單,但隨著開發(fā)人員變得更有經(jīng)驗,可以進而鉆研更復(fù)雜的用途,最終編寫出實際的應(yīng)用程序。Nash認為,JavaScript也相當(dāng)簡單,但更多的是純屬偶然,而非有意設(shè)計。?

他說:“JavaScript原本設(shè)計成另外的用途,無意中成為世界上最流行的語言,因為它基本上與Web捆綁在一起。因此,JavaScript是一門值得學(xué)習(xí)的出色語言,但它對初學(xué)者來說并不友好。?

另一方面,Python同時滿足兩方面:對初學(xué)者友好,很有用。?

Nash說:“它讀起來更像是寫在紙上的偽代碼,當(dāng)您勾勒想法,它就會轉(zhuǎn)化生產(chǎn)代碼庫中的實際工作代碼。沒有比這更適合初學(xué)者的了,它在工業(yè)中也得到了廣泛應(yīng)用。?

他經(jīng)常在PythonJavaScript之間來回切換,這造成的最大困惑就是搞清楚要不要在行末加分號。?

他說:“這是JavaScript方面的問題之一,許多是可選的。所以分號實際上是可選的,除了些情況下不是可選的Python的信條之一就是應(yīng)該有一種正確的方式來做事。這并不總是正確的,但總的來說,試圖設(shè)計事物,以便有明顯的方式來做事,即Python之道。一切看起來都很統(tǒng)一,JavaScript幾乎截然相反?

Python作為第二語言:您該費心嗎??

您可能會說,Python無關(guān)緊要。說到Web,如果您是前端/Web開發(fā)人員JavaScript確實是王。?

不妨考慮一下Anaconda開源PyScript在去年發(fā)布后,現(xiàn)在走向了?

Nash說:“您還可以在后端將Python用作一種出色的Web技術(shù),經(jīng)常這做。它開始顯示出前端語言的一番潛質(zhì),盡管還處于早期階段?,F(xiàn)在判斷它是否會流行起來還為時過早,但它確實存在,如果已經(jīng)有Python技能,現(xiàn)在可以聲稱或認為自己前端開發(fā)人員,至少如果您試水過的話。換成其他各種語言,恐怕不能這么說?!?/span>?

但是眼下對您來說太晚了,您已經(jīng)學(xué)過JavaScript或其他語言了。Nash認為,Python是一種理想的互補語言。?

他說:“Python是一種很棒的腳本語言。它還有這方面的完整功能,因為它針對問題具有可擴展性。?

Python的另一個差異化優(yōu)勢,是一種動態(tài)語言。因此,比如當(dāng)聲明一個變量時,不必說它是什么類型的變量數(shù)字、字符串還是布爾。該語言根據(jù)您使用方式來推斷,這點酷似JavaScript。對于Java或C++來說不是這樣,它們都是強類型語言。他補充道,動態(tài)語言通常對初學(xué)者來說更容易。?

Python是一種動態(tài)語言,這意味著可以在代碼中犯錯誤,這些錯誤只在運行時才被發(fā)現(xiàn),而靜態(tài)類型語言會在編譯時發(fā)現(xiàn)錯誤。許多人包括我自己通常更喜歡靜態(tài)類型語言,尤其是對于更龐大更復(fù)雜的代碼庫。Python現(xiàn)在有可選的類型注釋,帶來了很多好處,但前提是使用額外的靜態(tài)分析工具。?

他補充,Sonar提供了一靜態(tài)分析工具,可以發(fā)現(xiàn)使用類型的不匹配之處,甚至在Python中也是如此。?

Python可以用作更復(fù)雜的代碼庫(比如C++)的友好前端。?

他說:“您可以Python接口來包裝,然后很容易據(jù)此編寫Python代碼。所以這是大多數(shù)機器學(xué)習(xí)庫所做的,比如它們實際上主要用C++編寫,處理底層的繁重工作,然后是漂亮的相對簡單的Python前端。它其實是優(yōu)秀的第二語言。如果要學(xué)習(xí)另一種語言,大多數(shù)開發(fā)人員在工具包中應(yīng)該有Python。?

Python以其在機器學(xué)習(xí)中的應(yīng)用而聞名,它也是金融領(lǐng)域的一種流行語言,一方面是由于NumPy和量計算,它們運用數(shù)學(xué)和統(tǒng)計方法處理金融和風(fēng)險管理問題。?

他說:“量子計算開發(fā)人員過去幾乎完全用C++處理工作,也許用MATLAB來畫草圖,然后他們會把代碼轉(zhuǎn)換成C++提高性能。但有了Python和NumPy,他們發(fā)現(xiàn)實際上可以在一個軟件包中獲得所有內(nèi)容。他們的代碼看起來就像MATLAB來編寫,但底層執(zhí)行起來像C++。?

開發(fā)人員對于Python需要了解的事情?

Web開發(fā)的后端有兩主要的Python框架Django和Flask。Nash使用Flask從事Web開發(fā)。?

他說:“Django更像是傳統(tǒng)的Web框架,您得用Django的方式所有事。現(xiàn)在基本上就是Django開發(fā)人員了。Flask在許多方面借鑒了Django,但不那么自成一體。實際上您可以引入其他依賴項,以自己想要的方式做,我編程時就喜歡這樣。?

表示,網(wǎng)上還有無數(shù)教程和資源用于學(xué)習(xí)這些框架或與Python有關(guān)的知識。Python也已經(jīng)與基于Unix操作系統(tǒng)(比如MacOS或Linux)一同出現(xiàn)在機器上。Windows系統(tǒng)可以添加它,只需簡單安裝。然后只要輸入Python,即可從命令行來訪問它。隨后它進入交互式外殼(shell,開發(fā)人員可以立即開始輸入代碼。它可以通過IDE訪問,比如PyCharm(面向Python的IDE,或者通過結(jié)合VS Code的插件。Python不是像C++或Java那樣的高性能語言,不過它也可以在這些編程項目中發(fā)揮作用。?

他說:“在性能不重要的應(yīng)用領(lǐng)域,Python通常是理想的選擇。或者可以將它與高性能語言結(jié)合使用很容易將它與C++實現(xiàn)對接,從而實現(xiàn)兩全其美。?

原文標(biāo)題:??Veteran C++ Developer Says Python Is Best Starter Language??,作者:Loraine Lawson?

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2023-10-13 18:10:14

編程語言Rust

2012-05-30 15:15:42

ibmdw

2020-05-11 10:25:38

編程語言J開發(fā)Python

2013-06-20 09:20:15

PaaS云計算SaaS

2020-08-14 08:11:17

編程語言PythonIT

2020-01-13 14:04:33

開發(fā)技能代碼

2018-11-21 12:21:33

Ruby框架Web應(yīng)用

2009-12-07 16:07:19

WCF編程

2012-04-20 10:10:35

2013-01-24 10:09:08

iOS安卓黑莓

2010-02-24 13:45:40

Python開發(fā)人員

2019-07-02 14:27:31

編程語言開發(fā)

2020-05-11 09:54:33

JavaScript開發(fā)技術(shù)

2022-09-07 07:06:11

編程語言開發(fā)人員

2022-10-24 17:08:12

物聯(lián)網(wǎng)

2022-01-29 00:02:32

嵌入式系統(tǒng)開發(fā)系統(tǒng)

2015-09-07 09:45:44

開發(fā)人員JavaScript框架

2020-08-14 10:54:56

NodejsGolang開發(fā)

2010-08-09 16:09:25

2025-04-09 08:10:00

AI代碼生成器網(wǎng)絡(luò)安全人工智能
點贊
收藏

51CTO技術(shù)棧公眾號