首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 模块化热更新架构正在悄悄流行

    60MB~50MBApple审核风险极低(合规)无中高(曾多次被拒)热更新生效时效即时即时需等待CodePush同步数据来源:某金融客户内部压测(iPhone14Pro,iOS17.2)五、不止于热更新的“模块化架构 它实际上为App提供了一种微前端式架构能力——将大型App拆解为多个独立开发、独立部署的小程序模块。

    31110编辑于 2026-01-09
  • 来自专栏腾讯Bugly的专栏

    微信Android模块化架构重构实践

    为此,微信开启了第三次架构改造(v3.x)。我们对各种产品功能进行解耦并拆分到相互独立的p_xxx工程中,这是微信第一次进行模块化架构的重构。 所以当我们重新审视代码架构时,以前良好模块化架构设计已经逐渐变了样。 图3 - 架构逐渐的变化 “君有疾在腠理,不治将恐深”,在我们还在犹豫到底要不要重构的时候,硬件同学向我们提出了需求。 总之在模块化上我们忽视了一些重要的问题,必须重塑。 重塑模块化 重塑模块化,我们分解为三个目标: 改变通信方式 重新设计模块 约束代码边界 改变通信方式 前面讲过,我们使用Event总线作为模块间通信的媒介,这种设计很常见。 所以在方案选择上我们就更愿意寻求相对简单合适的方式解决问题——用纯粹的模块化保持后续架构的灵活性和健壮性,重新强调依赖、强调应用状态和生命周期、强化代码的边界。

    1.6K51编辑于 2023-04-02
  • 来自专栏微信终端开发团队的专栏

    微信 Android 模块化架构重构实践(上)

    为此,微信开启了第三次架构改造(v3.x)。我们对各种产品功能进行解耦并拆分到相互独立的p_xxx工程中,这是微信第一次进行模块化架构的重构。 所以当我们重新审视代码架构时,以前良好模块化架构设计已经逐渐变了样。 总之在模块化上我们忽视了一些重要的问题,必须重塑。 重塑模块化 重塑模块化,我们分解为三个目标: 改变通信方式 重新设计模块 约束代码边界 改变通信方式 前面讲过,我们使用Event总线作为模块间通信的媒介,这种设计很常见。 接下篇:《微信 Android 模块化架构重构实践(下)》 本文来源于:WeMobileDev 微信公众号

    11.8K1610发布于 2017-08-07
  • 来自专栏iOS面试

    如何在iOS中构建模块化架构

    让我们看看模块化体系结构如何解决该问题。 [xcode库] 模组 从模块开始,我们可以将其表示为与其他主应用程序隔离的代码资源。然后,将其作为依赖项添加到我们的iOS应用中。

    3.1K30发布于 2020-06-12
  • 来自专栏向治洪

    iOS 组件化模块化架构设计实践

    一、背景 业务组件化(或者叫模块化)作为移动端应用架构的主流方式之一,近年来一直是业界积极探索和实践的方向。 iOS 组件化/模块化的方案有很多,我们只提供一种实现思路,对遇到类似问题的同学能有所启发,并不准备对组件化架构设计方案给出一份标准答案。 进一步的,通过技术手段,消除中介者对业务模块依赖,即形成了业务模块化架构设计(图三)。 总的来说,通过业务模块化架构,一般可以达到明确模块职责及边界,提升代码质量,减少复杂依赖,优化编译速度,提升开发效率等效果。 4.3.3 业务模块化的一些建议 我们建议所有进入业务领域划分稳定期(业务模块基本确定,不会发生较大变动)的团队采用业务模块化架构设计。

    3.5K20编辑于 2021-12-30
  • 来自专栏微信终端开发团队的专栏

    微信 Android 模块化架构重构实践(下)

    作者:carlguo 接上篇:《微信 Android 模块化架构重构实践(上)》 取舍和选择 对于架构重构,我们也曾放眼行业内已经发布过的各种方案,希望从中找到一些解决思路。 在微信的角度看,我们最关心的问题是如何能约束住代码边界,如何防止架构劣化,如何提高开发效率。这样的情况下,重新审视了具备动态性的插件化和沙盒方案。 而对于第一点,我们则期望在实现模块化上,目标相对纯粹一些,专心解决代码自身问题,之后再通过tinker在开发阶段之外实现热补丁上的动态性需要。 再来看隔离性。 所以思前想后我们仍选择了重走最开始的模块化之路。一切问题的根本还是在那个说的很多年的代码边界、解耦和内聚上。只要有了清晰独立的代码模块,才有将来其他变化的可能性。 所以在方案选择上我们就更愿意寻求相对简单合适的方式解决问题——用纯粹的模块化保持后续架构的灵活性和健壮性,重新强调依赖、强调应用状态和生命周期、强化代码的边界。

    5K51发布于 2017-08-08
  • 来自专栏Vehicle攻城狮

    ROS:用于Automated Driving的模块化软件架构

    为了实现模块化,需要定义通用的接口,具有良好接口定义的软件架构,可便于功能的扩展。 2、性能 在实时计算中,任务应在确定的时间内执行。硬实时保证了每个计算响应都在预期的时间内以特定的速率进行。 想了解KogMo-RTDB的可通过如下链接进行了解: http://www.kogmo-rtdb.de/index.html 时间触发式架构 EB基于和Audi的合作开发经验推出的模块化ADAS开发环境平台 即插即用的模块化特性:在新系统开发时,最终采用的算法往往在原型设计之后,为了实现功能子组件的及时替换,需要组件之间建立简洁且完善的接口。 仿真: ROS的模块化消息架构允许数据输入源的更换,因此节点可很容易的基于记录的数据进行测试。 ROS并没有特定的功能来实现锁步,然而模块化架构及标准接口有助于锁步系统的开发以提高系统可靠性。

    1.3K20编辑于 2022-04-19
  • 来自专栏后场技术

    监控即服务:用于微服务架构模块化系统

    除了一体化代码之外,我们的项目还有许多微服务支持。他们每个都需要被监控。由DevOps工程师监控它们几乎是不可能的。我们开发了一个监控系统,作为开发人员的服务。他们可以自己配置监控系统中的指标,使用它们,构建基于指标的仪表板,设置由阈值触发的警报。DevOps工程师唯一必须提供的是基础设施和文档。

    1.9K30发布于 2020-09-03
  • 来自专栏终身开发者

    App 组件化模块化之路——构建开发架构思路

    App 组件化/模块化开发架构思路 随着业务的发展 App 开发技术也越来越成熟,对开发者来说 App 代码量也迅速地增长到一个数量级。对于如何架构 App 已经每个开发者面临的实际问题。 好的架构可以提高开发者的效率,降低维护成本。 由于业务增长引起项目中代码量激增,以及历史遗留问题和结构混乱,作为一个有代码洁癖的程序员,很早就开始思考如何组织 App 架构的问题了。 目前遇到的主要有以下几点问题: 代码量激增引起结构混乱 各个模块相互引用且耦合度高 无法独立开发或者调试组件代码 无法应对组件插拔的需求(例如:产品经理今天把这个功能加上,第二天又去掉,第三天又加回来T_T) App 架构图 在阅读了大量的文档之后,根据实际项目开发遇到的问题,我总结了以下架构。 业务层 我认为这一层是整个 App 架构的关键。

    2.2K20发布于 2019-07-31
  • 来自专栏阿利民

    一种基于广播的模块化架构简单实现

    软件架构指的是系统的一些列抽象,用于指导软件系统的开发,并且与具体的业务无关。软件架构通常也描述了系统各个元件之间的逻辑关系,这个逻辑关系也可以简单理解为模块化。 本文将向读者推荐一种基于广播的模块化架构,以下简称架构。   本文不打算向读者介绍庞大成熟的架构设计,而是为读者提供一种快速简单有效的解决方案。 约定   首先我们对架构进行约定,这种架构至少应该满足以下几点要求: 模块化。支持模块自由组合,甚至热插拔。 高内聚低耦合。模块之间应遵循最少知识原则。 模块间通讯。 该架构通过广播把模块之间的函数调用、实例持有关系,简单的抽象成了消息驱动关系,模块之间无需持有其它模块的实例,达到了模块化、高内聚低耦合的目的。 = itr) { return itr->second->dispatch(this, msg); } return false; } 至此,这个简单的架构便实现了文章开始约定的模块化

    46620编辑于 2022-05-16
  • 来自专栏前端小菜鸡yym

    模块化-模块化规范

    为什么有模块化规范 上一篇文章,实现了模块化。但是最后还是存在如下的缺点 请求过多 依赖模糊 难以维护 因此就需要模块化规范。 模块化规范分类 CommonJs AMD CMD: 阿里开发的,只需要了解。 ES6 CommonJS规范 说明 每个文件都被当做一个模块 在服务器端:模块的加载是同步的。

    88430编辑于 2023-01-12
  • 来自专栏开发者技术前线

    基于运行时组件化模块化架构实践

    当前参与的项目历史也很久远,第一行代码据说是写于2014年的某一天,那时Android用的ide还是Eclipse、那时Android还没有很好的架构指导(mvp、mvvm)、那时Android最新的版本是 当前技术部移动团队有30+开发人员,有多个不同的项目在并行开发,但是却没有架构组(底层码农管不了组织的事,只能埋头敲代码),没有架构组的最直接的问题是没有一个组织来统一各个项目的技术选型和技术方案。 模块灵活组合运行——能够适应产品需求,灵活拆分组合打包上线 NOTE:组件化/模块化这一节将会以XModulable为例进行解释它是如何进行组件化/模块化:阐述和理解一个程序问题,最直接的方式是写一个小的 综上所述,最终的组件化/模块化采用的是封装+路由+面向接口编程。以live业务模块为例,从源码的角度看下它们是实现这套思路的。 若团队后续扩张的话,势必会按照业务功能模块划分独立的业务小组,那么会导致人员组织架构和工程组织架构上打架 对症下药 (一)控制代码质量 团队内部人员需要有代码质量意识,否则,容易出现有一波人在重构优化,

    1K20发布于 2020-11-23
  • 来自专栏程序员面试小技巧

    用Java的OSGi框架构建灵活模块化应用

    引言在现代软件开发中构建可扩展、可管理和可升级的应用程序是一项关键任务为了满足这一需求Java的OSGi(Open Service Gateway Initiative)框架提供了一种模块化的解决方案本文将介绍 OSGi框架的概念和特点并通过一个代码示例来演示如何使用OSGi构建一个模块化的Java应用程序。 一、OSGi框架概述OSGi是一种面向服务的模块化框架它将应用程序划分为多个独立的、可重用的模块每个模块被称为一个bundle每个bundle都有自己的生命周期、类加载器和依赖管理机制OSGi框架提供了动态部署 小结本文介绍了Java的OSGi框架的概念和特点并通过一个简单的代码示例演示了如何使用OSGi构建一个模块化的Java应用程序,关注我回复资源获取源代码OSGi的模块化、动态部署、服务导向和类加载隔离等特性使得应用程序更具灵活性和可维护性希望本文能帮助你进一步了解和探索

    94240编辑于 2023-08-23
  • 企业级AI平台的能力架构模块化规划

    温馨提示:本文适合AI产品经理、技术架构师、CTO等角色阅读。如果你正在规划企业AI建设,希望这篇文章能为你提供一些有价值的思路和参考。 核心价值主张 核心能力架构设计:四层金字塔模型 {#架构设计} 一个完整的企业级AI平台可以抽象为四层架构,就像搭建一座稳固的金字塔: 1. {#模块化规划} 模块化设计原则 核心模块拆分策略 1. 通过模块化架构设计,我们能够: ✅ 降低技术门槛:让业务人员也能轻松使用AI能力 ✅ 提升开发效率:避免重复造轮子,专注业务创新 ✅ 确保系统稳定:模块化设计增强系统的可维护性 ✅ 支持快速扩展 关键词: 企业级AI平台、能力架构模块化规划、人工智能、技术架构

    4.3K10编辑于 2025-06-24
  • 来自专栏用户6296428的专栏

    有赞移动 iOS 组件化(模块化架构设计实践

    一、背景 业务组件化(或者叫模块化)作为移动端应用架构的主流方式之一,近年来一直是业界积极探索和实践的方向。 进一步的,通过技术手段,消除中介者对业务模块依赖,即形成了业务模块化架构设计(图三)。 ? 四、有赞的模块化实践 有赞移动自 16 年起开始实践业务模块化架构方式,大致经历了 2016 年的尝试+摸索,2017 年的思考+优化以及 2018 年的成熟+沉淀几个阶段。 模块化过程更多精力花在了全局架构设计,与之配合的开发规范,以及结合自己团队情况的一些取舍。模块化 SDK 只是模块化整体设计的冰山一角。 4.3.5 业务模块化时机 我们建议所有进入业务领域划分稳定期(业务模块基本确定,不会发生较大变动)的团队采用业务模块化架构设计。即使模块划分还没完全明确,也可以考虑对部分明确了模块进行模块化改造。

    1.6K10发布于 2020-08-25
  • 量子芯片架构革新:模块化可重构路由器设计

    研究人员在超导量子处理器领域实现了一种全新设计,旨在为量子革命所需的大规模、耐用设备构建一种潜在的架构。 与将信息处理量子比特布局在二维网格上的典型量子芯片设计不同,该团队设计了一种模块化量子处理器,其核心是一个可重构的路由器作为中央集线器。 研究人员的新型量子芯片具有灵活性、可扩展性,并且像手机和笔记本电脑中的芯片一样模块化。 该处理器被设计为模块化的,不同的组件可以在安装到处理器主板之前进行预选。

    12810编辑于 2026-03-26
  • 来自专栏鸿蒙开发笔记

    HarmonyOS 开发实践——模块化架构组件 (使用系统路由表+注解+hvigor插件 自动配置项目模块化

    其中 Router(routerConfig:RouterConfig) RouterConfig参数如下

    42620编辑于 2024-10-30
  • 来自专栏WebJ2EE

    模块化】:ES6 模块化

    import.meta 是一个给 JavaScript 模块暴露特定上下文的元数据属性的对象。它包含了这个模块的信息,比如说这个模块的URL。

    85910编辑于 2022-03-30
  • 来自专栏架构精进之路

    模块化 VS 微服务:别让架构选择误入 “伪需求” 陷阱

    将整体解决方案模块化为离散组件,有助于应用开发团队每次专注于一小部分内容,从而简化整个编码和测试过程。 简化了跨团队协调流程。 微服务使得代码和数据能够重用模块化架构,轻松部署更多数据驱动的用例和解决方案,借此增加业务价值。 能带来更多产出。数据通常会以不同方式呈现给不同受众;微服务简化了为各最终用户提取数据的方式。 “重用模块化架构”——好吧,大家还记得有多少事物都在以“重用”为卖点吗? 考虑到模块的这一实际定义,我们引用一篇计算机科学基础论文中的表述: 项目工作的明确定义与细分,保障了系统的模块化。每个任务都将形成一个独立的、不同于其他的程序模块。 最终,系统会以模块化形式进行维护;系统错误和缺陷可被追溯至特定的系统模块,从而限制错误搜索的具体范围。

    49410编辑于 2025-04-30
  • 来自专栏河湾欢儿的专栏

    模块化

    在nodejs中,可以通过exports或module.exports 和 require 实现模块化 exports 和 module.exports的区别? querystring path events stream 其余核心模块: os 操作系统模块 ----Platform 表示当前使用的操作系统 ----arch 当前cpu的架构 加上请求路径就是路由 App.get(“/”,function(){}) app.post(“/a”,function(){}) 他们就是路由 在express中有一个Router的方法可以实现路由的模块化

    2.4K20发布于 2018-09-06
领券