在實際的項目中,除了需要掌握Qt開發框架本身,還需要掌握一些開發工具。這些工具能起到事半功倍的效果,甚至某些工具是開發不可或缺的。下面筆者就介紹一些常用的開發工具的用法及下載地址,希望對缺少實際項目經驗的同學提供一些參考和建議。
1. 文件搜索利器Everything軟體介紹軟體主頁:https://www.voidtools.com/zh-cn/
引用一下官方介紹:
"Everything" 是 Windows 上一款搜尋引擎,它能夠基於文件名快速定文件和文件夾位置。
"Everything" 僅索引文件和文件夾名,一般僅需幾秒便可建立其資料庫。全新安裝的 Windows 10 (大約 120,000 個文件) 僅需 1 秒即可索引完成。索引 1,000,000 個文件將需要大約 1 分鐘。
為什麼選Everything?因為它功能強大、速度快等等、最主要是免費。
軟體界面如下:
什麼場景下才會使用Everything?忍受不了Windows自帶搜索工具的速度,並想在一秒內找到文件時,你需要Everything;運行軟體找不到動態庫時,直接輸入動態庫名稱即可找到;著急使用文檔,但是只記得部分文檔名稱,忘記存放位置時,輸入部分文件名即可快速找到;不想通過資源管理器一層一層定位文件時,可以用Everything搜索到文件後,直接定位到文件所在位置;支持Web服務:可以從手機或平板上通過瀏覽器訪問它。總的來說,Everything在日常中使用頻率很高,它確確實實能夠帶來效率的提升。不管是對軟體開發者還是職場人士,都是必備工具。
2. 文本編輯工具Notepad++這個工具大家可能比較熟悉,它是Windows上Nodepad.exe的高級替代品,文件編輯利器,主要用於文本編輯。
我們知道Windows的Nodepad.exe界面和功能都十分簡單,只能進行簡單的文本編輯。而Nodepad++支持代碼高亮、支持插件、支持編碼轉換、支持高級搜索、甚至支持代碼調試(部分語言),適合用來編寫腳本程序。最主要的特點是免費,可以直接下載使用,官方下載地址:https://notepad-plus.it.softonic.com/。
界面截圖如下:這個軟體也可以說是開發必備,可以滿足多數情況的編輯需求,軟體使用起來也十分簡單,使用頻率很高。
筆者註:Notepad++作者有反華言論,建議大家使用其他軟體。還有很多優秀軟體,比如Notepad2、Notepad3、VSCode等,國人當自強,希望以後會有更多優秀國產軟體問世。
3. 文件比對工具在多人協作的項目開發模式中,每個人負責開發不同的模塊。在特定開發階段完成後,需要合併多個開發成員的項目代碼。這就需要判斷每個人對文件做了哪些修改,從而合併得到最終的代碼版本。大量的代碼靠人眼比對是不可行的,必須要藉助文件比對工具進行比對。
下面介紹幾種常用的文件比對工具。
Beyond Compare:付費軟體,專業文件和文件夾比較工具,是被廣泛認可和使用的軟體,界面及互動設計上方便易用,功能上也是很完備,是筆者首推的軟體。可以下載試用,或者輸入序列號獲得使用授權。WinMerge:免費軟體,界面設計和功能上都相對於Beyond Compare略遜一籌,但是也能滿足日常使用需求。限於篇幅,這裡就不一一列舉了,有很多相關軟體,感興趣的話大家可以一一嘗試。
4. 版本管理工具介紹在使用版本管理工具前,需要了解為什麼做軟體開發需要進行版本管理。前面的文章曾提到過,軟體開發是一個工程系統,並不僅僅指代碼編寫。如何管理好項目中的代碼、資源、配置的版本也是很重要的。軟體是一個不斷迭代的邏輯產品,迭代離不開版本管理。當然完全掌握版本管理是有一定難度的,在此之前,我們首先需要建立起對軟體版本管理的基本認知。用簡單的話來說,就是:
版本就是同一個軟體、資源在不同階段的檔案,檔案是記錄歷史信息的最重要的工具,歷史信息在項目中也會包含巨大的價值,一旦丟失可能造成巨大損失。確定了研究對象,那麼就需要對研究對象進行操作,最基本的需求無非就包括:瀏覽版本內容、比較合併版本差異。其他複雜的功能是圍繞著基本問題展開設計的,弄懂最核心的矛盾才是最重要的。後面會公眾號有版本管理的文章,敬請關注。版本管理工具GitGit 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的分布式版本控制軟體。Git作者也是Linux作業系統的作者,感興趣的可以深入了解一下。Git只是一個版本管理的工具集,針對Git有很多GUI軟體,旨在簡化Git的使用。最常用的Git UI客戶端這裡建議使用:「TortoiseGit」,小烏龜牌Git,軟體免費,官網可以下載使用,地址:https://tortoisegit.org/。Git目前是主流,需要儘量學會基本操作。
SVNSVN是舊時代的版本管理工具,功能及相對於Git而言不夠強大,但是也是足夠使用的,最好能夠了解。SVN的桌面客戶端用得比較多的是「TortoiseSVN」,小烏龜牌SVN,TortoiseSVN 是 Subversion 版本控制系統的一個免費開源客戶端。官網地址:https://tortoisesvn.net/。SVN原理上和Git不同,SVN需要伺服器,伺服器軟體一般使用「Visual SVN」,也是免費的,官網地址:https://www.visualsvn.com/server/。使用時,需要同時安裝SVN客戶端和SVN伺服器配合使用。
5. Markdown編輯器做項目時一般需要寫一些篇幅較短的文章,用於記錄或說明一件事情。如果你還在使用文本文件那就太落伍啦!試試用Markdown來寫文章吧,本文即使用Markdown創作。雖然Markdown有一定的學習成本,但是真正使用頻繁的部分並不多,還是要牢記二八學習法則,只有20%的技術在80%的情況下能用到,比較難的技術很少能用到。所以先把20%學會了,就算基本學會了。
Markdown編輯器推薦使用Typora,目前是免費使用的,很好用的Markdown桌面客戶端。
Typora軟體界面:
結語上面簡單介紹了筆者覺得最常用的做Qt項目開發時的工具,只是眾多工具的冰山一角。
後面有新的有用的開發工具(包括筆者編寫的工具)會及時補充,敬請關注。