Android基础架构从零开始开篇

作者: 热血沸腾 | 来源:发表于2017-03-16 09:35 被阅读241次

前言

很多工程师做开发3年甚至5年,到现在都无法自己写出架构代码。归根原因是 

1. 架构基础知识匮乏  

 2. 没有意识停下来思考

我们习惯了搜索引擎带来的便利。工作流程大概是这样的:产品原型需求文档拿到手里,首先根据功能划分模块逐个分析。例如增加了推送模块,多任务下载模块。开始根据业务分析总结出这个功能的特点一二三 -----> 开始搜索  搜索到相似度差不多的Demo,开始植入项目内改造。这种工作方式在我看来有了起点,但没有终点。终点是通过这个模块的开发,最后你学到了什么思想,学到了该语言(Android)有什么样的特性,原来可以这么去实现。尤为重要的一点是总结、提炼出最少的代码,自己做成一个库(jar) 等下次遇到类似功能,直接拿来改造。这样的好处是,你完全了解自己写的代码,自己构建的库,出了问题判断迅速,项目的依赖不会滥用(有的朋友接二手项目,里面的图片库竟然多达3个,重复jar多达7个)。另外特别有利于自己判断比较新的类似jar的优缺点,比如依赖注入框架,11年到17年,我相信每年都或多或少有新的知识出现,那么你不清楚自己手里的jar优缺点,如何去判断新的是否更合适,值得去花费时间学习,花费时间去改造到项目内去,去承担带来的风险。

何为良好的架构? The Clean Architecture 提出

框架独立性          架构尽量不依赖除该语言之外的API库

每层可独立测试   下层完全不知道上层的存在,每一层可单独测试

写架构时时刻告诫自己遵循这俩点,就可以完全写一个设计优美的架构,以上俩点从根本上满足了架构的容易拓展,维护,模块独立,易于测试等特性。并且在一个项目迭代开发过程中,根据需求,不断的调整。来配合自己的项目。

常见架构

MVC  MVP MVVM

MVC是经典的设计思想,不同语言的内在限制,导致了结构划分不清晰,职责不明确,代码耦合性高,内聚低。所以MVC衍生出MVP、MVVM。这三种设计不做过多的讨论,大家想必多少有了解

架构技术手段

以Java为例,写架构的人基本功一定没问题的有,反射,泛型,面向接口编程,各种设计模式,这一类人统称为架构师。所以接下来,以该文为开篇,我会逐个去实例讲解这些技术手段。

相关文章

  • Android基础架构从零开始开篇

    前言 很多工程师做开发3年甚至5年,到现在都无法自己写出架构代码。归根原因是 1. 架构基础知识匮乏 2. 没有...

  • Android源码分析 - Binder概述

    开篇 本篇无源码分析,只对Binder做通信过程和基础架构的介绍 Binder是Android中最重要的一种进程间...

  • Android 面试

    Android 基础 Android 系统架构安卓系统架构 Applications:应用程序 Applicati...

  • MVP

    Google官方MVP+Dagger2架构详解【从零开始搭建android框架系列(6)】 Android MVP...

  • Android系统架构开篇

    一、引言 本文作为Android系统架构的开篇,起到提纲挈领的作用,从系统整体架构角度概要讲解Android系统的...

  • Android架构层次

    1 引言 本文作为Android系统架构的开篇,起到提纲挈领的作用,从系统整体架构角度概要讲解Android系统的...

  • Android基础

    Android基础 Android系统架构 JVM和DVM的不同 区别 基于的架构不同。jvm 基于栈架构,栈是位...

  • 进程篇—进程整理

    整理Android手机,核心进程和线程情况 一、概括 系统启动架构图: 上图在Android系统-开篇[http:...

  • Android深水区:Android系统启动

    Android深水区:Android系统启动 开篇 对于Android系统,有一张大家都见过的系统架构图 我们平时...

  • 运营体系【入门】第8讲:思维可视化

    开篇: 基础功能: 基础操作: 快捷键: 常见逻辑架构: 可以做什么: 案例: 注意事项: 下载地址:

网友评论

    本文标题:Android基础架构从零开始开篇

    本文链接:https://www.haomeiwen.com/subject/koqmwttx.html