- 1、本文档共80页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
演讲人:冯新宇
目录
仓颉简介
问题和挑战
仓颉之道
开发效率性能扩展性智慧化
编程语言的发展
1970s1990s
1970s
1950s
1980s2000s
1980s
1960s
2010s
仓颉
为什么要仓颉语言?生态+技术
繁荣HarmonyOS应用生态,打造最适合HarmonyOS的应用开发语言
提升开发体验和程序性能,为鸿蒙汇聚更多的应用开发者
发挥系统优势,垂直整合,最大化的将系统的竞争力透传给开发者
能力辐射其他行业,支持全场景应用开发
迎接产业/技术变革
智能化、空间化、一体化…
编程语言作为一个平台,有很大的技术演进和成长空间
仓颉语言发展历程
仓颉语言团队成立语言原型构建
仓颉语言团队成立
?
?仓颉语言项目正式通过立项
?与南大成立“下一代
程序设计创新实验室”
?与北大胡振江教授团队建立技术合作,开展元编程技术研究
?完成原型构建,性能竞争力显现
?建立国内首个编程语言技术社区,启动
“内测”
?2021.10华为HDC预告华为自研编程语言仓颉2019
2021
建立编程语言技术社区
正式立项
外部应用试点预览版发布
外部应用试点
?国内14家单位(工行、
?国内14家单位(工行、中移动…)首批加入仓颉外部试点
?多家高校(北大、南大、北航、湖大…)参与仓颉技术构建
?内测开发者突破3000,贡献代码突破130万行
内部应用试点
?规范、工具链、标准库核心能力基本具备
?在数通S380路由交换一体机首商用
?华为网管系统、服务器iBMC、云核业务软件选用仓颉试点
?2024.6.21华为HDC大会仓颉预览版发布
?工行、力扣
HarmonyOSNEXT版本选用仓颉开发
2023
2024+
仓颉语言发布
头部企业加入
头部企业加入
2022
仓颉语言首商用
/cn/videolist/enterprise/29ece690231a4705967dedb03916d97a
仓颉语言的应用案例
问题和挑战
问题和挑战
应用
应用
应用开发
框架/中间件
系统软件
?如何结合业务场景需求,寻求最佳的(开发)效率、性能和安全的平衡?
?如何做到Future-Proof?
问题和挑战
多样性
?场景多样:表达力和抽象的能力需求多样
?普通业务逻辑
?领域相关(造轮子):UI、AI、数据库、网络…
通用编程语言必然面临多样性需求,如何“兼顾”?技术如何“变革”?
通用编程语言必然面临多样性需求,如何“兼顾”?技术如何“变革”?
?端侧:各种终端设备,资源各异
?云侧:大内存、高并发…
?开发者群体多样:
?个人开发者
?企业开发者
?水平和技术能力的多样性
问题和挑战
移动应用开发需求
?高性能
?移动设备资源受限:性能、内存、功耗敏感
?人机交互的实时性要求高,避免卡顿
?下载、安装时间敏感:编译性能…
?高生产力
?敏捷开发,简洁开发范式
?多设备、跨平台
?设备/平台多样性:一多能力
?动态性
?动态发布、动态更新
问题和挑战
智慧化
?AIforLanguage?
?LanguageforAI?
仓颉之道
仓颉之道:开发效率和性能平衡发展
类型:
类型:动态静态
轻量业务开发
重业务开发动态脚本语言
重业务开发
仓颉
仓颉
性能
安全
仓颉
自动内存管理(垃圾收集)静态类型
开发效率静态类型应用开发语言JSPythonLuaKotlinRubySwift内存管理:动态静态JavaDartC#GoC++RustC系统编程注:此图仅为示意三类语言的划分,不追求各种语言在坐标中位置的准确性
开发效率
静态类型应用开发语言
JS
Python
Lua
Kotlin
Ruby
Swift
内存管理:动态静态
Java
Dart
C#
Go
C++
Rust
C
系统编程
仓颉之道:可扩展性应对多样性编程语言创新的机会在DSL!业务逻辑业务逻辑业务
仓颉之道:可扩展性应对多样性
编程语言创新的机会在DSL!
业务逻辑
业务逻辑
业务逻辑
eDSL/三方库/框架
eDSL/三方库/框架
eDSL/三方库/框架
…
“Onlypathleftis
domainspecificarchitectures”
可扩展性仓颉语言
可扩展性
仓颉语言
仓颉之道:可扩展性应对多样性
声明式UI
声明式开发模
文档评论(0)