科技行业注重与时俱进,秉持创新不息的精神,编程语言和开发框架是影响应用体验和应用生态的关键要素,持续更新与发展至关重要。从编程语言Javascript/Typescript,Python,Java,Kotlin,Swift,Rust,ArkTS,再到开发框架Web,Flutter,SwiftUI,JetpackCompose,ArkUI等等的百花齐放,开发者面临着丰富的开发工具和语言的选择。为了更好地推动智能化发展,开发者必须关注万物互联到万物智联的产业趋势,积极拥抱变革,打造适应新场景和新应用模型的解决方案,为未来的智能化发展贡献力量。
2023年11月4日的第二届开放原子开源基金会OpenHarmony技术大会编程语言及开发框架分论坛上,一场关于万物智联时代应用软件开发技术方向与前景的探讨热烈展开。编程语言及开发框架分论坛邀请了OpenHarmony项目群技术指导委员会编程语言TSG负责人、华为编程语言首席专家冯新宇,OpenHarmony项目群技术指导委员会跨平台应用框架TSG负责人余枝强担任出品人。同时,来自华为、英特尔中国有限公司、支付宝(中国)网络技术有限公司、百度、字节跳动等科技企业的技术专家,与南京大学、北京航空航天大学等学术机构的代表共计9位嘉宾齐聚一堂,共同探讨了万物智联时代应用软件开发技术的方向与前景。
出品人:OpenHarmony项目群技术指导委员会编程语言TSG负责人、
华为编程语言首席专家冯新宇
出品人:OpenHarmony项目群技术指导委员会跨平台应用框架TSG负责人余枝强
英特尔中国有限公司WebAssemblyMicroRuntime开源项目技术委员会主席王鑫介绍WebAssembly是吸收了工业最佳实践与学术界前沿研究成果的一门程序语言,从C/C++最早作为支持WebAssembly的前端语言开始,至今有越来越多的前端编程语言如Rust,Go,Kotlin,AssemblyScript等已经支持将WebAssembly作为一个编译目标,促使一个基于WebAssembly的跨语言生态正在快速发展。会上也分享开源项目wasmnizer-ts在编译TypeScript到WebAssembly的技术实践。
英特尔中国有限公司WebAssemblyMicroRuntime开源项目技术委员会主席王鑫主题分享
支付宝终端基础平台技术部负责人黎三平带来《支付宝终端技术实践与思考》主题演讲,他指出在终端技术的迭代演进过程中具有一定的周期规律,从过去单领域工程化的阶段进入到跨领域整合的第二曲线阶段。那么,作为拥有数亿用户的生活服务平台,支付宝的终端技术是如何承载数字化的服务,特别是在面向多设备、多场景下的挑战是如何应对的?其实本质上就是通过编程语言和框架的升级迭代,来提供最佳的解决方案。
支付宝终端基础平台技术部负责人黎三平主题分享
随后,百度资深研发工程师、文心一言APP技术负责人樊中恺在介绍《AINative应用开发》时谈到AINative时代最具革命性的变化是:随版的产品功能迭代转化为随时的模型能力升级。而串联用户和产品的,则是对齐后的快捷交互和自然语言。
百度资深研发工程师、文心一言APP技术负责人樊中恺主题分享
华为2012实验室技术专家凌实认为面向下一代万物互联新生态,亟需突破传统架构,并且携手生态伙伴,方能共建全新的开放Web运行底座。他指出Web技术因其跨端能力和强动态性等特点,在应用开发中扮演着越来越重要的作用。面向应用的场景也对Web技术在性能、扩展性、用户体验等方面提出了相对传统网页场景不同的需求。因此,在OpenHarmony新生态下Web技术迎来了诸多的机会和挑战。
华为2012实验室技术专家凌实主题分享
随后,华为ArkUI技术专家兰守忍认为伴随着移动互联网的高速发展,跨平台框架经历了从Web技术、到原生渲染、到自渲染技术的发展历程。而ArkUI作为OpenHarmony原生应用开发框架,其具备简洁自然的声明式语法,并且已拓展到多个OS平台,基于一套主代码,可构建支持多平台的精美、高性能应用。此外,ArkUI开发框架开发效率上提升代码复用度,用户体验上提供UX一致性和极致的性能,业务上提供新特性快速更新的动态化能力,持续演进框架竞争力。
华为ArkUI技术专家兰守忍主题分享
南京大学计算机科学与技术系副教授,博导陈林则提出在软件生态系统中,混合语言编程会遇到诸多的问题与挑战。他表示混合语言编程是开放互联、协同演进的软件生态系统的自然选择。他主要从软件生态系统质量保障的视角,介绍了胶水代码自动生成和跨语言缺陷分析面临的问题和挑战。提出了一种基于参数化模板重写系统的胶水代码生成方法,可以高效地生成契合实际场景的JavaScript/C胶水代码,同时有效地阻止跨语言边界的软件缺陷。
南京大学计算机科学与技术系副教授、博士生导师陈林主题分享
北京航空航天大学教授、博士生导师史晓华谈到尽管JavaScript程序当前主要通过JS引擎执行,但随着WebAssembly成为越来越受欢迎的底层运行时系统,JWST给出了在WebAssembly运行时之上高效运行JavaScript的另一种选择。并指出JWST是一个将JavaScript程序静态编译为WebAssembly或者native代码的编译器,它采用QuickJS编译生成的字节码作为输入,编译优化后生成LLVMIR,最后通过LLVM后端编译器生成WebAssembly字节码或者nativecode。与此同时,JWST在JavaScript语言规范ECMATEST-262测试集上获得了不低于QuickJS的通过率。
北京航空航天大学教授、博士生导师史晓华主题分享
字节跳动SELab技术专家彭超带来了《移动应用GUI程序测试实践与挑战》分享,通过移动应用GUI程序测试挑战涉猎智能遍历、多机协同、基于函数变更的精准定向和拟人测试等能力,以及基于CV算法的图形异常断言能力带来强关联。
字节跳动SELab技术专家彭超主题分享
华为中央软件院编程语言实验室架构师徐潇在主题为《编程语言并发特性设计及面向移动应用开发的思考》演讲中指出,移动应用"天然异步”的特征决定了其开发语言需要具备对并发的支持,涉及语言、运行时、库及配套工具等。报告中介绍了华为编程语言实验室对上述特性的思考和相关语言特性的设计,以支持应用开发中的高并发编程。
华为中央软件院编程语言实验室架构师徐潇主题分享
通过各位嘉宾的精彩分享,不难看出,编程语言及应用框架是促使操作系统持续、高效发展的的重要组成部分,而应用生态的形成与建立才是最终的目标。OpenHarmony驱动了万物智联形态下应用软件开发的技术创新,从而更好地夯实了技术壁垒,加速了OpenHarmony应用生态的繁荣发展。期待更多合作伙伴加入到OpenHarmony应用生态中来,共同构建万物智联的美好世界。