編程入門(五):編程開發工具這麼多,我該如何選擇?
本文出自微信公眾號【Python愛生活】,歡迎大家關注,進群交流!
關於什麼是編程、為什麼學習編程以及如何選擇編程語言,請點擊下方鏈接:
02編程入門(一):什麼是編程?
03編程入門(二):為什麼要學編程?
05編程入門(三):如何選擇編程語言?
大多數人在剛開始學習編程的時候,都會按照老師推薦或書本中使用的開發工具進行編程,而且一用就是很長時間從不更換,至少從入門編程到找到工作之前都是用的同一種工具,直到找到工作,發現公司用的和之前一直用的工具不一樣,才開始重新學習新的工具。
為了避免這種情況發生,我們該怎麼辦呢?把所有的編程開發工具的使用方法都掌握嗎?別急,在回答這個問題之前,讓我們先了解一下現有的開發工具再說。
了解過開發工具的同學都知道,現在市面上可以使用的開發工具非常多,而且很多工具都支持多種編程語言的開發工作,因此具體到基於某個特定編程語言選擇開發工具,也是一件令人頭疼的事。
但是,編程開發工具從宏觀角度來分類的話只有兩個:編輯器、IDE。
編輯器(Editor):最初編輯器的定義就是編輯純文本的工具,功能簡單,打開編輯,編輯完保存關閉即可;但隨著技術發展的需要,編輯器的功能也越來越豐富,從最初的純編輯,到現在可以實現代碼高亮、語法提示、自動格式化等功能,相比最初,編輯器可以說是發生了翻天覆地的變化。編輯器軟體在運行時系統佔用較小,因此使用起來比較流暢。編輯器的代表作有:Vim、Emacs、Sublime Text,NotePad++等;
IDE(Integrated Development Environment,集成開發環境):集成開發環境IDE是用於提供程序開發環境的應用程序,一般包括代碼編輯器、編譯器、調試器和圖形用戶界面等工具。集成了代碼編寫功能、分析功能、編譯功能、調試功能等一體化的開發軟體服務套件。由於功能非常強大,因此在軟體運行的過程中會佔用大量的系統資源,對電腦配置不高的機器不太友好,容易出現卡死的現象。IDE中的代表作有:Java的Eclipse,Android的Android Studio,Python的Pycharm等等,當然,就像上面說的,現在的IDE已經不局限於某一種編程語言了,比如Eclipse不僅可以做Java的開發,安卓、Python的開發也都是支持的。
從上面的定義來看,編輯器相對於IDE功能比較簡單,沒有IDE那麼多便捷的功能。因此要想熟練使用,在平時的工作或學習過程中達到比較高的代碼產出,在學習使用編輯器的時候需要下不少功夫。從軟體的安裝,簡單的編輯,保存關閉開始,逐漸學習軟體的相關配置,插件的安裝,命令、快捷鍵的使用,學習曲線會比較陡,但是只要堅持下來,你的徒手寫代碼的能力也會飛速增長。在剛開始使用編輯器的時候,不要過於依賴插件提供的類似IDE的功能,比如代碼自動提示,盡量通過手敲關鍵字,來掌握編程的基礎。
相比於編輯器,IDE簡直就是程序員寫代碼的一片樂土,不需要太多的研究,就可以快速掌握使用方法,再加上集成了開發需要的所有環境,基本上不需要挪地方就可以完成所有的開發工作。IDE對程序員的編碼過程非常友好,提供代碼提示,糾錯,調試,以及項目的有效組織,熟練掌握後可以有效地提高編碼效率。
那我們是不是一開始就要使用IDE編程呢?
拿我學習Python過程舉了例子,跟大家分享一下我在每個階段是如何使用這些編程工具的:
剛開始入門的時候和大多數人一樣,都是用Python自帶的IDLE進行編程,由於不用單獨專門安裝,基本每個安裝了Python的電腦上都有IDLE,因此使用它編程,可以說不會受地域的影響,隨時都可以用。而且IDLE功能簡單,沒有那麼多複雜的設置,對於入門編程的小白十分友好。
在熟練掌握了IDLE的使用後,開始接觸編輯器,寫Python代碼可以選擇的編輯器也有很多,比如,Vim,Emacs,Sublime Text,Atom,NotePad++等。Vim之前在Linux中一直使用過,NotePad++上大學的時候也用過一段時間,這次想嘗試一種新的工具,幾經篩選後,選擇了Sublime Text。
為了快速掌握ST的使用,我將本地大多數文檔的默認打開方式設置成了ST,比如.txt,.md,.log,.sql,.pkg,.prc等,當然還必須得有.py文件。使用的過程中也研究出了一些小技巧,比如將ST的安裝路徑設置到環境變數Path中,將exe文件名修改成sub.exe,這樣就可以快速使用sub命令啟動ST了(類似於打開cmd的原理)。
當然,為了配合Python代碼的編寫,需要安裝一些插件,ST的插件是以Package的形式存在的,我根據自己的需要安裝了SublimeREPL、AutoFileName、Jedi、Anaconda、AutoPep8、Djaneiro等插件,這些插件的具體用途,建議大家自行搜索了解一下。
在ST中也可以直接按 Ctrl+B 運行代碼,也可以配置不同的Python版本運行代碼,當然,推薦在cmd中使用命令執行.py文件。對於一些項目簡單的程序,在編輯器中編寫代碼會讓編程效率得到提升,因為編輯器輕巧,隨時都可以快速的打開。
隨著編寫的代碼越來越複雜,使用的第三方庫也越來越多,使用編輯器寫代碼,對整個項目的文件不好管理,版本不好控制(當然,有些編輯器也有版本控制的插件),而且涉及到多人協作開發的時候,就推薦使用IDE進行開發了。
IDE我選擇的是PyCharm,由於之前有過自學安卓的經歷,使用過Android Studio這個IDE,大學的時候也用過Visual Studio和Eclipse。發現其實IDE家族的軟體功能包括程序界面都特別相像,個人覺得,只要熟練掌握其中一個,其他的大多數IDE都能很快掌握。
在PyCharm中你可以很方便地查看第三方庫的源碼,可以快速地按照PEP8的規範格式化代碼,可以根據關鍵字快速查找定位你要找的文件、類、方法,可以方便的調試運行你的代碼,可以傻瓜式地安裝第三方庫。總之,IDE就是一個保姆,全權負責你編碼的衣食住行,讓你敲代碼的成本大大降低,效率大大提升。
當然,在以後的學習工作過程中,我還會接觸其他一些編輯器和IDE工具。想像一下,如果你作為公司的老員工,新人過來問你一個問題,讓你幫忙調試一下他的程序,結果你發現他用的開發工具是你從來沒用過的,坐下後無從下手,這個場景想想都覺得:呃,我現在要好好學習,多掌握幾種編程工具才行。
那麼,最後總結一下,對於開發工具的使用,我的建議是:開發工具的選擇要符合自己的學習曲線,剛開始的時候不要過早使用友好的IDE,要先從最基本的軟體開始使用,盡量多的手敲代碼,掌握基礎後,可以使用一些功能強大一點的編輯器,加快自己的編碼效率,等到要編寫稍微複雜的代碼的時候,再使用IDE進行編碼和項目代碼管理。等到熟練掌握了至少一種編輯器和IDE之後,再回過頭來去了解其他的工具,擴充自己的武器庫。
如果將程序員比作畫家,那麼這些編程開發工具就是我們的畫筆和顏料,只有熟練掌握了這些工具的使用,我們才能產出美妙的作品。
最後,歡迎大家在留言區說說自己平時都在用什麼開發工具,在使用過程遇到的問題也可以留言。如果有興趣,可以給公眾號回復【我要入群】,加入我們的群聊,大家一起幫你解決。
歡迎關注微信公眾號 Python愛生活,加入我們的群聊,一起成長!
http://weixin.qq.com/r/8zo9JfHEcKwPrbVG92-h (二維碼自動識別)
推薦閱讀: