首页 > 其他分享 >做Android开发必须要掌握哪些架构上的知识?

做Android开发必须要掌握哪些架构上的知识?

时间:2023-12-04 18:02:06浏览次数:26  
标签:MVP 架构 框架 哪些 Jetpack MVC Android

前言

谈到架构,在座的很多Android大佬想到的一定是MVC、MVP、MVVM这几个词,然后对比一下它们的优缺点,接下来就是站队的时间了。常常写MVC,偶然见到了MVP,真香。而写久了MVP,又听说了MVVM,又是真香~

做Android开发必须要掌握哪些架构上的知识?_MVC

“真香”定律在架构这里真是被用得淋漓尽致,此外还要喜新厌旧一番,使用MVVM的鄙视使用MVP的,使用MVP的又鄙视使用MVC的。

架构,就在这样的鄙视链下,“螺旋”发展,让我们看一看这些年架构是如何进化进化再进化的吧!

架构是什么

其实对于架构,以前我也是一知半解,但工作了这些年,加上读了许多关于架构相关的文章,结合实际项目经历,有了自己的一些理解。

关于架构的概念,我们可以顾名思义的去看,架构=架+构,也就是在一个整体架子上和各个组件之间的组合结构。

架构离我们并不远,反而在我们的实际开发中无处不在,它是一个很笼统的概念,上至框架选型,组件化等,下至业务代码,设计模式都能称为架构的一部分。

对于架构学习而言,我觉得首先得对面向对象(抽象,继承,多态等)及设计原则有一定的理解,进而结合 Android 常用的一些架构如MVVM, MVP, MVI等思想,基础与理论理解清楚了,架构就在日常的开发中,多思考,多结合理论与实际,一点一点地积累起来了。

对于很多新入行的程序员来说,这部分人碰到垃圾代码很多都会想着去重构,但android开发的老油子们 早就知道别人写的能运行的代码千万不要去动(doge)。

做Android开发必须要掌握哪些架构上的知识?_MVC_02

架构不是一蹴而就的,能够从自己写的代码中找到架构的成就感是非常爽的! 如果各位对于架构有迷茫不知从何学起的或者刚入行想要从头开始学习架构,大家可以看看参考一下我整理的这份 《Android架构开发手册》。

有需要的小伙伴,可以点击下方课程链接详细了解!!!

https://edu.51cto.com/course/32703.html

第一章. Android Jetpack实战和教程

  1. 即学即用Android Jetpack - Navigation
  2. 即学即用Android Jetpack - Data Binding
  3. 即学即用Android Jetpack - ViewModel & LiveData
  4. 即学即用Android Jetpack - Room
  5. 即学即用Android Jetpack - Paging
  6. 即学即用Android Jetpack - WorkManger
  7. 即学即用Android Jetpack - Paging 3

做Android开发必须要掌握哪些架构上的知识?_MVVM_03

第二章. MVC/MVP/MVVM

  1. MVC框架-导言即学即用Android Jetpack - Data Binding
  2. MVC框架-ASP.NET窗体
  3. MVC框架-第一应用程序
  4. MVC框架-文件夹
  5. MVC框架-模型
  6. MVC框架-控制器
  7. MVC框架-视图
  8. MVC框架-布局
  9. MVC框架-路由引擎
  10. MVC框架-动作过滤器
  11. MVC框架-高级示例
  12. MVC框架-Ajax支持
  13. MVC框架-捆绑
  14. MVC框架-异常处理
  15. MVP架构设计:Google官方MVP思想解读
  16. 开源MVP框架
  17. MVC、MVP、MVVM,到底该怎么选?

做Android开发必须要掌握哪些架构上的知识?_Android_04

第三章. 大厂架构演进之路

  1. 抖音 iOS 工程架构演进MVC框架-ASP.NET窗体
  2. 美团外卖 Android 平台化架构演进实践
  3. 安居客 Android 项目架构演进
  4. 携程 Android App 插件化和动态加载实践
  5. 微信Android客户端架构演进之路
  6. 千万级用户的 Android 客户端是如何养成的 | 架构师实践日
  7. 手机淘宝构架演化实践
  8. 英语流利说 Android 架构演进

做Android开发必须要掌握哪些架构上的知识?_MVVM_05

