作為程序員,近幾年我都用過哪些優質的開源軟件?
過去幾年我接觸到了非常多優秀的開源軟件,今天就借著這個機會,跟大家分享一下,那些我一直在使用的開源軟件吧!
體驗好的視頻播放器 - IINA
大家都知道,macOS 的默認視頻播放器 Quick Time Player 對一些視頻格式的支持不是很好,之前我嘗試過用 MPlayerX、VLC 等作為替代方案,但效果都不是很好,直到我發現了 IINA。
這是香港科技大學一名學生基于 Swift 編寫的 macOS 視頻播放器,自開源以來,累積近兩萬 GitHub Star。

當初我剛發現這款軟件時,就被它簡約清新的界面所吸引了。后面實際上手使用,發現其功能也十分強大,提供的一些配置選項也非常靈活。
在我用上 IINA 之后,就把電腦上的 MPlayerX 和 VLC 都卸載掉了。
如果要讓我評選 2018 年最喜歡的開源項目,那一定非 IINA 莫屬。
界面自動化測試 - Airtest
Airtest 是由網易所研發的一款 UI 界面自動化測試工具,于 2018 年 Google 的 GDC 大會上公布。
這款工具主要使用圖像識別技術來定位頁面具體的 UI 元素,這也就意味著它可以在不使用任何代碼注入的情況下完成自動化測試。
在該產品發布前,已在網易內部的多款游戲中已得到實際應用。
它支持了 iOS、Android、Windows、小程序等多個平臺的應用測試,通過在 IDE 中進行所見即所得的交互方式,極大簡化了 App 圖形界面的測試代碼編寫工作。
除此之外,你還可以借助該工具來編寫 App 爬蟲,效率也是蠻高的。
一鍵切換 hosts 配置 - SwitchHosts
這是一個用于快速切換 hosts 配置的小工具,基于 Electron 開發,平時我主要將其用于測試軟件在不同生產環境上的使用效果。

移動端網絡調試工具 - Bagel
如果你是移動端開發或測試,你電腦上應該用過 Charles 這款抓包工具,在調試服務器的接口數據或模擬慢速網絡環境時,Charles 可謂是一款神器。
而 Bagel 則是一款與 Charles 有著類似功能的接口數據調試工具。

當你的 iOS 設備與 Mac 連接到同一網絡時,便可在 Bagel 上查看、監聽手機 App 的網絡請求數據,拿來抓包很方便。比起 Charles 更加簡單易用,配置成本更低,當然,功能也就沒 Charles 那么強了。
視頻下載工具 - youtube-dl
如果你屬于視頻倉鼠黨,喜歡囤積互聯網上的一些視頻資源,那么你應該會喜歡上類似 youtube-dl 這樣命令行視頻下載工具。
它可以通過指定一些參數,讓你自由的設置視頻下載的網絡代理、連接方式、地理限制、緩存路徑等配置。
但是,由于參數配置選項眾多,使得中間對參數的選擇與配置流程較為繁瑣。
不久前,一名瑞士開發者了解到這一痛點,便做了一款可交互版的 youtube-dl,支持你在命令行中方便的設置下載視頻的分辨率、格式與字幕。
latex 代碼轉換器 - Mathpix
如果你經常用 latex 編寫文檔,那你一定得安裝下 Mathpix。
這款工具能將帶數學公式的截圖一鍵轉成 latex 代碼,幫你省下很多時間,堪稱神器!

圖片無損放大 - waifu2x
waifu2x 是一位來自日本的開發者所開源的項目,該項目利用人工智能深度卷積神經網絡技術來無損放大圖片,堪稱是一款圖片放大神器。
