多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Android面試經驗總結

Android面試經驗總結

來源:程序員人生   發布時間:2016-07-02 13:00:07 閱讀次數:3592次

摘要

“基礎 Android 知識掌握的不錯,學習能力也不錯。但是基礎知識部份比較薄弱,有些概念和邏輯掌握不清。” 感謝春林的這句話。

  • MVC,MVP 和 MVVM
  • 架構的定義
  • Volley相干
    • Volley的磁盤緩存
    • Volley緩存命中率的優化
    • Volley緩存文件名的計算
  • 推送心跳包是TCP包還是UDP包或HTTP包
  • ARGB_8888占用內存大小
  • Activity中類似onCreate、onStart應用了哪一種設計模式,優點是甚么
  • HashMap的底層實現
  • Atomic、volatile、synchronized區分
  • 其他

MVC,MVP 和 MVVM

  • MVC 通訊方式,環形方式:
    1、View 傳送指令到 Controller
    2、Controller 起到不同層面間的組織作用,用于控制利用程序的流程。它處理事件并作出響應。“事件”包括用戶的行動和數據 Model 上的改變。
    3、Model 將新的數據發送到 View,用戶得到反饋
    所有通訊都是單向的。
    開源實驗室:圖1
  • MVP 通訊方式:
    1、各部份之間的通訊,都是雙向的。
    2、View 與 Model 不產生聯系,都通過 Presenter 傳遞。
    3、View 非常薄,不部署任何業務邏輯,稱為”被動視圖”(Passive View),即沒有任何主動性,而 Presenter非常厚,所有邏輯都部署在那里。
    開源實驗室:圖2
  • MVVM 模式是 MVP 的升級:
    基本上與 MVP 模式完全1致。唯1的區分是,它采取雙向綁定:View的變動,自動反應在 ViewModel,反之亦然。
    開源實驗室:圖3
    (以上內容取自:http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mvvm.html)

我們針對業務模型,建立的數據結構和相干的類,就能夠理解為AndroidApp 的 Model,Model 是與 View 無關,而與業務相干的,例如數據庫讀取數據,應當是屬于model層的事情。(感謝@Xander的講授)
我的料想:

至于為何我們通常直接去在 Activity 中去寫數據庫數據讀取,我的料想是由于簡單。試想,如果是為了規范,首先定義1個getDataFromDB()的接口,再寫個類實現getDataFromDB()方法,以后如果改了要求數據所用的方法,直接改寫實現類,聽起來確切不錯,可是僅僅是為了從數據庫讀點數據,額外添加了最少兩個類文件真的成心義嗎。
固然網絡要求,是屬于業務邏輯層C層。

MVP中 Presenter 真正需要處理的并不是業務邏輯,而應當是視圖邏輯。業務邏輯應當是視圖無關的,可以是單獨的1個類中,也能夠是在P中。
P與V是1對多關系
EventBus應當作用于P層,在P層發送,在P層接收。

MVVM中,M層改變其實不是直接改變V層,而是通過VM層去改變V層。M與V照舊是不直接操作的。

相干介紹:http://www.tianmaying.com/tutorial/AndroidMVC

架構的定義

有關軟件整體結構與組件的抽象描寫,用于指點大型軟件系統各個方面的設計。
總結1下,就是1全部軟件工程項目中的骨架,是1種宏觀的計劃。

Volley相干

Volley的磁盤緩存

面試的時候,聊到 Volley 要求到網絡的數據緩存。當時說到是 Volley 會將每次通過網絡要求到的數據,采取FileOutputStream,寫入到本地的文件中。

那末問題來了:這個緩存文件,是聲明在1個SD卡文件夾中的(也能夠是getCacheFile())。如果不停的要求網絡數據,這個緩存文件夾將無窮制的增大,終究到達SD卡容量時,會產生沒法寫入的異常(由于存儲空間滿了)。

這個問題的確之前沒有想到,當時也沒說出怎樣回事。回家了趕快又看了看代碼才知道,原來 Volley 斟酌過這個問題(汗!想一想也是)
翻看代碼DiskBasedCache#pruneIfNeeded()

Java
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久999精品 | 亚洲欧洲日产国码二区首页 | 五月天中文网 | 欧美多人性受xxxx喷水 | 亚洲午夜精品久久久久久成年 | 日本护士做xxxxxhd | 国产一级毛片欧美视频 | 国产一区二区三区不卡观 | 波多野结衣免费视频观看 | 欧美极品xxx | 久久久毛片免费全部播放 | 久久久国产99久久国产一 | 波多野结衣在线视频播放 | 酒色成人网 | 国内一区二区三区精品视频 | 在线看h| 琪琪jav | 亚洲成人一级片 | 看全色黄大色大片免费久久久 | 最新国产在线观看福利 | 在线亚洲网站 | 国产一二三区视频 | 国产精品vs欧美精品 | 精品国产午夜久久久久九九 | 操人的网站 | 免费爱爱网站 | 亚洲视屏在线观看 | 国产免费久久精品44 | 日韩欧美中文字幕出 | 久久久久国产精品免费 | 免费一级毛片一级毛片aa | 精品欧美一区二区三区 | 曰本裸色私人影院噜噜噜影院 | 中文天堂最新版在线精品 | 国产日韩一区二区三区在线观看 | 午色 | 亚洲精品乱码久久久久久v 亚洲精品乱码久久久久久蜜桃 | 成人免费久久精品国产片久久影院 | 校园春色自拍偷拍 | 欧美性狂丰满性猛交 | 国产区精品一区二区不卡中文 |