高老师的ANDROID架构设计_新知识02 - 高煥堂.EIT

myEIT 2021-08-13 原文


高老师的<教父级>ANDROID架构设计_新知识02

抢鲜!! 高老师好礼相送,价值超过RMB4500元

高(煥堂)老师教您最正确、最扎实的: 

  • Android架构体系解析;
  • 在此体系上进行您自己的架构设计;
  • 设计出您系统的独特性和可用性。 

  

 

 歡迎試聽:高老師的100小時”教父級”線上課程<<Android从程序员到架构师之路>>

             (包括上层App、中层JNI&系统服务、底层HAL驱动架构设计) 

 目錄內容:先看目錄內容 

              (高老师37年的代码和架构设计功力,菁华尽在其中)

 完整講義:这里免费下载,抢鲜阅读

 —- 凡购买此课程的学员,高老师立即赠送好礼(价值超过4500元),而且让,而且让你飞上枝头变凤凰,身价百倍!! 

—–☆ 請赶快看好礼内容==> 立即成为尊贵的ADT会员 

 

ee                                                                                                                        ee

學習地圖:看待Android架构的十个重要视角

1. API = 话语权

API与UI不同

UI是App与用户的交互接口

API则泛指软件模块间的接口,可分为:

  • SI:本架构与外部系统之间的接口
  • PI:本架构与内部挿件(Plug-in)之间的接口
  • 一般API:本架构与应用程序(App)之间的接口

掌握API定义权,就拥有话语权

2. 应用框架 = 用来框住应用(App)的架构

☆ 框架的基本组成元素:EIT代码造形(Form)

 EIT造形的<I>就是API

 框架是鱼饵,API是鱼钩

☆ 鱼饵是送人的礼物;送越多,拥有市场版图越大

3.  框架(平台)调用App,不是App调用框架

☆ 用户并非直接碰触软件(App)

 App在软件架构里,其地位是最低的

☆ 例如,从移动终端发信息给云平台时,云端的IaaS层先接到信息;然后才(调用PaaS服务)来将信息往上送;再调用SaaS层服务来将信息送上去

4. 从<C/S API>到<端/云API>

 API是分工的界线

 过去,Client与Server是由不同团队分工开发的                         

 今天,谷歌、Facebook、微信等,改变了API、改变了分工,如下图所示。

 这称为跨<云&端>强龙企业

5. 架构师做<分>的决策,开发者做<合>的任务

 肯德基餐厅的厨师做:庖丁(分)解鸡

 肯德基柜台人员则做:组(合)出全鸡、半鸡等套餐

 分得妙、就合得快

 分:无之以为用;合:有之以为利

 因<分>而得接口(Interface),依据接口而快速组<合>

6. <分>的时间点:买主来到之刻

☆ 平台(Platform)设计者,必须重视买主,而不是用户     

☆ 买主来到之前,先做分(即无之)

 买主来了之刻,才做合(即有之)

7. 没钱就改版,改版就有钱

 拥有平台(Platform)者,常采取分层(Layered)架构,适合理的

 过去,上层模快(开发者),常常要求下层必须稳定不变

 今天,上层模块不能要求底层的稳定不变,而是要处处维护底层变动的自由度;这样才能实现:没钱就改版(底层),改版就有钱

8. 如何跨(别人的软件)平台

 除了大家熟悉的HTML5/JS途径之外,还有没有其它跨平台的模式呢?

 目前的软件平台大多采框架(Framework)来提供API

☆ 于是,我们的跨平台策略是:协天子以令诸侯     

 这将别人(平台)的API,改变成为自己的API,掌握了API就有话语权

9. 软件平台 + 通信网络平台

 软件平台与通信网络平台是两的层级

 网络平台是以电信网络为中心,后端(云端)和终端各挂在网络的两端;两者都是网络平台的插件

 软件平台则想办法让网络被包容起来,反过来让网络成为软件平台的插件;这是为什么三网融合可能帮三个软件平台抬轿的原故

 这种架构设计的关键思维是:不能将软件切分为端与云两块,且当成网络平台的插件

 软件平台就像集装箱(Container),将复杂的通信网络、硬件接口、内容格式等包装起来,呈现出简单外形,让人们感到这些事物的可爱、好玩好摸好抱。并没有删除外在事物(如冰箱等)的复杂。而只消除人们心中的复杂感觉,达到简化目的。

 例如,Google公司的软件平台(含Android)正好横跨&控制整个互联网

 软件平台控制网络平台,而不是将软件切分为两块,分别挂在网络平台的两端:终端与云端。

