2011-12-17 41 views
0

我有幾個初始化類,除了填充初始不變的數據結構,別的什麼也不做。在總共5個數據類約20萬線只是做這樣的事情:我的結構有效的方法來構造大型代碼片段

x = new Y(13); 
    xTmp.z.add(x); 
    allElements.add("just some text"); 

所以基本上初始化數組 - 這些基本上都是「常量」。

我想知道如何最好地構建項目,例如使用庫或做其他事情,以便項目的開發可以比總是編譯,鏈接和加載大型數據類到設備進行測試更有效地進行處理。

幸運的是,Eclipse的速度非常快,編譯時間不超過1分鐘(與xCode相比,它需要花費1,5個小時才能編譯)。不過,我確信有大型項目編寫經驗的專家會提供一些技巧和訣竅,以便如何最好地實現這一目標。

非常感謝!

回答

1

我不會硬編碼所有的數據。

爲所有數據定義文件格式,併爲其構建一個簡單的解析器(或更好地使用現有的結構化文件格式和驅動器)。當您更改初始數據時,沒有理由必須重新生成代碼。

將這些初始化文件與您的應用程序捆綁在一起(您甚至可以將裏面的jar文件作爲資源進行訪問)。

+0

所有這些數據都是機密的和加密的 - 恐怕一旦數據在文件中就會很容易被黑客入侵。任何類型的數據庫或文件結構可以使用適當的工具相對容易地打開和理解。這就是爲什麼我直接以這種方式將數據放入代碼中的原因。此外,這種方式啓動應用程序的時間非常短 - 在第一個屏幕出現之前所發生的一切並不明顯 - 而且這是在一個非常慢的設備上。 – user387184 2011-12-17 14:29:07

+0

是什麼讓你認爲把這些數據放在一個'.class'中使得它比純文本文件更容易被黑客入侵?如果你使用正確的配置文件格式,加載它可能比解析那些龐大的數據類更快。 – Mat 2011-12-17 14:47:38

+0

我期望即使是不同的數據/類區域,以及在編譯代碼中保存數據的變量內,也會比打開文件困難 - 而不是談論解密。但是,我不得不承認,我從來沒有試圖理解編譯的Java代碼。無論如何 - 什麼是一個很好的方法來分解一些大的代碼段? – user387184 2011-12-17 14:57:59