03.05 作為程序員的我,常用的工具軟件有這些

不同崗位的程序員也有千差萬別,前端、算法、架構設計、測試......不同的崗位日常使用的工具截然不同。這些天我總結了一下我在開發中常用的軟件/網站/插件/命令行工具,很多

精品,分享給大家。往後看,你會發現“驚喜”不斷。

下面主要從4個方面介紹,

  • PC端軟件
  • 網頁工具
  • 瀏覽器插件
  • 命令行工具

PC端軟件

1. vscode

第一名當然歸屬於神器vscode,這些年的開發中,IDE是接觸最多的工具,無論前端JS,做服務開發時用Java,還是做算法時用Python,都離不開IDE,以往,是每種編程語言選擇在這種語言表現最優的IDE,例如,codeblocks、eclipse、Pycharm、webstorm等等,但是有了vscode,這些我統統卸載了。

遠程開發、豐富的主題、簡易的配置、輕量化等等,若干優點讓我愛不釋手,詳情可以查看我的另一篇文章,

Jackpop:我最終還是選擇了VS code!​zhuanlan.zhihu.com

作為程序員的我,常用的工具軟件有這些

2. sublime

sublime是我接觸較早,使用時間也較長的一款工具,最初是用來開發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. visio

作為一名開發人員,在一個項目從需求評審,到算法梳理,到正式開發,都需要詳細的梳理具體的架構及流程,這樣的確能夠極大的提高開發效率,避免開發過程中不必要的彎路。

雖然目前流程圖工具有很多,億圖圖示、processon等等,但是,和visio相差還是有十萬八千里。能夠直觀、輕鬆的組織流程結構圖。

7. xmind

xmind在我的使用過程中被嚴格定義為思維導圖,在一定意義上,Visio和xmind有一些交集,但是,Visio更適合做架構圖,xmind在思維導圖方面更加方便。

8. typora

文檔,在開發過程中當然是必不可少的,而markdown在開發中更加是舉足輕重。Markdown編輯工具數不勝數,在線的、PC端的,比比皆是,但是我還是選擇typora。界面簡潔,支持實時預覽,支持多種公式類型,支持TOC等標籤。

9. CopyTranslator

作為學生、科研人員或者算法工程師等職位難免會接觸英文文章,讀英語文章又哪些痛點呢?英語水平差,這個當然排第一,如果英語水平好了,就不要再找什麼翻譯軟件了。1.來回切換屏幕、複製、粘貼比較麻煩。2. 人工翻譯不僅貴而且效果不好。3. 翻譯軟件有限制,比如我們用谷歌或百度翻譯的時候,複製一段文章,拷貝到翻譯框裡,到換行符的位置會中斷,這樣就會讓翻譯的混亂不堪,還需要一個一個的把換行符刪掉。

CopyTranslator讓翻譯過程中變得快捷方便,而且,這款軟件還支持點按複製、專注模式,能同時解決上述3個痛點。

作為程序員的我,常用的工具軟件有這些

10. DesktopCal

DesktopCal是一款功能強大的桌面日曆,包含待辦事項、農曆、24節氣、日程安排等功能,而且能夠直接平鋪在桌面,我覺得能夠養成一個每天制定計劃、完成計劃的習慣會對工作、學習效率大大的提升,而這款工作能夠提供強有力的幫助。

作為程序員的我,常用的工具軟件有這些

11. listary

listary在一定程度上和everything有一些重疊,都可以用於文件搜索,但是有了listary之後我就很少使用everything,因為非常方便,當然,它也有不足之處,比如不能像everything那樣使用正則表達式匹配,但是這絲毫不妨害它對我的吸引,調出非常方便,雙擊ctrl即可,而,最吸引我的地方是快速定位功能,無論是在文件夾內部,還是在控制面板、或者是在桌面,只要敲擊一下要找的東西名稱中的一個字母即可,此外,listary還可以作為快速啟動軟件使用,能夠結合不同軟件進行定製化,使用簡短的字符匹配某一款軟件,快速打開使用。

作為程序員的我,常用的工具軟件有這些

12. Mathpix Snip

作為算法相關的工作人員,在書寫文檔過程中,markdown和LaTeX格式的數學公式也是必不可少。逐步的去輸入一個複雜、冗長的公式顯然不是一個理想的方式,MAthpix Snip能夠準確快速的識別圖片中的數學公式,並且轉成LaTeX格式,真正能夠提升效率的一款工具。

