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