有需要的小伙伴,可以点击下方课程链接详细了解!!!

https://edu.51cto.com/course/32703.html

标签:MVP,架构,框架,哪些,Jetpack,MVC,Android
From: https://blog.51cto.com/u_16163453/8680594

相关文章

  • Android 9.0 app全屏通过系统属性控制手势上滑是否显示虚拟导航栏和状态栏
    1.前言在9.0的系统rom产品定制化os开发中,在系统设置app的全屏后,默认会隐藏导航栏和状态栏,页面全屏显示的时候,然后底部上滑会显示虚拟状态栏和导航栏显示几秒钟后会自动消失,由于项目开发需要要求通过api来控制全屏时上滑是否显示虚拟导航栏和状态栏,这就要从上滑事件分析看如何显......
  • 3.计算机硬件和基础架构
    现在的计算机和移动设备都遵循冯诺依曼架构冯诺依曼架构:输入设备:键盘,鼠标,触屏(CPU)运算器+控制器:运算器:负责运算控制器:负责控制语句(顺序,循环,条件)输出设备:显示屏,打印机内部存储器:内存条外部存储器:硬......
  • 大型网络游戏任务系统的架构与设计
    在网路游戏中做任务已经成为游戏很重要的一个核心功能和玩法,如何做好一个灵活可扩展的任务系统的架构与设计,今天来给大家分享一些我们的设计经验。接下来我把整个的任务系统分成以下6个模块:(1)任务配置表设计与管理;(2)游戏任务的解锁与生成;(3)任务完成判定;(4)任务完成......
  • C#12新功能(.NET 8)有哪些?
    前言作为.NET8发布会的一部分,微软于11月14日发布了C#12的新功能,这也是目前.NET的最新版本。正如之前公布的那样,最显著的改进包括了集合表达式、主构造函数、任何类型的别名以及lambda表达式中参数提供默认值。主构造函数C#12扩展了主构造函数,现在可以在任何class和struct中创......
  • C#12新功能有哪些?
    前言作为.NET8发布会的一部分,微软于11月14日发布了C#12的新功能,这也是目前.NET的最新版本。正如之前公布的那样,最显著的改进包括了集合表达式、主构造函数、任何类型的别名以及lambda表达式中参数提供默认值。主构造函数C#12扩展了主构造函数,现在可以在任何class和struct中创......
  • android 申请相机权限没有弹出授权对话框怎么办?
    当您在Android应用程序中申请相机权限时,如果没有弹出授权对话框,可能是由于以下几个原因导致的:权限已被授权:在某些情况下,如果用户先前已经授予了相机权限,系统将自动授予权限,而不会再次显示授权对话框。您可以在应用程序的设置中查看权限状态,或者在设备的应用程序设置中查看您的应用......
  • Android开发显示头部Bar
    Android开发显示头部Bar需求:显示如下图:显示头部Bar,颜色也能自定义。解决方案这个修改是在如下三个文件里进行修改:按顺序修改:themes.xml(night):<resourcesxmlns:tools="http://schemas.android.com/tools"><!--Baseapplicationtheme.--><stylename="Base.Theme.Cro......
  • Vue 常用的指令都有哪些?
    1、v-model多用于表单元素实现双向数据绑定(同angular中的ng-model)2、v-for格式:v-for="字段名in(of)数组json"循环数组或json(同angular中的ng-repeat),需要注意从vue2开始取消了$index3、v-show显示内容(同angular中的ng-show)4、v-hide隐藏内容(同angular......
  • 基于Docker搭建 Mysql8.0 主从架构
    创建主从数据库文件夹mkdir-p/usr/local/mysql/master1/confmkdir-p/usr/local/mysql/master1/datamkdir-p/usr/local/mysql/slave1/confmkdir-p/usr/local/mysql/slave1/data初始化主数据库配置文件cd/usr/local/mysql/master1/confvimy.cnf-----------------......
  • 07.Android开发者选项
    1.开启开发者选项点击设置点击关于手机连续点击N次MIUI版本2.常用选项开启开发者选项不锁定屏幕USB调试选择模拟位置信息应用显示触摸操作指针位置调试GPU过渡绘制显示所有“应用程序无响应” ......