2009-12-20 38 views
0

由於移動設備的應用程序預計會很小且很簡單,因此通常會將大量計算卸載到Web服務中。使用J2ME進行移動應用程序編程時,OO是否相關?

  • 爲∞,之上的框架,如J2ME,相關的移動應用程序?

  • 對於客戶特定的定製而言,特定於應用程序的框架不是一種可避免的開銷,特別是當現有框架(J2ME)本身已經可用時。

  • 是否有任何J2ME框架可用,例如: Struts等?

+0

這個問題經常重新排列,看起來好像是 – Woot4Moo 2009-12-20 05:58:59

+0

我的歉意;直到Dav發佈,我意識到需要更多的工作。 – Everyone 2009-12-20 09:35:49

回答

3

面向對象編程本身並不意味着任何特定的開銷。這僅僅是一種方法。您可以創建使用OO設計方法的程序,這些方法仍然快速而簡單,就像您可以創建非OO程序一樣速度慢且易於使用。

+0

剛剛更新了我的問題與幾個後續步驟 – Everyone 2009-12-20 05:58:59

0

那麼J2ME是Java,因此是OO。你可以在OO域以程序的方式編寫代碼,但這不是現在的重點嗎?如果你不想做OO切換到Python。

+1

Python就像Java一樣,如果不是更多。 IIRC它沒有任何不是對象的原始數據類型,就像Java一樣。 – 2009-12-20 05:41:53

+0

python也是一種腳本語言。由於他決定提到J2ME,我認爲這將是一個公平的比較。由於Java是編譯Python不是。 – Woot4Moo 2009-12-20 05:45:35

1

當然,使用OO(畢竟是Java),但是你必須更加小心一點,因爲J2ME的空間和內存是有限的。對類的明智使用是好的,但不要過度使用那些創建生成其他事物的工廠的類的東西,等等......這實際上是我喜歡J2ME的一些東西:你不能墮落與「建築宇航員」的東西。

0

正如Knuth先生所說,「不成熟的優化是萬惡之源」。同樣,僅僅因爲遇到一個新的平臺,在這種情況下,J2ME就沒有任何意義可以忘記如何編寫優秀的軟件並回到全球一切程序一切狂歡。

當然,使用你的大腦,不要做那些你不會在桌面上做的事情(例如,通過產生對象的craploads並忘記擺脫對它們的引用,或者同樣不好的東西,只是不加區分地產生大量物體)。工廠創建工廠的工廠可能不會像它聽起來那麼愚蠢,特別是如果你這樣做的原因是因爲它可以幫助你編寫大量的單元測試。 (是的,在J2ME上編寫單元測試!)

並回應大衛N.韋爾頓幾個答案,「架構宇航員」,或過度工程,並不一定發生,如果你去與好的舊迭代方法 - 不要讓事情變得更復雜,直到它顯着簡化你的生活。總結起來,我的感覺是,每個人都只是使用J2ME和Blackberry的「內存和空間限制」,將良好的感覺拋出窗外,編寫蹩腳的,不可導航的軟件。我向你保證,如果你按照迭代的方式進行測試並且經常測試你的應用程序,那麼當性能變得不理想並且在那個時候採取適當的措施時你會注意到。而機會是,性能問題將歸咎於你做了一些愚蠢的事情,而不是由於抽象。

免責聲明:如果您從1999年開始閱讀此文,那麼爲1KB mem或JavaCard編寫CLDC 1.0將忽略以上所有內容。不過如果你在今天的任何功能手機上運行,​​那麼你很幸運!

相關問題