2011-04-11 24 views
23

我目前的項目變得非常龐大。我有幾十個活動,適配器,碎片,佈局xmls和其他資源。關於組織大型Android項目的提示?

在我的(較小的)以前的項目中,我組織了1包/ 1類別樣式的東西。所以我有com.stuff.xy.adapter,com.stuff.xy.activity等等。現在這些包包含太多的項目,我發現自己在包層次結構中搜索特定的類時會浪費大量時間。我使用Eclipse,並且可以使用一些捷徑(去類定義,例如),但這些往往是情境(我不能用它來快速跳轉到佈局定義xml)。

您能否分享一些有效組織大型項目的技巧?或者一些插件可能嗎? ( - 適配器,佈局,活動和片段代碼 - 它可能如果我能集團一起,與特定應用程序的屏幕處理的源文件有助於例如這樣我就可以快速打開它們)

編輯:多月開發大型後項目

首先,我嘗試使用Eclipse的工作集。它並沒有真正爲我削減,我的問題是我們的單個Android項目太龐大,包含許多資源,類,接口等。在單個項目環境中混淆工作集只需花費太多時間,我認爲它們主要用於在單個工作區中組織項目。

從長遠來看,我們將我們龐大的單個項目分成許多較小的android-library項目和一個依賴所有這些較小項目的「主應用程序」項目。通過這種方式,我們可以在這些庫項目之間分割資源(當然,還有許多佈局,值,樣式僅用於應用程序中的某些部分)和代碼。我還創建了一個Base庫,所有其他庫都依賴於此庫,並且包含應用程序的每個部分都需要的資源和(基本)類。

+0

請勿將每個屏幕的來源分組。你會遇到問題,你不能組織你多次使用的類,你可能會停下來重新使用代碼 – WarrenFaith 2011-04-11 15:21:14

+0

我認爲大型項目的最大代價是增加編譯和打包時間。如果每次我們必須等待半分鐘或更長時間,那麼看到我們的設備出現在我們應用程序的第一個窗口,這對開發來說是無聊的。那麼對於你的編輯方法,它是否大大提高了編譯時間? – VinceStyling 2015-05-26 03:57:21

回答

11

在Eclipse中,您可以使用Working Sets在Project Explorer視圖中過濾源文件/佈局/資源文件。這比包更強大,因爲它可以在所有文件上運行,包括佈局和圖像資源,而不僅僅是Java源文件。

例如,你可以創建一個家庭工作組包含HomeActivity.java,HomeAdapter.java,RES /佈局/ home.xml,RES /繪製/ home_icon.png等

+0

是的,這個肯定有幫助!我希望我只能將整個項目與工作集合在一起。但是將項目資源分組在一起會更好! – 2011-04-11 15:44:20

+0

非常好:-)良好的加法 – 2011-04-11 16:42:30

+0

嘗試它,好一個! – 2013-08-27 14:07:12

5

也許提示:快速去申報在Eclipse

按住Ctrl鍵徘徊類或方法。 1秒後,您將獲得一個彈出窗口,其中包含開放聲明/開放實施。

在大型項目中非常有用。

對於其他我建議只是使其直觀並對包中的所有活動以及所有計算

+1

跳轉到聲明的另一種有用方法:將光標移動到類或方法名稱的某處,然後按** F3 ** – derekerdmann 2011-08-10 14:10:05

7

只是另一個提示。

使用按Ctrl-Shift-R鍵迅速打開資源(你會得到一個自動完成下拉)和按Ctrl-Shift-T鍵快速打開一個Java類。該列表還將使用最近打開的文件自動填充。

+0

我一直使用它們,當包裝太多時verrrry會有幫助;) – 2013-04-26 15:39:23

18

對於所有我的Android項目中,我更喜歡在下面的結構來區分代碼:

com.company.projectname是應用程序的軟件包。 標的包:

model - 我所有的業務對象

logic - 服務和對象實現業務邏輯

screens - 該項目的所有活動。如果活動需要適配器等,那麼每個活動都放置在屏幕包下的單獨包中,並將相關的東西放置到同一個項目中。

tools - 包含Utility類。 SettingsUtil等。

在包的根目錄下,我通常有Constants.java接口和常量。

+0

非常感謝您! @Vladimir請你認爲你可以幫我在這裏http://goo.gl/MAjgTh ?? – eddy 2014-09-20 04:23:49

2

的關心「我無法使用它快速跳轉到佈局定義xml「,您可以單擊佈局xml的名稱,然後按Ctrl + Shift + R將引導您進入該定義頁面。