作為程序員的我,常用的工具軟件有這些

複製到Markdown裡面進行一下驗證對比。

作為程序員的我,常用的工具軟件有這些


網頁工具

1. explainshell

作為IT/互聯網相關的工作人員,哪怕不是開發者,也有可能會和Linux打交道,我們可以用Linux進行開發、運維等,因此,Linux就成為了一項非常重要的個人技能。

使用Linux過程中主要打交道的對象就是繁多的Linux命令和選項(options)就成了令人頭疼的事情,舉一個最為簡單的例子,

<code>> ls -al/<code>

這個Linux命令包含兩個部分,command和options,ls是查看命令,-a和-l分別代表:顯示所有文件(包括以.開頭的隱藏文件)、以列表形式顯示。

這些常用的我們都知道,但是有很多使用頻率較少的怎麼辦?我們可以藉助explainshell。

它是一款利用Python開發的Linux命令行工具,通過解析幫助文檔,逐個匹配一行Linux命令中不同字符的含義,讓你對Linux命令能夠一目瞭然,是一款非常棒的Linux學習工具。

作為程序員的我,常用的工具軟件有這些

2. jsoneditoronline

json格式是開發中非常常見的,包括http請求,數據持久化等等。json閱讀和格式化就是一項非常必要的工作,之前使用過一段時間json.cn,但是自從同事給我推薦jsoneditoronline這款在線工具之後就再也沒有用過其他的。

作為程序員的我,常用的工具軟件有這些

這是一款來自谷歌的在線工具,支持差異化對比、格式檢查等等非常豐富而強大的json編輯和格式化功能。

3. Nicetool

超過400個簡單易用的工具收錄其中,使用領域涵蓋生活常用、辦公輔助,教育學習,視頻媒體,網絡工具,程序開發,工具無需註冊下載,即用即走。

作為程序員的我,常用的工具軟件有這些

4. Tool

這是一款被稱為程序員的百寶箱的工具,

在線運行代碼,時間戳,格式轉換,代碼著色,APP icon製作,應有盡有,當然,這款工具中我使用較多的就是時間戳轉換。

作為程序員的我,常用的工具軟件有這些

5. 在線文件轉換

200+種文件格式,視頻、音頻、圖片、文檔、表格、電子書等等,再也不用為文件格式轉換下載各種工具和軟件了。

作為程序員的我,常用的工具軟件有這些

6. alternativeto

就像它的名字那樣,"可供選擇的、替代的",沒錯,這就是一個替代品網站,如果覺得哪個軟件不好用,或者嫌安裝麻煩,或者購買太貴,到這個網站搜一下,就可以提供很多可供選擇的替代產品。

作為程序員的我,常用的工具軟件有這些


瀏覽器插件

1. OneTab

同事說“自從你給我推薦了這款插件,我再也離不開它了。”

瀏覽器標籤頁是一樣令人頭疼的東西,至少對於我來說是這樣的,每當打開一些網頁之後會發現標籤頁密密麻麻,非常混亂,關閉後又擔心會用到,不關閉實在影響瀏覽器的使用,而且過多的打開網頁會帶來很多內存佔用。很久以來,一直沒有找到好的解決方法,直到遇到OneTab這款插件,能夠一鍵關閉、恢復所有標籤頁,而且能夠節省高達95%的內容佔用

作為程序員的我,常用的工具軟件有這些

只需單擊一下,就可以把所有標籤頁轉化成一個列表,如果再次需要某個網頁的時候,可以單個或者全部恢復標籤頁,

作為程序員的我,常用的工具軟件有這些

2. SwitchyOmega

我覺得校園網也是讓很多大學生頭疼的一個問題,外網無法訪問校園網資源,校園網訪問外網速度緩慢。怎麼樣才能在這兩種網絡之間自如切換?手動設置IE代理?那樣效率太低了,不僅步驟繁瑣,而且不能自動切換。

SwitchyOmega就可以輕鬆解決代理切換問題,讓你在不同的網絡環境下自如切換代理,選擇最快的代理方法打開你要的網頁。

作為程序員的我,常用的工具軟件有這些

3. Grammar and Spell Checker

從名字就可以知道這款工具的功能--語法和拼寫檢查工具。它能夠在網站上任何位置對你輸入的段落進行拼寫和語法檢查,它的強大之處主要有如下2點:支持超過25種語言;適用於幾乎所有的網站。

作為程序員的我,常用的工具軟件有這些

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會員視頻集合

詳情可以查看文章,

實用工具 | 也許,這是最強大的一款瀏覽器插件​mp.weixin.qq.com

作為程序員的我,常用的工具軟件有這些


命令行工具

1. oh-my-zsh

“Your terminal never feltthisgood before.”

提到命令行工具,首推的自然是這款大殺器,bash的替代工具。bash算得上一款中規中矩的shell工具,沒有什麼缺陷,但是也談不上優秀,在很多方面考慮的還不夠周到,例如,自動補全、語法、高亮顯示、提示符等。

提到oh-my-zsh,那就厲害了,102kStar、250+插件、125+主題、1450+貢獻者......從這一系列的數字中就可以體現出這款shell工具的生態有多麼完善,也足以體現它有多麼強大。

詳細內容,可以查看文章,

Jackpop:拋棄bash,擁抱zsh!​zhuanlan.zhihu.com

作為程序員的我,常用的工具軟件有這些

2. tldr

用Linux的過程中難免會和各種參數打交道,距離比如ps -aux、tar -jxvf、find -name,每個"-"後面的就是各種命令參數,大家比較熟悉的查看命令解釋的方法有"command ?" "man command",就是命令後面加?或者man加命令。以man為例,解釋很詳細,但是帶來的問題就是冗餘,有很多信息是我們不想看到的,所以tldr就凸顯出它的優點,簡潔、實用。

作為程序員的我,常用的工具軟件有這些

3. tig

Tig是一個基於ncurses的git文本模式接口。它的功能主要是作為一個Git存儲庫瀏覽器,但也可以幫助在塊級別上分段提交更改,並充當各種Git命令輸出的分頁器。

4. autojump

為什麼第一名給了autojump?因為實在太實用了,我們在Linux下開發時會頻繁的切換工作目錄,要一步一步的cd,pwd實在太麻煩了,autojump通過衛華命令行中使用最多的目錄並給定相應權重的數據塊來進行工作,不需要完全輸入目錄名,甚至輸錯目錄名都沒問題。

使用方法:

跳轉到包含foo的路徑只需下面這個命令即可,autojump會通過維護的數據庫進行跳轉,

<code>j foo/<code>

5.>

很多時候,為了安全,需要對工作內容進行備份和保存。而script就是一個隱藏的記錄器,它可以記錄終端會話的所有內容,形成文件,對總是忘記工作內容的同學真是福音。

使用方法:

在終端輸入script,

<code>$>

會顯示:

Script started, file is typescript

接著可以開始自己的操作,想退出輸入exit即可,當前目錄下會生成一個名為trypescript的文件,裡面記錄了剛才的操作。

6. tree

剛接觸非桌面Linux的同學大多數會感覺Linux沒有Windows或Mac那麼直觀,的確,我們面對的就是一行行命令,文件夾、應用圖標什麼的都沒有,自然不直觀。但是可以藉助一些工具來增強目錄的直觀性,這裡推薦的就是tree,可以以類似於圖像的樹狀圖排列目錄和文件。

<code># tree                   #以樹狀圖列出當前目錄結構  
. #當前目錄結構
|-- README
|-- examples.desktop
|-- file
|-- file.new
|-- index.htm
|-- test
| |-- README
| |-- file
| |-- testfile
| |-- testfile1 /<code>

7. httpie

不同組件之間相互訪問可以通過很多方式,其中restful是比較常用的一種。這裡就涉及http請求,我們需要測試數據能夠正確的上傳和下載。在處理http請求過程中使用較多的工具就是curl。

curl有很多明顯的弊端:對用戶不夠友好,命令冗長;可視化效果差,沒有高亮。httpie就是curl的一個非常好的替代者,它的使用更加簡潔明瞭,而且能夠高亮顯示請求結果。

作為程序員的我,常用的工具軟件有這些

8. glances

glances就如同它的漢語意思那樣,“一眼”、“一瞥”,能夠通過一個簡單的命令對系統信息一目瞭然,瞭如指掌。

glances利用Python編寫的一個跨平臺的監視工具,旨在通過curses或基於Web的界面提供大量監視信息。

作為程序員的我,常用的工具軟件有這些

你不僅可以通過終端命令行使用該工具,還可以web界面、API接口等對服務器進行遠程監控,可以將統計信息導出到文件或數據庫。



分享到:


相關文章: