不同崗位的程式設計師也有千差萬別,前端、算法、架構設計、測試.不同的崗位日常使用的工具截然不同。這些天我總結了一下我在開發中常用的軟體/網站/插件/命令行工具,很多精品,分享給大家。
下面主要從4個方面介紹,
•PC端軟體•網頁工具•瀏覽器插件•命令行工具
PC端工具1. VS Code第一名當然歸屬於神器vscode,這些年的開發中,IDE是接觸最多的工具,無論前端JS,做服務開發時用Java,還是做算法時用Python,都離不開IDE。
以往,是每種程式語言選擇在這種語言表現最優的IDE,例如,codeblocks、eclipse、Pycharm、webstorm等等,但是有了vscode,這些我統統卸載了。
遠程開發、豐富的主題、簡易的配置、輕量化等等,若干優點讓我愛不釋手
2. Sublimesublime是我接觸較早,使用時間也較長的一款工具,最初是用來開發Python,後來寫代碼轉向了vs code,sublime也就純粹的成為了一款編輯工具。
支持編碼格式豐富、運行流暢、界面美觀等等,雖然,相對於UE、notepad++說不出它絕對的優勢在哪,我還是依然習慣於使用這款工具。
3. Postman不同模塊之間調用有很多種方式,資料庫、函數接口、restful。其中restful應該是使用最為頻繁的,不同語言,在這個過程中就涉及到測試Web API & HTTP,Postman就變的異常重要。
它支持GET, HEAD, POST, PUT等任何方式的請求,多種格式的header、body體,比起另外寫一個測試腳本或者curl實在節省很多時間。
4. xshell開發過程中,伺服器是無法繞開的,這時候終端模擬工具就顯得異常重要,之前用過Putty、mobaxterm等,但是最後還是選擇了xshell。
支持豐富的主題,輕鬆管理遠程主機,強大的快捷功能,靈活的定製化,流暢的使用體驗等等,讓我越使用,越喜歡這款工具。
5. git這裡需要多說一句廢話,要區分git和GitHub,GitHub是一個開源項目託管平臺,git一款版本控制工具。
在團隊開發過程中,版本控制是必不可少的,提交、檢視、MR等等,一系列的版本控制流程,讓代碼規範和交付更叫可靠,這裡就離不開git。另外,git也支持很多常用Linux命令,所以,git對於我來說使用頻率也是非常高的一款工具。
6. typora文檔,在開發過程中當然是必不可少的,而markdown在開發中更加是舉足輕重。Markdown編輯工具數不勝數,在線的、PC端的,比比皆是,但是我還是選擇typora。界面簡潔,支持實時預覽,支持多種公式類型,支持TOC等標籤。
7. Listarylistary在一定程度上和everything有一些重疊,都可以用於文件搜索,但是有了listary之後我就很少使用everything,因為非常方便,當然,它也有不足之處,比如不能像everything那樣使用正則表達式匹配,但是這絲毫不妨害它對我的吸引,調出非常方便,雙擊ctrl即可,而,最吸引我的地方是快速定位功能,無論是在文件夾內部,還是在控制面板、或者是在桌面,只要敲擊一下要找的東西名稱中的一個字母即可,此外,listary還可以作為快速啟動軟體使用,能夠結合不同軟體進行定製化,使用簡短的字符匹配某一款軟體,快速打開使用。
8. CopyTranslator作為學生、科研人員或者算法工程師等職位難免會接觸英文文章,讀英語文章有哪些痛點呢?英語水平差,這個當然排第一,如果英語水平好了,就不要再找什麼翻譯軟體了。
我在閱讀文獻翻譯英文時主要受困於如下幾點,
•來回切換屏幕、複製、粘貼比較麻煩。•人工翻譯不僅貴而且效果不好。•翻譯軟體有限制,比如我們用谷歌或百度翻譯的時候,複製一段文章,拷貝到翻譯框裡,到換行符的位置會中斷,這樣就會讓翻譯的混亂不堪,還需要一個一個的把換行符刪掉。
CopyTranslator讓翻譯過程中變得快捷方便,而且,這款軟體還支持點按複製、專注模式,能同時解決上述3個痛點。
網頁工具1. bootschoolbootschool[1]是一個JS插件和網站模板分享網站,提供各種JS插件、jQuery特效、插件指導、網站模板與插件在線預覽,jQuery插件下載及教程。
也許,讀到這裡很多對JS不感興趣的會感覺到失望,其實日常工作中我做JS開發的時間也不多,我只所以使用這個網站是因為它有豐富有趣的小功能,例如,自定義banner。
在我們做Python、Spring Boot開發時,為了顯示更加個性化,會輸出一些字符串形式的banner信息,bootschool可以根據輸入內容快速生成ASCII文字,當然,我們也可以用在其他方面,讓原本單調的日誌信息變得多姿多彩。
例如,
////////////////////////////////////////////////////////////////////// _ooOoo_ //// o8888888o //// 88" . "88 //// (| ^_^ |) //// O\ = /O //// ____/`---'\____ //// .' \\| |// `. //// / \\||| : |||// \ //// / _ -:- - \ //// | | \\\ - /// | | //// | \_| ''\---/'' | | //// \ .-\__ `-` ___/-. / //// ___`. .' /--.--\ `. . ___ //// ."" '< `.___\_<|>_/___.' >'"". //// | | : `- \`.;`\ _ /`;.`/ - ` : | | //// \ \ `-. \_ __\ /__ _/ .-` / / //// ========`-.____`-.___\_____/___.-`____.-'======== //// `=---=' //// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //// 佛祖保佑 永不宕機 永無BUG //////////////////////////////////////////////////////////////////////也可以自己選擇文字,例如,生成「Jackpop」,
_ _ _ __ _ __ _ | | __ _ __ | |__ | '_ \ ___ | '_ \ | || | / _` | / _| | / / | .__/ / _ \ | .__/ _\__/ \__,_| \__|_ |_\_\ |_|__ \___/ |_|__ _|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""| "`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'2. jsoneditoronlinejson格式是開發中非常常見的,包括http請求,數據持久化等等。json閱讀和格式化就是一項非常必要的工作,之前使用過一段時間json.cn,但是自從同事給我推薦jsoneditoronline[2]這款在線工具之後就再也沒有用過其他的。
這是一款來自谷歌的在線工具,支持差異化對比、格式檢查等等非常豐富而強大的json編輯和格式化功能。
3. explainshell作為IT/網際網路相關的工作人員,哪怕不是開發者,也有可能會和Linux打交道,我們可以用Linux進行開發、運維等,因此,Linux就成為了一項非常重要的個人技能。
使用Linux過程中主要打交道的對象就是繁多的Linux命令和選項(options)就成了令人頭疼的事情,舉一個最為簡單的例子,
這個Linux命令包含兩個部分,command和options,ls是查看命令,-a和-l分別代表:顯示所有文件(包括以.開頭的隱藏文件)、以列表形式顯示。
這些常用的我們都知道,但是有很多使用頻率較少的怎麼辦?我們可以藉助explainshell[3]。它是一款利用Python開發的Linux命令行工具,通過解析幫助文檔,逐個匹配一行Linux命令中不同字符的含義,讓你對Linux命令能夠一目了然,是一款非常棒的Linux學習工具。
4. NicetoolNicetool[4]包含超過400個簡單易用的工具收錄其中,使用領域涵蓋生活常用、辦公輔助,教育學習,視頻媒體,網絡工具,程序開發,工具無需註冊下載,即用即走。
5. alltoallalltoall[5]是一個在線轉換工具網站,200+種文件格式,視頻、音頻、圖片、文檔、表格、電子書等等,再也不用為文件格式轉換下載各種工具和軟體了。
瀏覽器插件1. OneTab同事說「自從你給我推薦了這款插件,我再也離不開它了。」
瀏覽器標籤頁是一樣令人頭疼的東西,至少對於我來說是這樣的,每當打開一些網頁之後會發現標籤頁密密麻麻,非常混亂,關閉後又擔心會用到,不關閉實在影響瀏覽器的使用,而且過多的打開網頁會帶來很多內存佔用。很久以來,一直沒有找到好的解決方法,直到遇到OneTab這款插件,能夠一鍵關閉、恢復所有標籤頁,而且能夠節省高達95%的內容佔用。
只需單擊一下,就可以把所有標籤頁轉化成一個列表,如果再次需要某個網頁的時候,可以單個或者全部恢復標籤頁,
2. SwitchyOmega我覺得校園網也是讓很多大學生頭疼的一個問題,外網無法訪問校園網資源,校園網訪問外網速度緩慢。怎麼樣才能在這兩種網絡之間自如切換?手動設置IE代理?那樣效率太低了,不僅步驟繁瑣,而且不能自動切換。SwitchyOmega就可以輕鬆解決代理切換問題,讓你在不同的網絡環境下自如切換代理,選擇最快的代理方法打開你要的網頁。
3. OctotreeOctotree是當之無愧的Github神器,強烈的推薦給大家。
查看某個文件是我使用Github過程中最苦惱的一個點,需要逐層進入一個目錄,然後再逐層退出目錄,這樣不僅費勁,而且,如果網速不太好的話,查看一個文件需要耗費很長時間,例如,
Octotree的出現能夠讓Github體驗提升到一個全新的水平,它能夠以樹形結構展示Github項目,更加易於閱讀,能夠快速查看某個文件,能夠讓Github像大多數IDE那樣。
除此之外,Octotree還有一項非常實用的功能--下載單個文件。4. Click&Clean瀏覽器是我們使用最多的一款工具之一,甚至沒有其中的之一。每天我們花費大量的時間在瀏覽器上面,訪問各種網址,也留下了很多訪問的足跡,這就涉及一個問題,除了緩存垃圾之外就是隱私和安全信息。不知不覺中我們把自己的信息展露無疑。我認為有著Click&Clean這款超強的隱私保護工具就再也不用擔心這個問題了。
•清除瀏覽歷史記錄, 清除下載歷史記錄•清空緩存•刪除 Cookie•清除已保存的密碼•瀏覽器關閉時運行外部應用程式•關閉所有窗口/標籤前清理•...
5. Tampermonkey可以毫不謙虛的說,Tampermonkey是目前最為流行的用戶腳本管理器,它適用於 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。
用戶腳本是一個什麼東西?簡而言之,不同腳本可以實現不同的功能。
Tampermonkey可以對這些功能進行管理,讓你的瀏覽器如虎添翼,Tampermonkey有很多可選的腳本,但是如果讓推薦的話,我認為以下5款是必不可少的:
•AC-baidu•Yet Another Weibo Filter•百度網盤直鏈下載助手•豆瓣資源下載大師•破解VIP會員視頻集合
命令行工具1. oh-my-zsh「Your terminal never feltthisgood before.」
提到命令行工具,首推的自然是這款大殺器,bash的替代工具。bash算得上一款中規中矩的shell工具,沒有什麼缺陷,但是也談不上優秀,在很多方面考慮的還不夠周到,例如,自動補全、語法、高亮顯示、提示符等。
提到oh-my-zsh,那就厲害了,102kStar、250+插件、125+主題、1450+貢獻者.從這一系列的數字中就可以體現出這款shell工具的生態有多麼完善,也足以體現它有多麼強大。
2. tldr用Linux的過程中難免會和各種參數打交道,距離比如ps -aux、tar -jxvf、find -name,每個"-"後面的就是各種命令參數,大家比較熟悉的查看命令解釋的方法有"command ?" "man command",就是命令後面加?或者man加命令。以man為例,解釋很詳細,但是帶來的問題就是冗餘,有很多信息是我們不想看到的,所以tldr就凸顯出它的優點,簡潔、實用。
3. tigTig是一個基於ncurses的git文本模式接口。它的功能主要是作為一個Git存儲庫瀏覽器,但也可以幫助在塊級別上分段提交更改,並充當各種Git命令輸出的分頁器。
4. autojump為什麼第一名給了autojump?因為實在太實用了,我們在Linux下開發時會頻繁的切換工作目錄,要一步一步的cd,pwd實在太麻煩了,autojump通過記錄命令行中使用最多的目錄並給定相應權重的數據塊來進行工作,不需要完全輸入目錄名,甚至輸錯目錄名都沒問題。
使用方法:
跳轉到包含foo的路徑只需下面這個命令即可,autojump會通過維護的資料庫進行跳轉, j foo
5. script很多時候,為了安全,需要對工作內容進行備份和保存。而script就是一個隱藏的記錄器,它可以記錄終端會話的所有內容,形成文件,對總是忘記工作內容的同學真是福音。
使用方法:
在終端輸入script,
會顯示:
Script started, file is typescript接著可以開始自己的操作,想退出輸入exit即可,當前目錄下會生成一個名為trypescript的文件,裡面記錄了剛才的操作。
6. tree剛接觸非桌面Linux的同學大多數會感覺Linux沒有Windows或Mac那麼直觀,的確,我們面對的就是一行行命令,文件夾、應用圖標什麼的都沒有,自然不直觀。但是可以藉助一些工具來增強目錄的直觀性,這裡推薦的就是tree,可以以類似於圖像的樹狀圖排列目錄和文件。
# tree #以樹狀圖列出當前目錄結構 . #當前目錄結構 |-- README |-- examples.desktop |-- file |-- file.new |-- index.htm |-- test | |-- README | |-- file | |-- testfile | |-- testfile1
7. httpie不同組件之間相互訪問可以通過很多方式,其中restful是比較常用的一種。這裡就涉及http請求,我們需要測試數據能夠正確的上傳和下載。在處理http請求過程中使用較多的工具就是curl。curl有很多明顯的弊端:對用戶不夠友好,命令冗長;可視化效果差,沒有高亮。httpie就是curl的一個非常好的替代者,它的使用更加簡潔明了,而且能夠高亮顯示請求結果。
8. glancesglances就如同它的漢語意思那樣,「一眼」、「一瞥」,能夠通過一個簡單的命令對系統信息一目了然,了如指掌。glances利用Python編寫的一個跨平臺的監視工具,旨在通過curses或基於Web的界面提供大量監視信息。
你不僅可以通過終端命令行使用該工具,還可以web界面、API接口等對伺服器進行遠程監控,可以將統計信息導出到文件或資料庫。
引用連結[1] bootschool: https://www.bootschool.net/
[2] jsoneditoronline: https://jsoneditoronline.org/
[3] explainshell: https://github.com/idank/explainshell
[4] Nicetool: http://www.nicetool.net/
[5] alltoall: http://www.alltoall.net/如果喜歡,麻煩點一下「在看」~