無邊界程序設計理念這個提法來自于這里。
“Android的應用只是一個虛的概念,并沒有實際的入口,這個不像Window平臺上的應用程序的概念,Android更多的是提供組件(Components)的概念。突出請求和服務,突出組件個體,弱化邊界,系統的各個組件可以自由的無邊界的交流,服務請求者直接發出請求,不論這個對象在何處和屬于誰的,組件是自由獨立的個體,一個應用程序可以直接請求使用其他的應用的的組件,這個是Android應用框架設計的核心理念,其他的一切都是在為這個核心理念服務。”
“讓程序員忽略應用的概念,甚至徹底的拋棄進程這樣的概念,程序員看到的就是一個一個的組件,應用程序員利用這些組件來架構成一個所謂的應用,那么設計者首先要考慮的是什么呢?我想應該是一個抽象的應用模型,在這個模型下產生概念和接口。”
“Android中你可以開始一個Activity,但是沒有權利消滅一個Activity,這是個體權利的體現,個體的消滅是由系統決定的,這個就是Android中Activity蘊含的人文意義。”
這段總結說的非常好,從我近期對Android開發的一些基本了解來看,也確實是這樣。在Android平臺下開發,你不需要從頭開始構建一個應用,你可以使用系統提供好的一些功能,或者是別人的應用程序中已實現的部分功能,拿來組裝自己的應用,當然,你做好的應用也可以把部分功能暴露給別人來使用。具體說來,就是Activity與Intent的使用。
基于這樣一種模式,Android開發更像是堆積木,當然,這是理想狀態下的。Google最近不是就推出了一款通過web上的組件拖拽就能生成一個自定義的應用程序的工具么,當然,我只看了下介紹,還沒有機會親自體驗,不過,這終將是未來的趨勢。
當然,這對于開發人員來說是好事,你可以更加快速的把自己的想法變成現實,你不用親力親為的去做每一件細小的事情。
對于手機使用者來說,這同樣是好事。使用統一的Activity構建出來的應用,不論是外觀還是使用方式上都是完全統一的,用戶拿到一個新應用時基本上不會有太大的使用方面的成本。
而對于Google來說,這當然也是好事。Google可以把他的云計算服務都做成一個個的組件,應用開發者們可以隨意組合上自己的應用中,這對于Google推廣自己的服務將會是一件非常有益的事。
當然,目前來說,組件的提供還并不算完美,現在來開發一個應用,還是需要自己做很多工作,僅有少部分服務可以直接調用Google提供的Intent,而調用別人的Activity很難得到保證,比如對別人的應用的依賴,比如接口的保證,等等。另外,目前各手機廠商在定制Android時都提供了自己的UI sence,而各家也都不一樣,再加上Android原生的,這也使得UI的統一越發的難,不知道未來將會如何處理。