App下載

百度Android開發(fā)程序員兩輪面試部分答案

猿友 2017-10-19 19:09:21 瀏覽數(shù) (5608)
反饋

百度 Android 開發(fā)程序員兩輪面試之第一輪部分問題答案:


1、MVP 模式的優(yōu)缺點?


MVP 模式優(yōu)點:

  1. 降低耦合度
  2. 模塊職責(zé)劃分明顯
  3. 利于測試驅(qū)動開發(fā)
  4. 代碼復(fù)用
  5. 隱藏數(shù)據(jù)
  6. 代碼靈活性

MVP模式缺點:

由于對視圖的渲染放在了 Presenter 中,所以視圖和 Presenter 的交互會過于頻繁。還有一點需要明白,如果 Presenter 過多地渲染了視圖,往往會使得它與特定的視圖的聯(lián)系過于緊密。一旦視圖需要變更,那么 Presenter 也需要變更了


2、怎么讓在啟動一個 Activity 是就啟動一個 service?


首先定義好一個 service,然后在 activity 的 onCreate 里面進行連接并 bindservice 或者直接 startService。


3、說說 Activity,Intent,Service 是什么關(guān)系 ?


一個 Activity 通常是一個單獨的屏幕,每一個 Activity 都被實現(xiàn)為一個單獨的類,這些類都是從 Activity 基類中繼承來的,Activity 類會顯示由視圖控件組成的用戶接口,并對視圖控 件的事件做出響應(yīng)。

  • Intent 的調(diào)用是用來進行架構(gòu)屏幕之間的切換的。
  • Intent 是描述應(yīng)用想要做什么。
  • Intent 數(shù)據(jù)結(jié)構(gòu)中兩個最重要的部分是動作和動作 對應(yīng)的數(shù)據(jù),一個動作對應(yīng)一個動作數(shù)據(jù)。

Android Service 是運行在后臺的代碼,不能與用戶交互,可以運行在自己的進程,也可以 運行在其他應(yīng)用程序進程的上下文里。需要通過某一個 Activity 或者其他 Context 對象來調(diào) 用。

Activity 跳轉(zhuǎn)到 Activity,Activity 啟動 Service,Service 打開 Activity。都需要 Intent 表明跳轉(zhuǎn) 的意圖,以及傳遞參數(shù),Intent 是這些組件間信號傳遞的承載者。


0 人點贊