這篇文章給大家分享的是有關(guān)如何優(yōu)化Python開(kāi)發(fā)和配置的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
一、編譯器的歸編譯器
當(dāng)開(kāi)發(fā)者把時(shí)間用在做一些電腦能做的更好的事情上時(shí),這可以稱(chēng)之為一種時(shí)間上的浪費(fèi)了,一個(gè)典型的例子就是程序員將時(shí)間花在尋找一些可以被自動(dòng)化工具更準(zhǔn)確定位的bug上。
可能是由于Python動(dòng)態(tài)語(yǔ)言的特性以及早期被視為“腳本”語(yǔ)言的原因,到現(xiàn)在依然很少看到有什么靜態(tài)代碼分析工具和拼寫(xiě)檢查器用在Python上。
然而此類(lèi)工具是非常有幫助的,他們基本上能將特定的一類(lèi)bug和語(yǔ)法錯(cuò)誤完全檢查出來(lái)并提醒開(kāi)發(fā)者避免犯這些錯(cuò)誤。例如這些工具能找到影響代碼正常編譯的功能性bug像是錯(cuò)誤拼寫(xiě)的標(biāo)識(shí)符或是發(fā)現(xiàn)一些代碼的質(zhì)量問(wèn)題例如沒(méi)有使用過(guò)的變量和引用。
當(dāng)然并不是說(shuō)靜態(tài)分析工具就是萬(wàn)能良藥,但至少他們的確幫助我們減少了debug和代碼審查的時(shí)間,也減少了開(kāi)發(fā)初期的時(shí)間投入。如果你只想要一個(gè),僅僅一個(gè)工具用來(lái)提升你的Python代碼質(zhì)量,同時(shí)不被錯(cuò)誤的糾正以及啰嗦的提示信息干擾,那么推薦你使用Pyflakes。Pyflakes是一個(gè)開(kāi)源的,免費(fèi)的,同時(shí)容易安裝的拼寫(xiě)檢查工具。
為了更快的得到反饋以及更早的發(fā)現(xiàn)bug,建議你將Pyflakes集成到你的代碼編輯器和后臺(tái)服務(wù)器上。將自動(dòng)修正代碼錯(cuò)誤的功能融入你的整個(gè)開(kāi)發(fā)流程能讓你在工作時(shí)更加輕松。不過(guò)請(qǐng)保證你的團(tuán)隊(duì)里所有的開(kāi)發(fā)者都在使用同一套配置以避免通過(guò)的程序中有未被發(fā)現(xiàn)的告警。
建議1:使用像Pyflakes這樣的靜態(tài)代碼分析工具
二、避免無(wú)意義的代碼風(fēng)格討論
你的團(tuán)隊(duì)會(huì)在開(kāi)發(fā)中進(jìn)行代碼審查?那是最好的!但是請(qǐng)注意,沒(méi)有太多經(jīng)驗(yàn)的代碼審查者經(jīng)常犯的一個(gè)錯(cuò)誤是花費(fèi)太多時(shí)間反饋一些自動(dòng)化工具就能幫他們做好的東西。是的,說(shuō)的就是代碼風(fēng)格問(wèn)題。開(kāi)發(fā)團(tuán)隊(duì)在代碼審查時(shí)非常容易陷入一種討論代碼風(fēng)格的情境中,大多數(shù)時(shí)候他們討論的都是諸如“這里應(yīng)該多加一個(gè)空格”或者“類(lèi)命名應(yīng)該用駝峰命名法”之類(lèi)的東西。
這是一個(gè)典型的“自行車(chē)棚效應(yīng)”的例子,它阻止了開(kāi)發(fā)者去關(guān)注一些真正應(yīng)該被關(guān)注的問(wèn)題,那些會(huì)導(dǎo)致投入更多資金和時(shí)間去維護(hù)的問(wèn)題。
快速解決這些問(wèn)題的方法就是選一個(gè)可以從網(wǎng)上找到的Python代碼風(fēng)格指導(dǎo)手冊(cè),例如PEP8或者Google的Python代碼風(fēng)格指南,然后利用自動(dòng)化工具去確保項(xiàng)目代碼遵從了指南里的風(fēng)格。
推薦大家使用以PEP8為基準(zhǔn)風(fēng)格的Pycodestyle或者flake8代碼風(fēng)格檢查工具。他們可以有效避免大多數(shù)的關(guān)于代碼風(fēng)格的爭(zhēng)論同時(shí)能讓你的團(tuán)隊(duì)更加專(zhuān)注在更應(yīng)該關(guān)注的問(wèn)題上。
建議2:選擇一個(gè)特定的代碼風(fēng)格然后用自動(dòng)化工具去保證代碼遵從了這種風(fēng)格。
三、千里之堤潰于蟻穴 - 卡頓和死機(jī)的影響
可用性研究表明網(wǎng)站加載時(shí)間對(duì)用戶(hù)是否放棄原先的目的有很大的影響:如果人們對(duì)等待某件事的發(fā)生感到疲倦和不耐煩,則他們放棄他們?cè)扔?jì)劃的事的可能性將大大提高。
作為一個(gè)軟件開(kāi)發(fā)者,等待各種各樣的工具完成他們的任務(wù)是每天工作過(guò)程中很平常的一部分。畢竟我們經(jīng)常在等待一個(gè)第三方包的安裝,一個(gè)測(cè)試的運(yùn)行或者一個(gè)代碼提交的完成。當(dāng)然我們是不會(huì)每次都“放棄”那些必須等待特定工具運(yùn)行幾秒甚至幾十秒的工作的,對(duì)正在進(jìn)行的工作保持注意力畢竟也是我們工作的一部分。
然而,保持這種程度的專(zhuān)注是很耗神的,而且我們可能因?yàn)檫@種專(zhuān)注耗費(fèi)了過(guò)多的精神力影響了我們?cè)谄渌矫娴墓ぷ鳎豪缭谖绾蟾斓母杏X(jué)到疲憊,或者在自己剛提交的代碼中出了一個(gè)微小的bug。即使是很微小的卡頓或者延遲在積累之后也會(huì)產(chǎn)生滾雪球般的惡劣影響。在一個(gè)速度很慢的編輯器上切換文件或者是在一個(gè)速度很慢的電腦上切換應(yīng)用都是很煩躁的一件事。我們甚至可以以一種近乎吹毛求疵的態(tài)度去關(guān)注例如編輯器字符輸入延遲之類(lèi)的細(xì)節(jié)問(wèn)題。因?yàn)檫@些微小的延遲也會(huì)產(chǎn)生滾雪球一樣的影響,他們影響了我們的生產(chǎn)效率同時(shí)使人感到煩躁。
我們?cè)O(shè)想一下,在開(kāi)發(fā)過(guò)程中,你每十秒花了一秒的時(shí)間在等待一個(gè)任務(wù)的完成,這個(gè)時(shí)間的耗費(fèi)累積起來(lái),相當(dāng)于你一周有半天都在等待,或者說(shuō)一個(gè)月有整整兩天,抑或是一年的工作時(shí)間中你有一個(gè)月在等待中過(guò)去了。也許這種估算有點(diǎn)夸張,但是從另一個(gè)角度看,你花了一個(gè)下午的時(shí)間來(lái)優(yōu)化你的開(kāi)發(fā)工具導(dǎo)致你的一整年的工作時(shí)間多出來(lái)一個(gè)星期,這樣是否值得你去嘗試改進(jìn)你的工具呢?
建議3:你的開(kāi)發(fā)工具應(yīng)該保持高響應(yīng)速度,簡(jiǎn)單總是好的。
四、不要在一個(gè)讓你不舒服的編輯環(huán)境下工作
使用讓自己不適應(yīng)的工具工作會(huì)大大影響工作效率。一些開(kāi)發(fā)工具非常難以使用,它們會(huì)將你的精力和熱情完全耗盡。對(duì)你來(lái)說(shuō),什么工具是你認(rèn)為在日常的開(kāi)發(fā)過(guò)程中最重要的呢?那肯定是代碼編輯器。對(duì)有些開(kāi)發(fā)者來(lái)說(shuō)可能是答案是他們的郵件客戶(hù)端或者團(tuán)隊(duì)的聊天應(yīng)用,但我們還是希望一天大部分的工作時(shí)間是用在寫(xiě)代碼上的。
這就意味著將時(shí)間投入在一個(gè)令人愉悅的代碼編輯環(huán)境中是絕對(duì)值得的,因?yàn)檫@樣做的直接結(jié)果就是更高的工作效率,還有更加愉快的心情!作為Python開(kāi)發(fā)者我們有很多編輯器或是IDE工具供我們選擇,例如Vim, Emacs, PyCharm, Wing IDE, Atom, Eclipse PyDev, Sublime Text等等等等。你需要找到最適合你自己且符合你獨(dú)特需求的工具去工作。所以請(qǐng)多找一些編輯器去嘗試嘗試看哪種你最喜歡,這對(duì)你的工作效率大有裨益。
建議4:找到適合你的編輯器并把它弄成你需要的樣子。
五、在購(gòu)買(mǎi)需要的工具時(shí),不要吝嗇
如果你使用收費(fèi)編輯器,但是卻不愿意花錢(qián)購(gòu)買(mǎi)這個(gè)編輯器的正式版本,反而用用這個(gè)編輯器的試用版來(lái)代替正式版進(jìn)行工作。而這個(gè)使用版本在你保存文件之后,每隔一兩分鐘就會(huì)跳出一個(gè)彈窗來(lái)提醒你購(gòu)買(mǎi)正式版。那么你每天都會(huì)看到這個(gè)彈窗成百上千次......要和這些彈窗說(shuō)再見(jiàn)需要購(gòu)買(mǎi)一個(gè)正式版執(zhí)照,所以千萬(wàn)別在這件事上這樣節(jié)省。在你經(jīng)常使用的開(kāi)發(fā)工具上摳門(mén)和想辦法省小錢(qián)是很愚蠢的,而你在處理這些彈窗和由此帶來(lái)的一系列問(wèn)題上的損失絕對(duì)超過(guò)開(kāi)發(fā)工具本身的價(jià)錢(qián)。
如果你是在為自己工作,則這些執(zhí)照上的花費(fèi)是可以作為商業(yè)費(fèi)用從你的稅費(fèi)中扣除的。如果你是在為某個(gè)公司工作,那么在你解釋清楚為什么需要這些工具且這些工具能有效的提升你的工作效率之后,公司的管理者會(huì)愿意為你在工具上的這筆投入買(mǎi)單的。和美術(shù)設(shè)計(jì)師或者建筑師相比,程序開(kāi)發(fā)者花在購(gòu)買(mǎi)軟件開(kāi)發(fā)工具的許可證上的錢(qián)實(shí)在是少多了,甚至有一部分非常棒的工具和編輯器是免費(fèi)的。將錢(qián)投入在合適的工具上是很合理的而且你的工作也會(huì)因此受益。
感謝各位的閱讀!關(guān)于“如何優(yōu)化Python開(kāi)發(fā)和配置”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前標(biāo)題:如何優(yōu)化Python開(kāi)發(fā)和配置-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://www.2m8n56k.cn/article4/docgie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、外貿(mào)建站、軟件開(kāi)發(fā)、定制網(wǎng)站、App設(shè)計(jì)、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容