【Jetpack】Jetpack 简介 ( 官方架构设计标准 | Jetpack 组成套件 | Jetpack架构 | Jetpack 的存在意义 | AndroidX 与 Jetpack 的关系 )

这篇具有很好参考价值的文章主要介绍了【Jetpack】Jetpack 简介 ( 官方架构设计标准 | Jetpack 组成套件 | Jetpack架构 | Jetpack 的存在意义 | AndroidX 与 Jetpack 的关系 )。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。





一、Google 官方推出的架构设计标准 Jetpack



Android 架构发展 : Android 架构的发展 途径了 MVC -> MVP -> MVVM 等方案 , 这些架构都 不是 Google 官方提出的 , 都是各个团队 根据自己的需求推出的适合自己的架构方案 ;

Jetpack 是 Google 推出的 架构设计标准 , 是官方推出 架构设计指导方案 ;


借助 Jetpack 提供的一系列的 工具 和 组件 , Android 开发者 可以 快速高效地 构建出 高质量 / 高性能 的应用架构 ;

使用 Jetpack 提供的架构 , 可以 简化 Android 应用开发架构相关内容 , 并且可以 减少格式化样本代码的编写 , 开发者可以使用更多的精力和时间 专注于 业务逻辑 的开发 ;

同时 , 还可以 减少 出错崩溃 的概率 , 内存泄漏 , 降低代码复杂度 ;





二、Jetpack 组成套件



Jetpack 是 Google 官方提出的 , 由 多个 库 组成的 套件 , 这些库包括 :

  • UI 库 : Animation , Transitions , Emoji , Layout , Palette …
  • 架构库 : Data Binding , ViewModel , Lifecycles , LiveData , Navigation , Padding , Room …
  • 行为库 : Download Manager , Permissions , Notifications , Sharing …
  • 基础库 : AppCompat , Android KTX , Multidex , Test …

jetpack,# Jetpack,androidx,android,ui,Jetpack,AndroidX





三、Jetpack 架构



Jetpack 是 Google 推出的 架构设计标准 , 是官方推出 架构设计指导方案 ;

Jetpack 架构 是 基于 分层结构设计模块化开发设计思想 提出的 ;


Jetpack 提供了一系列的组件类型 :

  • 基础组件 : 提供 基础 功能 , 可以 简化开发 , 提高 代码 可维护性 ; 如 : Android KTX ;
  • 架构组件 : 构建 响应式的 , 高效的 , 可测试 的应用程序 ; 如 : ViewModel 管理 UI 数据模型 , LiveData 用于 响应数据 改变 , Room 管理数据库模块 等 ;
  • UI 组件 : 创建 灵活 , 美观 , 易于扩展 的 UI 界面 ; 如 : ConstraintLayout 约束布局 , RecyclerView 列表 , ViewPager2 组件 ;
  • 测试组件 : 创建 可靠 自动化测试 模块 ; 如 : JUtils , Espresso , UI Automator 等测试组件 ;
  • 功能组件 : 管理 后台任务 , 导航 , 分页 等实际功能 ; 如 : WorkManager 等 ;

Jetpack 架构中 , 每个组件 都有其 相应的 功能 , 根据 项目的需求 , 和 团队的分工 , 将各种组件 进行 组合使用 , 就可以 构成一个 高可靠性的 项目架构 ;

使用 Jetpack 组件组合成的 架构设计 , 可以快速构建 应用程序 , 并且提高程序的稳定性 , 可维护性 ;





四、Jetpack 的存在意义




1、提高开发效率


Jetpack 提供了 大量 现成 的 组件 和 工具 , 可以快速 构建 高质量 / 高性能 的 Android 工程 , 并且可以 提高 代码的 稳定性 , 可维护性 ;

使用 Jetpack 库 , 减少了很多 重复性的 代码工作 , 提高了开发效率 ;


2、最佳架构方案


Jetpack 是 Google 推荐的最佳的架构方案 , 一直在 不断更新 , 并且 兼容之前的 Android 系统版本 ;

使用 Jetpack 可以减少 架构带来 内存泄漏 和 崩溃 ;


3、消除样本代码


使用 Jetpack 开发套件 , 可以轻松进行 工程架构 , 减少不必要的 架构相关的样板代码 , 开发者只需要专心开发自己的逻辑代码即可 ;

Jetpack 提供了一套 UI , 行为 , 架构 相关的解决方案 , 开发者可以不用再架构上浪费时间 , 专心开发自己的逻辑 ;


样板代码示例 : Activity 中管理各种生命周期 ;


4、设备系统兼容性


开发 Android 应用 , 需要 考虑到 Android 的各个版本的特性 , 以及 各个 Android 手机厂商的适配问题 , 需要花费大量的时间精力进行适配工作 ;

使用 Jetpack 可以保证 在 各个 Android 版本 , 各种 Android 设备中 , 保持运行一致 , 可以降低 测试 , 适配 的 工作量 ;

Jetpack 自带设备系统兼容性解决方案 ;


5、改善应用性能


使用 Jetpack 提供的 一系列的 组件 和 工具 , 可以

  • 提高 应用的 性能 ,
  • 提高 代码稳定性 ,
  • 提高 代码可维护性 ,
  • 减少应用崩溃 ,
  • 减少应用内存泄漏 ;

6、测试支持


Jetpack 提供了一系列的 测试组件 ,

借助 Espresso , UI Automator , JUnit 测试组件 ,

可以快速 创建 Android 自动化测试 功能 ,

提高 程序的 质量 , 提高代码的稳定性 ;





五、AndroidX 与 Jetpack 的关系



Google 推出的 AndroidX 库 , 其 更新频率很频繁 , AndroidX 没有并入 SDK , 是因为其 更新频率很高 , 几乎 每个月都要更新 , Android 的 SDK 每次只在新版本发布时才更新 , 基本要半年到一年才能更新一次 ;

官方的 SDK 有很多不完善的地方 , Google 开发了很多开源项目 , 对 SDK 缺陷进行修复 , 这些开源项目最后都并入了 AndroidX 项目 , 其中每个子项目都在更新 , 因此 AndroidX 更新频率很高 ;


AndroidX 与 Jetpack 的关系 :

  • AndroidX 的命名空间 中 包含了 Jetpack 套件 ;
  • 之前的 Android Support Library 已经停止更新 , 官方推荐使用 AndroidX 替代 Android 支持库 ;
  • Android Architecture Component 架构组件 也 并入了 AndroidX ;

官方推出的库 , 除 SDK 之外的都并入到了 AndroidX 命名空间中 ;文章来源地址https://www.toymoban.com/news/detail-778998.html