10. 项目管理:搭配敏捷(Agile)或RUP的跌代(Iteration)过程

 架构的一生:架构的主人是愿景(Vision),架构的生母是问题(Problem),架构的养母是现实(Reality or Constraint),架构的养份是设计师的创意(Creativity),架构的外貌是代码(Code),架构的情人是需求(Requirement),架构的岁月是迭代(Iteration)

  

ee                                                                                          ee

輔助學習資源(免費): 

1. 歡迎下載高老师《Android软硬结合&架构设计》共9本E-Books(免费完整版)

2. 高煥堂免費視頻課程:<<Android框架的設計招式(模式)之美>> 

       請聽講視頻播放(麥可網)      — 請下載:講義(PDF) 

3. 高煥堂免費視頻課程:<<Android框架的OOP技術>>(面向對象技術) 

       請聽講視頻播放(麥可網)      — 請下載:講義(PDF) 

 

ee   Link-01              Link-03                                               ee 

 

EE       $$  相關課程  $$                                                                                           HH

 

 

发表于
2013-12-24 17:07 
高煥堂.EIT 
阅读(557
评论(0
编辑 
收藏 
举报

 

版权声明:本文为myEIT原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/myEIT/articles/3489379.html

高老师的ANDROID架构设计_新知识02 - 高煥堂.EIT的更多相关文章

  1. 京东/淘宝的手机销售榜(前4名 — 手机品牌 –手机型号*3 –手机分辨率 — 手机操作系统 –安卓版本号)(android / IOS)

    此文转载自:https://blog.csdn.net/weixin_45819693/article/det […]...

  2. 第十三章——卷积神经网络(CNN) – royhoo

    第十三章——卷积神经网络(CNN) 本文介绍了卷积神经网络CNN的来源,CNN的不同模块(卷积层、池化层),以 […]...

  3. Spring Boot 2.x监控数据可视化(Actuator + Prometheus + Grafana手把手)

    TIPS 本文基于Spring Boot 2.1.4,理论支持Spring Boot 2.x所有版本 众所周知 […]...

  4. Nginx + uWSGI + Python + Django构建必应高清壁纸站

    写在前面 做这个网站的初衷是因为,每次打开必应搜索搜东西的时候都会被上面的背景图片吸引,我想必应的壁纸应该是经 […]...

  5. SIFT定位算法关键步骤的说明 – ☆Ronny丶

    SIFT定位算法关键步骤的说明 2014-10-20 09:11  ☆Ronny丶  阅读(33069)  评 […]...

  6. 剖析Unreal Engine超真实人类的渲染技术Part 2 – 眼球渲染

    目录 三、眼球渲染 3.1 眼球的构造及理论 3.1.1 眼球的构造 3.1.2 眼球的渲染理论 3.2 眼球 […]...

  7. python接口自动化测试 – configparser配置文件解析器详细使用

    configparser简介 ConfigParser模块已在Python 3中重命名为configparse […]...

  8. 让UI设计师崩溃的瞬间,你经历过哪些? – jongde

    让UI设计师崩溃的瞬间,你经历过哪些? 隔行如隔山,这句话人人耳熟能详,但其实隔行并不可怕,大家各谋其事,各尽 […]...

随机推荐

  1. HTML(5) 代码规范

    HTML 代码约定很多 Web 开发人员对 HTML 的代码规范知之甚少。在2000年至2010年,许多Web开发人员从 HTML 转换到 XHTML。使用 XHTML 开发人员逐渐养成了比较好的 HTML 编写规范。而针对于 H...

  2. 大数据组件——nova

    p.p1 { margin: 0; font: 12px “.PingFang SC” […]...

  3. (转)C# 正则表达式

      最近写爬虫时需要用到正则表达式,有段时间没有使用正则表达式现在渐渐感觉有些淡忘,现在使用还需要去查询一些资 […]...

  4. mongodb用mongoose查库的对象,不能增加属性

    node + koa2 + mongodb 写了一个给前端的接口 如果不是写这个接口,这辈子都发现不了mong […]...

  5. reactos操作系统实现(164)

    继续前面的分析,上次说到需要调用函数co_WinPosShowWindow来显示窗口,那么这个函数里怎么样实现 […]...

  6. 如何给手机网站封壳快速打包封装成APP?

    如果你一个手机站,想给网站加个壳,封装成一个APP。打开显示的还是网站,就是多了启动页面,可以的话能在加上加载 […]...

  7. Python turtle安装和使用教程 – 阿炳1

    Python turtle安装和使用教程 1 安装turtle Python2安装命令: pip instal […]...

  8. java面试题《三、网络编程》

    1.网络协议是什么? 按照规则交换数据,例如数据的格式、是否需要发送一个应答信息,这些规则被称为网络协议。 2 […]...

展开目录

目录导航