从 App 到 Agent:鸿蒙应用形态正在改变

从 App 到 Agent:鸿蒙应用形态正在改变
在这里插入图片描述

子玥酱(掘金 / 知乎 / ZEEKLOG / 简书 同名)

大家好,我是子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚焦于业务型系统的工程化建设与长期维护。

我持续输出和沉淀前端领域的实战经验,日常关注并分享的技术方向包括前端工程化、小程序、React / RN、Flutter、跨端方案,
在复杂业务落地、组件抽象、性能优化以及多端协作方面积累了大量真实项目经验。

技术方向:前端 / 跨端 / 小程序 / 移动端工程化
内容平台:掘金、知乎、ZEEKLOG、简书
创作特点:实战导向、源码拆解、少空谈多落地
文章状态:长期稳定更新,大量原创输出

我的内容主要围绕 前端技术实战、真实业务踩坑总结、框架与方案选型思考、行业趋势解读 展开。文章不会停留在“API 怎么用”,而是更关注为什么这么设计、在什么场景下容易踩坑、真实项目中如何取舍,希望能帮你在实际工作中少走弯路。

子玥酱 · 前端成长记录官 ✨
👋 如果你正在做前端,或准备长期走前端这条路
📚 关注我,第一时间获取前端行业趋势与实践总结
🎁 可领取 11 类前端进阶学习资源(工程化 / 框架 / 跨端 / 面试 / 架构)
💡 一起把技术学“明白”,也用“到位”

持续写作,持续进阶。
愿我们都能在代码和生活里,走得更稳一点 🌱

文章目录

引言

过去十几年,移动应用的核心形态一直很稳定:

用户打开 App ↓ 进入首页 ↓ 点击功能入口 ↓ 完成操作 

几乎所有应用都遵循这种模式:

  • 电商
  • 社交
  • 工具
  • 内容平台

本质上都是 “页面驱动的应用”

但随着 AI 技术、端侧大模型、系统级智能能力的发展,应用形态正在发生一次非常明显的变化:

应用正在从 App,变成 Agent。

换句话说:未来很多应用可能不再是一个“页面集合”,而是一个 可以执行任务的智能体(Agent)

这篇文章就聊聊:从 App 到 Agent,鸿蒙应用形态正在发生什么变化。

一、传统 App 的核心模式

传统 App 的核心逻辑其实很简单:

用户 → UI → 业务逻辑 → 数据 → UI 

例如点外卖:

打开外卖 App ↓ 搜索餐厅 ↓ 选择商品 ↓ 下单 

整个过程完全由 用户操作驱动,应用本质上是:

一个工具。

用户必须一步一步操作。

二、Agent 应用是什么

Agent 的核心特点是:

理解任务 自动执行 完成目标 

例如,用户只说一句:

帮我订一张明天去北京的机票 

Agent 可能会自动完成:

查询航班 选择时间 填写信息 支付订单 

整个流程不再需要用户逐步操作。

应用从:

工具 

变成:

助手 

三、为什么 Agent 会出现

Agent 应用出现,其实是三个技术变化带来的。

1、AI 能理解用户意图

传统应用只能处理 固定输入。例如:

搜索关键词 点击按钮 选择菜单 

但大模型可以理解自然语言:

帮我找一家附近评分高的餐厅 

AI 可以解析:

需求 位置 评分条件 

然后调用服务。

2、系统级能力整合

Agent 需要调用多个服务,例如:

地图 支付 消息 设备 

鸿蒙系统的一个重要能力就是 系统级服务整合,例如:

应用服务 系统能力 设备能力 

这为 Agent 提供了基础。

3、端侧 AI 能力

以前 AI 都在云端,现在很多能力可以在 设备端运行

  • 语音识别
  • 文本理解
  • 推荐系统

这让应用可以更快响应。

四、鸿蒙为什么适合 Agent 应用

鸿蒙生态其实非常适合 Agent 形态,原因主要有三个。

1、分布式设备能力

鸿蒙系统支持:

手机 平板 手表 车机 电视 

应用能力可以分布在多个设备,例如:

手机:输入任务 车机:执行导航 手表:提醒通知 

Agent 可以跨设备运行。

2、服务卡片能力

鸿蒙有 服务卡片(Service Card),很多功能不需要打开 App。例如:

查看快递 播放音乐 控制设备 

Agent 可以直接调用这些能力。

3、系统级 AI 能力

未来鸿蒙系统可能会提供:

系统 AI 应用 AI Agent 服务 

应用可以直接接入这些能力。

五、App 到 Agent 的架构变化

如果应用变成 Agent,架构也会变化。传统 App 架构:

UI ↓ Service ↓ Network 

Agent 架构可能变成:

User Input ↓ AI Agent ↓ Task Planner ↓ Service Calls 

例如:

AI Agent ├─ 意图识别 ├─ 任务规划 └─ 服务调用 

六、一个简单 Agent 示例

例如一个旅行 Agent,用户输入:

帮我规划一个周末旅行 

Agent 可能这样处理:

classTravelAgent{asynchandleRequest(text:string){const intent =await AIService.parseIntent(text)if(intent ==="travel_plan"){returnawaitthis.planTrip()}}asyncplanTrip(){const flights =await FlightService.search()const hotels =await HotelService.search()return{ flights, hotels }}}

这里 AI 负责:

理解任务 规划流程 调用服务 

七、UI 的角色会改变

在 Agent 应用里,UI 不再是核心,传统 App:

UI 是入口 

Agent 应用:

AI 是入口 

UI 变成:

展示结果 确认操作 调整参数 

例如:

AI 推荐旅行方案 用户确认 系统执行 

八、开发者需要改变什么

如果应用变成 Agent,开发者的思维也需要改变。传统开发关注:

页面 导航 交互 

Agent 应用更关注:

任务 能力 服务 

应用不再只是:

UI 产品 

而是:

能力服务 

总结

应用形态正在经历一次明显变化,过去:

App = 页面集合 

未来:

App = 能力服务 + AI Agent 

用户不再需要:

打开 App 寻找功能 点击按钮 

而是直接:

表达需求 

系统完成任务,从这个角度看,未来应用的演进路线很可能是:

App ↓ Service ↓ Agent 

对于开发者来说,这意味着:

移动应用的设计方式,很可能会迎来一次 新的架构变革

Read more

【算法】二分查找经典例题

【算法】二分查找经典例题

1.leetcode (.704)⼆分查找 1.2算法原理 二分算法的满足条件是数组有序,其实并不严谨,实际上是要具有二段性,即通过有一个数能将数组分为两部分,一次比较能筛选掉一部分 循环结束条件: left>right,因为每个区间内的数都是未知的,即使最后left和right相等还是要根目标值比较一次,来证明一个数是否有存在 时间复杂度: O(logN)和O(N)的效率差距很大,在int范围内,O(N)最多要比较执行4*10^9次,而O(logN)最多只要32次 数据溢出问题: (left + right) / 2 : 在大多数情况下是安全的,但如果 left 和 right 的和超过了该类型能表示的最大值,直接相加可能会导致整数溢出 left + (right - left) / 2 可以避免这个问题,

By Ne0inhk
【算法通关指南:算法基础篇】二分算法:1.在排序树组中查找元素的第一个和最后一个位置 2.牛可乐和魔法封印

【算法通关指南:算法基础篇】二分算法:1.在排序树组中查找元素的第一个和最后一个位置 2.牛可乐和魔法封印

🔥小龙报:个人主页 🎬作者简介:C++研发,嵌入式,机器人方向学习者 ❄️个人专栏:《算法通关指南》 ✨ 永远相信美好的事情即将发生 文章目录 * 前言 * 一、二分算法 * 二、在排序树组中查找元素的第一个和最后一个位置 * 2.1题目 * 2.2 算法原理 * 2.3代码 * 三、牛可乐和魔法封印 * 3.1题目 * 3.2 算法原理 * 3.3代码 * 总结与每日励志 前言 本专栏聚焦算法题实战,系统讲解算法模块:以《c++编程》,《数据结构和算法》《基础算法》《算法实战》 等几个板块以题带点,讲解思路与代码实现,帮助大家快速提升代码能力ps:本章节题目分两部分,比较基础笔者只附上代码供大家参考,其他的笔者会附上自己的思考和讲解,希望和大家一起努力见证自己的算法成长 一、

By Ne0inhk
【算法】归并排序

【算法】归并排序

算法系列七:归并排序 一、归并排序的递归探寻 1.思路 2.搭建 2.1设计过掉不符情况(在最底层时) 2.2查验能实现基础排序(在最底层往上点时) 2.3跳转结果继续往上回搭 3.实质 4.实现 二、递归的调用栈 1.递归的执行过程 2.递归的函数栈帧 2.1递归函数的栈帧压弹 2.2合并有序数组函数的栈帧压弹 三、归并排序的复杂度 1.空间复杂度 2.时间复杂度 一、归并排序的递归探寻 1.思路 理想结果等于成分解断开子结果表达式的公式表示 快速排序: 整个数组有序 = 其中一个元素有序 + 其左断开数组有序 + 其右断开数组有序 归并排序: 整个数组有序 = 左断开数组有序 + 右断开数组有序

By Ne0inhk
【C语言】排序算法——快速排序详解(含多种变式)!!!

【C语言】排序算法——快速排序详解(含多种变式)!!!

【C语言】排序算法——快速排序详解(含多种变式)!!! * 前言 * 一 、快速排序(初阶) * 1. 视频演示 * 2. 算法思想 * 3. 实现思路 * (1)定key值 * (2)大小交换 * (3)循环 * (4)交换key * (5)分割区间 * (6)结束 * 4. 实现代码 * 二 、快速排序(中阶) * 1. 存在的问题 * 2. 优化(三数取中) * 3. 实现代码(中阶) * 三 、快速排序(高阶) * 1. 仍存在的问题 * 2. 优化(小区间优化) * 3. 实现代码(高阶)

By Ne0inhk