教程名稱:
xa0 xa0 xa0 xa0BAT大廠APP架構演進實踐與優化之路 還原最真實的架構演進優化過程
教程內容:
xa0 xa0 教程針對不同水平的學員提供了不一樣的上車方式。剛入門或者初級的學員來說重點在于架構基礎概念的掌握例如OKHttp、LBS、SVG、RxJAVA已經MVP結構的方式以及常用的幾種開發模式。基礎稍微扎實一點的除了基礎架構知識的掌握之外就需要開始著手考慮架構的設計以及技術的選型在這些大牛的身上將這些思想性的東西學習過來并在將來的開發中運用起來。因為這種架構思想是不限于技術的無論你是學習哪門語言的學員。架構思想和大企業的項目流程規范性都是通用的。課程主要面向安卓想學習架構設計優化的開發人員。
教程目錄:
1.打車課程項目整體介紹
課程介紹:介紹課程內容、教授方式,講訴打車業務的整體架構思路;針對打車業務如何進行需求分析和工作量化評估,同時根據工作量化提出課程內容章節計劃。
2.需求分析和工作量化
講解(在BAT大廠中)前后端 API 、文檔維護方法、平臺。
3.項目規范與團隊協作
分享在BAT大廠中、項目支持是如何維護、保證代碼質量的。然后實踐,建立滴滴打車項目的代碼規范、約定。
4.啟動過渡頁面開發
講解 SVG 動畫的制作,SVG 制作滴滴 logo 動畫,啟動頁的設計
5.OkHttp 3.x 的使用
對比HttpClient,URLConnection,OkHttp 三大網絡庫優缺點,講解 OkHttp 3.0 的使用。學員需具備 Http 網絡協議基礎知識。
6.基礎網絡模塊—架構實現及OkHttp封裝
Http模塊的架構實現解析,講解如何封裝 OkHttp 庫,測試Http模塊等等
7.賬戶注冊登錄模塊—架構設計與開發實現
用戶、注冊、登錄模塊需求分析,注冊(下發驗證碼,校驗驗證碼),用戶是否存在,登錄流程解析,以及狀態判斷,Token自動登錄,講解登錄模塊的設計思路和實現,并使用無分層架構的實現
8.MVP架構模式介紹以及優化實現
分層架構模式-MVP 介紹,MVP 接口定義,MVP 解耦優化登錄模塊,MVP 架構下的單元測試。講解 Android App 業務層次解耦原理,并運用 MVP 架構模式,優化帳號登錄模塊
9.RxJava的使用以及RxJava封裝優化MVP
講解 RxJava 的使用,講解如何封裝 RxJava ,讓 MVP 解耦和更干凈
10.高德地圖SDK的接入
介紹高德 LBS 的接入,和相關用法,在地圖中顯示我的位置,位置藍點/點標記。打車業務LBS模塊的架構設計, 獲取用戶當前位置和方向,并上報位置
11.LBS地圖定位模塊—架構設計實現和封裝
地圖定位分層解耦。地圖定位模塊業務具有共通性,LBS 隨時可能更換地圖SDK,甚至滴滴不同的版本有使用高德的、也有使用騰訊的,如何滿足最小成本的切換?講解地圖定位模塊的封裝和抽象。
12.打車核心業務—附近的司機
講解消息推送機制,bmob 推送的接入,結合消息推送,獲取附近的司機,實現推送更新附近的司機位置信息
13.打車核心業務—起點終點及呼叫司機下單
起點終點路徑繪制,地圖定位及poi功能的使用,呼叫司機,下單業務的實現
14.打車核心業務—接單以及接送過程相關
司機接單,司機到用戶接送過程,取消訂單。訂單模塊的整體架構分析和實現,打車核心業務,地圖導航。
15.訂單列表及支付狀態模塊—架構設計與實現
講解支付體系的通用流程,講解用戶訂單列表設計和實現。
16.整體項目總結
項目整體架構圖(模塊、分層),技術選型評估,滴滴核心業務(前后端整體架構)。總結該系列課程的核心技術點、App 架構開發的通用流程、方法。