到了这里,关于【Jetpack】Jetpack 简介 ( 官方架构设计标准 | Jetpack 组成套件 | Jetpack架构 | Jetpack 的存在意义 | AndroidX 与 Jetpack 的关系 )的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 系统架构设计师-第1章计算机组成与体系结构

    计算机系统是一个硬件和软件的综合体,可以把它看成按功能划分的多级层次结构。 系统软件支持应用软件的运行,为用户开发应用软件提供平台,用户可以使用它,但不能随意修改它。常用的系统软件有操作系统、语言处理程序、连接程序、诊断程序和数据库管理系统等。

    2024年02月03日
    浏览(62)
  • 软考高级系统架构设计师(二) 基础知识之计算机组成与系统结构2

    目录 总线 ​CISC与RISC  流水线技术  练习题:     RISC(精简指令集计算机)和CISC(复杂指令集计算机)是当前CPU的两种架构.   RISC与CICS的比较 1.RISC比CICS更能提高计算机运算速度;RISC寄存器多,就可以减少访存次数,指令数和寻址方式少,因此指令译码较快。 2.RISC比CISC更便于

    2024年02月09日
    浏览(47)
  • 【新版】系统架构设计师 - 知识产权与标准化

    个人总结,仅供参考,欢迎加好友一起讨论 保护范围与对象(★★★★) 保护期限(★★) 知识产权人确定(★★★) 侵权判断(★★★★) 标准的分类(★) 标准代号的识别(★) 法律法规名称 保护对象及范围 注意事项 著作权法 著作权,文学,绘画,摄影,计算机

    2024年02月08日
    浏览(72)
  • 软件架构设计(二) 软件架构风格其他风格简介

    架构师备战(四)-软件架构设计(二) 软件架构风格其他风格简介 架构风格其实是很重要的知识,我们先了解了基本的五种架构风格, 我们之前也提到除了这五种风格之外, 还有一些没有收录在这几种风格之内的, 这次会去做一个探索。 概念 当软件被用来操作一个物理系统时,软件

    2024年02月10日
    浏览(46)
  • 架构设计内容分享(一百三十六):Spring AI 项目简介

    目录 1、概览 2、Spring AI 的主要概念 2.1、高级的 Prompt 和 AiResponse 3、Spring AI 入门 4、Spring AI 实践 4.1、在 Spring Boot 中注入 AiClient 4.2、使用 PromptTemplate 配置查询 5、Error 处理 6、总结 Spring 通过 Spring AI 项目正式启用了 AI(人工智能)生成提示功能。本文将带你了解如何在 Spri

    2024年02月22日
    浏览(49)
  • 综合布线标准之主干布线子系统的组成

    综合布线系统 综合布线系统就是为了顺应发展需求而特别设计的一套布线系统。对于现代化的大楼来说,就如体内的神经,它采用了一系列高质量的标准材料,以模块化的组合方式,把语音、数据、图像和部分控制信号系统用统一的传输媒介进行综合,经过统一的规划设计,

    2024年02月07日
    浏览(36)
  • Jetpack Compose UI架构

    Jetpack Compose是我职业生涯中最激动人心的事。它改变了我工作和问题思考的方式,引入了易用且灵活的工具,几乎可轻松实现各种功能。 早期在生产项目中尝试了Jetpack Compose后,我迅速着迷。尽管我已有使用Compose创建UI的经验,但对新的Jetpack Compose驱动特性的组织和架构引发

    2024年02月11日
    浏览(51)
  • python官方标准库

    https://docs.python.org/zh-cn/3/library/ https://pypi.org/ https://pypi.org/search/ Python 语言参考手册 描述了 Python 语言的具体语法和语义,这份库参考则介绍了与 Python 一同发行的标准库。它还描述了通常包含在 Python 发行版中的一些可选组件。 Python 标准库非常庞大,所提供的组件涉及范围十

    2024年02月09日
    浏览(29)
  • 【FPGA 芯片设计】FPGA 简介 ( FPGA 芯片架构 | FPGA 芯片相对于传统芯片的优点 )

    摩尔定律 : 价格不变 , 在集成电路上 电子元器件的数量 , 18 ~ 24 个月增加一倍 , 同时芯片性能也增加一倍 ; 同样花 5000 元 , 每隔 18 ~ 24 个月 , 买到的电脑性能可以翻一番 , 买电脑不要买最好的 , 第二年就淘汰 ; FPGA 英文全称 Field Programmable Gate Array , 中文名称为 \\\" 现场可编程门

    2024年02月03日
    浏览(88)
  • Android Jetpack组件架构:ViewModel的原理

    本篇文章是关于介绍ViewModel的,由于ViewModel的使用还是挺简单的,这里就不再介绍其的基本应用,我们主要来分析ViewModel的原理。 众所周知,一般使用ViewModel是用来解决两个问题的,第一个就是关于设备配置发生改变时Activity先前状态的保存,在ViewModel出来之前我们一般会使

    2024年02月07日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包