對於Android應用程序開發,是否有必要引入第三方框架,比如一些第三方的MVC框架等等,大家怎麼看?


2012.7.27 更新

Android Query 項目實現了我之前所期待的大部分功能,親自實踐了一段時間後,現在推薦給大家:http://code.google.com/p/android-query/ 。

-----------------------------------------------------------------------------------------------------------------------------------------------

比起單純手機端的框架,我更期待的是某種整合了伺服器端與手機端的解決方案。比如可以在伺服器端實現 Model 和部分的 Controller,而在手機端則可以只是實現 View 。最終能夠達到如下效果:

  1. 避免顯式的在手機端與伺服器間進行通信,而是將遠程的計算資源直接暴露給本地應用。
  2. 隱藏數據的同步,Cache 管理等細節。
  3. 統一的 push 機制。

最後出來的效果非常類似於 Web Service,又和雲計算以及移動應用扯上了關係。(我真不是來炒概念的)

其實以上這些在 Android 系統中都有所體現了,只是至今沒有被統一起來,或者必須依賴於 Google 的服務而難以在實際應用中部署。因此期待第三方的社區或者公司能提供一整套的解決方案。


沒必要引入第三方框架,Android應用更像一個client,用來做數據展示而已。Android工程應該引入第三方Widget,提高數據展示效率跟效果,但是像IOS下的Three20這樣優秀的開源庫,在android太少了...


1 覺得方便就用

2 邊用邊深入

3 吃透之後再優化或擴展,最終擺脫依賴


android 的應用程序很多都是基於Web Service 給它提供數據的一個展示型的設備

它並不需要自己去處理大量的數據和邏輯,他就是一個View層


Android本身上層的架構就是一個很好的mvc框架,沒必要使用此類框架。如果必要的話apache的一些工具類庫倒是可以根據需要使用,但是常用的工具android本身也具備了。了解android系統的架構才是關鍵,個人意見。呵呵


MVC思想可借鑒,說到框架就感覺有點過度設計的味道了。框架是用來拆分複雜性,定義並限制了一些邊界,使得程序員不容易逾越。移動客戶端的對象往往不多,感覺不需要MVC的框架來幫忙。


樓主既然對Android MVC有興趣,你可以更進一步了解一下Martin Fowler的Presentation Model -Presentation Model。它是MVC模式的更新與更進一步。這個模式對包含UI的應用有深遠的影響。幾年前,我們開始了一個開源項目RoboBinding([url]http://robobinding.org[/url])。RoboBinding是一個實現Martin Fowler的Presentation Model構架模式(為MVC模式的更進一步)的Android框架。 目標為減少android應用開發工作量(可減少50%UI代碼量);促進清晰的項目結構;使項目代碼更易於測試(使大部分UI邏輯代碼可直接用JUnit測試)。在成熟的語言環境下都有對應的Presentation Model(MVVM/MVP微軟社區的叫法)實現框架如.Net的WPF與Silverlight,Java swing的JGoodies Binding。 我們在幾年前開始開發這個框架(我是項目的開發者之一)。現在類似的框架還有:Android-Binding, Bindroid,MvvmCross。RoboBinding是以Agile與Test driven development方式開發,注重代碼質量與可測試性,項目包含了300多個unit tests。有興趣的朋友可以了解一下。

這裡有介紹的中文視頻 - Android MVP MVVM Presentation Model模式與基於RoboBinding應用 (視頻質量太差) 或 https://www.youtube.com/watch?v=2sSBVaX77xA (視頻質量好)


MVC框架個人覺得建議使用,因為 android 的 應用程序框架層 很多都使用了MVC 模式


我覺得會產生更多的兼容性問題


我覺得從生產力角度來看,肯定要有符合自己團隊需要的框架,或者准框架。否則啥都從頭來,何處是競爭力啊?


我覺得,如果能做成webos, 可以進一布降低開發門檻,畢竟中國的大學還是能誕生很多做網頁的人才的,hehe


我想,我有了自己的答案!在沒有對某個/些框架足夠深入的前提下,刻意的去使用它們,確實會是個累贅,感覺總會絆手絆腳的,類比到開發語言,也一樣!


恩,我覺得挺好的啊,目前有比較成熟的框架嗎?之前看到了spring for android 不知道好不好用。


肯定需要。現在的成熟android應用使用自己的框架,否則維護升級、多項目開發是不可想像的。

第三方的框架似乎只有spring。


推薦閱讀:

為什麼都在說 Android 應用設計上不應該使用左上角的返回鍵,而很多 Android 應用卻還保留了這一設計?
Nexus 6 能和 iPhone 6 Plus 一較高下么?
Android 可以超越 iOS 嗎?
相比 iOS 設備,目前的 Android 設備,為什麼不夠出色?
美工要求Android使用iOS的切圖是什麼樣體驗?

TAG:Android應用 | Android開發 | Android應用創新 | Android | iOSvsAndroid |