【安卓本卓】Android系統原始碼篇之(二)Source Insight
前言
“Source Insight(以下簡稱SI)是世界上最好的編輯器”,說這句話不知道會不會出門被打呢?-_- 中國古話說得好,“文無第一,武無第二”,所以不敢說SI是最好的,但是說是“最好的之一”絕對是妥妥的。它以豐富的語言支援、便捷的功能、快速的原始碼導航、實時的上下文顯示、獨立的符號資料庫等眾多優點,在全世界範圍內廣受程式員們的歡迎。本文將結合筆者的實際操作和學習,基於SI3.5做一些使用記錄。
一、SI簡介
SI是一款面向專案開發的程式編輯器和程式碼瀏覽器,它提供了一個檢視將分散在各個地方的程式碼匯合在一起形成一個虛擬的整體,供開發者方便地閱讀和編輯,如下圖所示。
Source Insight was designed to enhance your ability to understand and modify your program. Our company mission is to increase programming team productivity by clarifying source code, presenting information in a useful way, and allowing programmers to modify software in large, complex projects. ……Source Insight acts as an information server that surrounds your project’s source code. With it, you can have instant access to symbolic and textual information in your program.
該段英文摘自SI官方幫助文件,從這裡可以看出SI的設計主旨是方便開發者檢視和修改原始碼。
二、SI的優勢
SI是如今最好用的語言編輯器之一,具有很多其他編輯器無法比擬的優點,比如下面幾點。
1、支援語言種類多。
SI幾乎支援所有的語言,如C、C++、C#、JAVA\、ASM、PAS、ASP、HTML等,而其它編輯器往往只支援其中某類或某幾種語言,豐富性遠不及SI。
2、擁有自己的資料庫。
SI自動傳建立並維護他自己高效能的符號資料庫,包括函式、method、全域性變數、結構、類、註釋和功能原始檔裡定義的其它型別的符號等。我們可以通俗地理解為快取,當需要再次查詢某個符號時,就可以直接從資料庫中查詢,而不用在整個原始碼庫中搜索,極大提高了效率。
3、顯示豐富的程式相關資訊。
SI提供了豐富多彩的視窗,為被選中的程式碼提供豐富的資訊,如reference trees、class inheritance diagrams、call tress,symbol windows等。後面會專門介紹這些視窗的使用。
4、實時顯示上下文資訊。
SI提供了Context Window,當滑鼠選擇程式碼中的某個符號時,該window會實時顯示選中符號的上下文資訊。在下文中的Context Window會詳細講到。甚至在你編輯的時候,SI同時分析你的原始碼,提供實時的資訊並進行分析。
5、快速。
提供了快速和革新的訪問原始碼和源資訊的能力,能以最快的速度對原始碼導航和提供任何程式編輯器的源資訊。
三、建立專案
在SI視窗的頂部工具欄上依次點選 Project > New Project,即可開始建立一個新的專案了。之所以要特別介紹專案的建立過程,除了這是一個極常用的操作外,還有就是建立過程中有一些注意事項需要留心,筆者在使用過程中就曾經走過不少彎路。
1、專案命名及設定專案儲存路徑
這裡需要注意的是,選擇專案資料檔案儲存路徑的時候,要選擇你的原始碼所在的碟符,因為在後面新增原始檔的時候,只能從這裡設定的碟符中新增(不知道其它使用者有沒有碰到這個情況,筆者在兩臺機器上操作過,都是如此)。
2、專案設定
這裡就按照預設的選擇就可以了,筆者就是這麼做的。當然,這個要根據使用者自己需要來選擇了,看個人喜好。
3、新增/刪除專案檔案
在這個介面上,可以看到左側“Directory”這一欄的根節點,就是第一步中咱們選擇的儲存專案的碟符,如果你要新增的原始檔不在這個碟符,就沒法找到了。在該碟符下選擇想要新增的檔案,如藍色部分“Android-8.0.0_r1”,這是Android 系統原始碼根目錄,因為這裡選擇的是資料夾,所以點選右邊的“Add Tree”來新增整個目錄。如果選擇的是檔案,多個檔案就選擇“Add All”,單個檔案就選擇“Add”
新增時會給出對話方塊,表示正在新增。筆者新增的原始碼目錄有4G以上,所以這時需要等待好幾分鐘的時間。
新增完成以後,可以看到對話方塊提示,點選“確定”即可,此時可以繼續新增專案檔案。
4、完成專案建立
當不需要再新增檔案了,點選“Close”按鈕關閉該介面,即完成了專案的建立。此時顯示的介面如下,左下區域顯示的就是新建的專案,列表顯示了專案中檔案。
持續更新中......
參考資料: