番外·卓伊凡参加 [2025年2月HDD·鸿蒙赋能交流会·成都站] 线下活动的心得体会-优雅草卓伊凡

news/2025/2/25 18:30:47

番外·卓伊凡参加 [2025年2月HDD·鸿蒙赋能交流会·成都站] 线下活动的心得体会-优雅草卓伊凡

背景

2025 年 2 月 22 日,HDD・鸿蒙赋能交流会将在北京、长沙、成都、南京、雄安同步开展。此次交流会由 HDG 组织者牵头,携手 HUAWEI DEVELOPER EXPERTS(HDE)以及广大开发者,共同聚焦 HarmonyOS 开发技术领域,不仅设置了深入的探讨环节,还安排了动手实践活动,让理论与实操紧密结合 。

活动现场,您将获得与同行面对面交流 HarmonyOS NEXT 技术热点的宝贵机会,一同畅谈鸿蒙原生应用的开发思路,深入探索鸿蒙生态所孕育的全新发展机遇。

这是华为鸿蒙官网活动介绍。

一、引言


(一)活动背景介绍

HDG 组织者携手 HUAWEI DEVELOPER EXPERTS(HDE)与开发者,共同探讨 HarmonyOS 开发技术,并开展实践操作。在这里,大家能围绕 HarmonyOS NEXT 技术热点进行交流,共同探讨鸿蒙原生应用的开发路径,挖掘鸿蒙生态蕴含的无限潜力。

(二)个人参与活动的缘由

我正筹备开展华为鸿蒙应用的开发工作,希望能从此次活动中获取灵感与经验。我们团队在两年前就有同事涉足鸿蒙相关开发,还发布过教程。最近,卓伊凡也计划开发鸿蒙应用,这更坚定了我参加此次活动的决心。

(三)总体感受概述

活动现场氛围热烈非凡,参会者来自不同编程语言领域、不同行业,有企业老总、技术总监、工程师以及产品经理等,大家齐聚一堂,思维的碰撞为活动增添了无限活力。

二、活动概况

(一)活动基本信息

活动地址位于白鹭湾科技园。此前我在开源建设大会上对其有所耳闻,却一直未曾亲身前往。此次到达后,被其优美的环境和宏大的规模所震撼,深切感受到它不愧是未来科技园区的典范。


多么大

很漂亮

签到处

展厅口

大banner

(二)活动流程与内容

13:00-14:00 入场签到

14:00-14:00 开场介绍

14:00-14:20 HarmonyOS NEXT主题

14:20-16:00 HarmonyOS NEXT主题

16:00-16:10 合影、休息、茶歇

16:10-17:00 HarmonyOS NEXT主题分享/圆桌讨论/实操环节

17:00-17:05 总结

基本上是按照这个时间严格进行的,非常不错

三、个人收获


(一)知识与技能的提升

在活动的第一个环节,张聃老师深入浅出地介绍了华为的整体架构情况,以及当下鸿蒙应用的开发现状。这让我收获颇丰,知识层面得到显著提升。此前,我一直疑惑曾经支持JavaScript语言和Java语言的鸿蒙,为何如今转变为使用ArkTS语言,经过张聃老师的讲解,我恍然大悟。这不仅拓宽了我的视野,还让我了解到华为市场终端数量已达10亿之巨,对华为鸿蒙从最初的初创到逐步建设的历程有了清晰的认识。

实不相瞒,我认为ArkTS语言与Dart极为相似。卓伊凡最近就在深入研习Dart,据他反馈,收获不小。

此外,张聃老师还讲解了SSE协议。以往我们常用的是HTTP协议或TCP协议,这次接触到SSE协议在华为鸿蒙中的应用,又让我开启了新的学习篇章。

SSE(Server-Sent Events)协议在实时数据推送场景下优势尽显,而HTTP协议在设计上存在一定局限性。下面为大家详细剖析在某些场景下,为何相较于传统HTTP协议,我们更倾向于使用SSE协议:

SSE 的优点

1. 简单易用
  • 基于 HTTP:SSE 是基于 HTTP 协议的扩展,不需要额外的协议或复杂的配置。开发者可以利用现有的 HTTP 基础设施来实现服务器与客户端之间的实时通信,降低了开发和部署的难度。
  • 客户端实现简单:现代浏览器原生支持 EventSource 对象,通过几行 JavaScript 代码就可以建立与服务器的连接并接收事件流,无需引入第三方库。
2. 自动重连机制
  • 保证数据连续性:当网络连接中断时,客户端会自动尝试重新连接到服务器。而且,客户端会在重连请求中携带上一次接收到的事件 ID,服务器可以根据这个 ID 从断点处继续发送数据,确保数据的连续性,不会丢失重要信息。
3. 消息语义明确
  • 事件类型和 ID 支持:SSE 消息可以包含事件类型和事件 ID,客户端可以根据事件类型来处理不同的事件,并且可以利用事件 ID 来实现断点续传和消息去重。这种清晰的消息结构使得数据的处理和管理更加方便。
4. 节省资源
  • 持久连接:SSE 使用持久的 HTTP 连接,服务器可以在同一个连接上持续发送多个事件,避免了频繁建立和关闭连接的开销,减少了网络延迟和服务器负载。

HTTP 协议的局限性

1. 请求 - 响应模式
  • 被动获取数据:传统的 HTTP 协议是基于请求 - 响应模式的,客户端必须主动发起请求,服务器才能响应数据。在实时数据推送场景中,客户端需要不断地轮询服务器以获取最新数据,这会增加网络流量和服务器负载,并且无法保证数据的实时性。
  • 延迟问题:轮询的时间间隔难以精确控制,如果间隔设置过长,数据更新不及时;如果间隔设置过短,会产生大量不必要的请求,浪费网络资源。
2. 无状态性
  • 缺乏上下文信息:HTTP 协议是无状态的,每个请求都是独立的,服务器无法在不同的请求之间保持上下文信息。在实时通信场景中,服务器需要维护与客户端的连接状态,以便持续推送数据,而 HTTP 的无状态性使得实现这一点变得困难。
3. 连接开销大
  • 频繁建立和关闭连接:由于 HTTP 协议的请求 - 响应模式,客户端和服务器需要频繁地建立和关闭连接。每次建立连接都需要进行 TCP 握手和 TLS 握手(如果使用 HTTPS),这会带来较大的延迟和资源消耗。

在活动的第二环节,唐老师带来了一场精彩的现场演示,为我们揭开了流转技术的神秘面纱。此前,我对流转技术一无所知,而这次,唐老师与卵石科技的 CEO 肖总一同,通过两台华为手机进行的在线演示,让我对它有了直观且深刻的认识。

演示过程中,一台手机安装了高德地图应用,而另一台并未安装。令人称奇的是,未安装应用的手机竟然也能直接使用该应用,并且整个过程仅在短短几分钟内就顺利实现。这一神奇的操作,瞬间吸引了在场所有人的目光,大家纷纷为科技的强大力量而惊叹。

App 流转技术的实现并非一蹴而就,其原理主要涵盖设备发现与连接、数据同步、任务调度与迁移等多个关键方面。接下来,为大家详细介绍:

设备发现与连接

  • 原理:通常利用蓝牙、Wi-Fi等无线通信技术以及相关的网络协议,让设备在一定范围内相互发现并建立连接。例如,蓝牙技术通过发送和接收广播信号来使设备彼此发现,一旦发现对方,就可以通过蓝牙协议进行配对和连接;Wi-Fi则可以通过扫描附近的Wi-Fi网络,找到同一局域网内的其他设备,并通过网络协议建立连接。
  • 示例:鸿蒙系统的分布式软总线利用多种通信技术,实现设备在近距离范围内自动发现和快速连接,让手机、平板、电脑等设备能够快速组网。

数据同步

  • 原理:依靠数据传输协议和同步机制,将应用数据从一个设备传输到另一个设备,并确保数据的一致性和完整性。一般会采用增量同步或全量同步的方式,根据数据的变化情况选择合适的同步策略。在同步过程中,会使用数据加密技术来保证数据的安全性,防止数据泄露和篡改。
  • 示例:在跨设备编辑文档时,当在设备A上对文档进行修改后,修改的数据会通过网络传输到云端或其他设备,设备B在检测到数据变化后,会下载更新的数据,实现文档内容的同步。

任务调度与迁移

  • 原理:应用在运行过程中会产生各种任务,如视频播放任务、文件编辑任务等。任务调度与迁移技术会根据设备的状态、资源情况以及用户的操作意图,决定是否将任务从一个设备迁移到另一个设备。在迁移过程中,需要保存任务的当前状态,包括应用的界面状态、操作进度等信息,然后在目标设备上恢复任务状态,使应用能够在目标设备上继续运行,就像在原设备上一样。
  • 示例:当用户将手机上正在播放的视频流转到电视上时,手机会将视频播放的当前进度、播放参数等信息传递给电视,电视接收到这些信息后,从相应的位置开始播放视频,实现播放任务的无缝迁移。

操作系统与应用适配

  • 原理:不同设备的操作系统和硬件特性有所不同,为了实现应用的流畅流转,需要操作系统和应用进行适配。操作系统会提供统一的接口和规范,让应用能够感知设备的变化,并根据不同设备的特点进行相应的调整。应用开发者则需要按照操作系统的规范,对应用进行开发和优化,确保应用在不同设备上都能正常运行和显示。
  • 示例:苹果的iOS和iPadOS系统,为开发者提供了一套通用的开发框架,应用可以根据设备的屏幕尺寸、分辨率等特性,自动调整界面布局和显示方式,使得应用在iPhone和iPad上都能有良好的用户体验。

身份认证与授权

  • 原理:为了确保只有授权的用户和设备能够进行App流转操作,需要进行身份认证和授权。通常会采用账号体系、设备指纹、加密密钥等技术来验证用户和设备的身份。用户在不同设备上登录同一账号后,系统会通过身份验证机制确认用户身份的合法性,然后根据用户的权限和设备的授权情况,允许或限制应用的流转操作。
  • 示例华为的多设备协同功能,用户需要使用华为账号登录所有设备,在进行设备连接和应用流转时,系统会验证账号信息和设备的绑定关系,只有通过认证的设备才能进行相关操作。

在第三个环节,卵石科技的肖总进行了一场精彩的现场开发教学,目标是开发一个滑动模块。
 


整个过程中,互动提问环节不断,大家积极参与交流。我内心十分渴望参与作答,可或许是许久未参加这类活动,莫名有些羞涩,几次欲起身回答又退缩了回去。尽管其他人的回答并非十分完美,但好歹也勇敢表达了自己的想法。那时我心里就在想:“要是我鼓起勇气站起来回答,肯定能给出非常完美的答案。” 可惜,最终还是没敢举手,就这么错过了展示自己的机会。
 


随后,肖总询问大家是否都安装了 Deveco,实话说,我还真没安装。但在那种场合下,我哪敢举手承认呀。紧接着,肖总开始演示,指导大家一起制作开发 Demo 示例。我则手忙脚乱地开始下载 Deveco,光是配置就花费了几十分钟。等我好不容易弄好,会议都快结束了。当老师让展示 Demo 时,我之前已经单独写好了一个类似老师滑块却又有所创新的滑块 Demo。然而,我的模拟器配置还没完成,导致无法在手机模拟器上显示运行效果。肖总下来查看时,就这样完美错过了我的 “杰作”,实在是太可惜了。不过我也安慰自己,以后这样的机会肯定还有很多。而且,我打算把这次的开发过程分享到专业的技术博客社区,与更多开发者交流。

高二年级的同学,祖国的花朵

(二)思维与观念的转变

鸿蒙的发展战略极具前瞻性。在当下,我们绝不能被美国的甲骨文公司、微软公司等技术巨头所束缚。就拿甲骨文公司推出的 Java 来说,它在全球范围内的影响力虽大,但也存在一定的潜在威胁。我们必须建立属于自己的技术生态,这不仅仅是科技发展的需求,更是上升到国家安全层面的战略举措。国外的技术再好,在关键时刻可能反而会成为制约我们的工具,只有国产技术才是真正能够保护和推动我们自身发展的力量。

(三)人际关系的拓展

在人际关系拓展方面,由于我不太爱主动交流,加上活动中没敢举手发言,所以并没有结识太多新朋友。这个习惯从读书时就养成了,现在想想真该批评自己。其实那些问题并不难,下次我一定要积极回答,相信到时候我能表达得很流畅。活动中,我注意到坐在我右边的是两位高中二年级的学生,看到他们对开发技术充满热情和好奇,我由衷地感到祖国的未来充满希望,这些年轻的力量必将在未来的科技领域绽放光彩。

四、活动亮点与不足


(一)活动亮点

此次活动的嘉宾都非常出色,讲解深入浅出,专业水平极高。整个活动组织得十分圆满,所有参与的人员都是开发者,大家志同道合,交流氛围浓厚,让我收获颇丰。

(二)活动不足

活动中存在一些小瑕疵。比如抽奖码出现了不能使用的情况,导致我没能抽到奖,只领到了一个手机托板。而且活动提供的零食口感太干,要是能准备些蛋糕就更好了。我上次参加亚马逊 UG 线下活动时,虽然也没吃到蛋糕,但他们准备的蛋糕看起来十分诱人。希望以后类似活动能在这些细节上多多改进,毕竟这些小细节能极大地提升参与者的体验感。

五、总结与展望


(一)总结活动对自己的重要意义

回顾这次活动,我深感其意义重大。作为一名开发者,我深刻认识到坚持支持鸿蒙发展的重要性。在过去十年的开源操作系统发展历程中,只有纯血鸿蒙 NEXT 做到了拥有自己的编译器和 SDK,这是一项了不起的成就,也是国家科技发展的希望所在。这次活动让我拓宽了技术视野,也坚定了我在国产技术开发道路上继续前行的决心。

(二)对未来类似活动的期待

我非常期待下次还能参加这样的活动。我也督促自己以及卓伊凡,以后一定要积极参加各种线下活动,不断拓宽自己的眼界。过去我过于局限在自己的小圈子里,目光短浅,缺乏长远的战略考虑,也没有进行深入的学习。2024 年我确实有些懈怠,不过好在一切都还来得及。展望 2025 年,我相信只要积极进取,不断学习,未来必将一片光明。


http://www.niftyadmin.cn/n/5865835.html

相关文章

Github更新本地仓库到远程总是失败文件过大,如何解决。

环境: AI-Sphere-Butler 问题描述: Github更新本地仓库到远程总是失败文件过大,如何解决。 解决方案: 问题核心在于 历史提交中仍然存在未被 LFS 正确追踪的大文件。 终极解决方案 (必须按顺序执行) 第一步:修…

测试用例的Story是什么?

测试用例的 Story(用户故事)是指描述某个功能或场景的具体用户需求,它通常以简短的业务背景用户操作期望结果的方式呈现,使测试人员能够理解测试的目标和价值。用户故事能够帮助团队更好地设计测试用例,确保功能满足用…

JavaScript系列(85)--包管理工具详解

JavaScript 包管理工具详解 📦 包管理工具是现代前端开发的重要基础设施,它帮助我们管理项目依赖、版本控制和包发布。让我们深入了解主流的包管理工具及其最佳实践。 包管理工具概述 🌟 💡 小知识:npm(N…

GB 44496-2024《汽车软件升级通用技术要求》标准解读|标准结构、测试方法、测试内容

2024年08月23日,我国工业和信息化部发布了GB 44496-2024《汽车软件升级通用技术要求》,该标准将于2026年01月01日起实施。该标准是一项强制性国家标准,适用于M类、N类和O类汽车。自该项标准实施之日起,所有需要申请道路机动车辆产…

基于springboot的学习社区博客

一、系统架构 前端:html | bootstarp | jquery | css | ajax 后端:springboot | mybatis 环境:jdk1.8 | mysql | maven 二、代码及数据 三、功能介绍 01. web端-注册 02. web端-登录 03. web端-首页 04. web端-文章明…

Java数据结构第十三期:走进二叉树的奇妙世界(二)

专栏:数据结构(Java版) 个人主页:手握风云 目录 一、二叉树的遍历 1.1. 前序遍历 1.2. 中序遍历 1.3. 后序遍历 1.4. 完整代码 二、二叉树的基本操作 2.1. 获取树中结点个数 2.1. 获取叶子结点个数 2.3. 获取第k层结点的个数 2.4. 获取二叉树的…

链表(LinkedList)面试题

1.1 ​​​​​​203. 移除链表元素 - 力扣(LeetCode) 分析:题目的要求是移除链表中值为val的所有元素,因此这道题需要使用循环解决问题,删除过程需要记录前一个结点的信息,所以需要使用双坐标解决问题。 …

Mysql 主从集群同步延迟问题怎么解决

目录 一、优化主库性能 二、优化从库性能 三、调整复制参数 四、使用半同步复制 五、启用GTID复制 六、增加从库数量 七、监控与报警 八、网络优化 MySQL主从集群同步延迟问题可以通过多种方法来解决。以下是一些具体的解决方案: 一、优化主库性能 增加硬…