软件研发方法

会议室:二号厅B
出品人:徐潇

目前应用软件的规模在急剧增大,对于超大规模的软件开发来说,能否做到对架构腐化及时... 展开 >

专题出品人:徐潇

华为编程语言架构师

徐潇,华为编程语言首席架构师,领域编程语言高级专家,拥有软件领域十余年工作经验。2010年加入华为以来,主要从事编译器、领域 DSL、物联网端侧轻量化引擎和框架等方向的设计和开发,数次获得中央软件院总裁嘉奖。当前主要担任编程语言 EDSL 相关能力的设计工作。

曾作为首席架构师带领团队推出面向物联网设备侧应用开发的轻量化 JavaScript 引擎——MapleJS 及其配套开发工具,深度适配 HiLink 开发平台等华为产品,帮助厂商快速接入华为生态链,并在华为2019年的开发者大会(HDC)上结合 LiteOS 为 HiLink 智能家居开发所带来重大创新变革。

地点:二号厅B

专题:软件研发方法

目前应用软件的规模在急剧增大,对于超大规模的软件开发来说,能否做到对架构腐化及时监测与重构,是一件事关业务兴衰的头等大事。而依靠专家人工进行架构评估、设计优化与重构的传统方式,无论从人力投入,还是从及时性上,都越来越难以适应超大规模软件开发的需求。

所以,这就需要运用自动化的方式,对软件产品的架构、架构质量及其趋势进行监测,并量化、可视化,供架构师及开发团队参考,以便理解架构,支撑其开展重构,使架构不断趋向合理,平滑演进。

除此之外,编程语言的发展与软件开发技术的发展密不可分。本专题主要关注各个公司的软件研发经验之外,还会关注例如 Rust、Swift、Kotlin、TypeScript 等新型编程语言的应用和发展。

by 李征

去哪儿网
机票目的地事业群技术总监

对内 DDD,对外 API 是去哪儿网业务研发团队,在后疫情时期提出的练内功的基础上,结合自身特点,提出技术练内功的方向。

在过往的业务增长的情况下,很多关于系统复杂度的思考并不够深入,而进行业务转向、系统有序化发展时就会发现哪些系统提供了哪些能力、如何提供能力、谁提供了这些能力,反而成为了未知的怪兽。而解决这一系列的问题,是可以通过 API 的露出与治理,将复杂业务的模型展露在外,通过外部推动业务模型的迭代更新来完成,从而让系统进化到有序发展的道路上。

本次将系统的介绍去哪儿网在 API 治理的道路上总结的实践方法、落地路径,以及过程中基于 API 治理延伸衍生出的方法论及解决问题的方法。

演讲提纲:

  1. 背景介绍&行业分析
  2. API 治理实践方案路径
    • API 从无序到有序
    • 潜移默化、成为提效帮手
  3. 结合现状的落地
    • API 治理平台
    • API 治理的延伸
  4. 场景案例展示
  5. 总结与思考
    • 服务治理源于业务,需要升华提炼,以从根本上解决核心问题
    • 有理论依托的 API 治理,最终才能落地,抽象、抽象、再抽象
    • 结合场景与基建,完成符合实际要求的模式落地

你将获得:

  1. API 治理可达到的效果预期,及对于团队、系统、业务的价值
  2. 了解去哪儿网在 API 治理方面的核心思路与最佳实践
  3. 给予完成 API 治理的一条可完成的有效实践路径

by 陶文

乘法云
CTO

如果没有做好业务逻辑拆分,可能在项目晚期造成以下三种问题:拆了微服务之后做一个需求要拉很多人,代码写进来了就再也删不掉了;要么放任自流,1个App里有4种日期选择方式。要么用力过猛,抽象出来的营销接口动辄几百个参数;线上出了问题很难定位到谁引起的,本地做不了任何有意义的测试,反馈周期特别长。

本次演讲将对以上问题做一个量化的度量,同时对现有的实践进行反思,并提出一种代码防腐的“新”做法。

演讲提纲:

  1. 描述业务逻辑拆分做得不好会有哪些问题
  2. 引起听众共鸣:本演讲对小公司有什么意义,对大公司有什么意义
  3. 分析 Autonomy 问题,并提出量化指标
  4. 分析 Feedback 问题,并提出量化指标
  5. 分析 Consistency 问题,并提出量化指标
  6. 讨论中台的价值,以及为什么中台实践中会遇到问题
  7. 代码腐化似乎是无法阻挡的趋势,如何实现“保鲜剂”?

你将获得:

  1. 对于软件工程的“最佳”实践可以从可量化的角度进行思考,而不是货物崇拜式的模仿
  2. 能够认识到“业务复杂”的本质是什么造成
  3. 促使听众重新思考自己做过的选择

by 韩冬

EMQ
CTO,首席开源官

在每年的 StackOverflow 年度开发者调查上,最受喜爱的编程语言榜单里从来不会缺席 Haskell,但她也从来没出现在使用最多的编程语言排行榜上。

是什么造成了这门纯函数式编程语言在工业应用和学术讨论圈子一冰一火的局面?作为国内当之无愧的 Haskell 工程化第一人,我今天给大家带来我们在 EMQ 开发流数据库产品 HStream 实践中的第一手经验,为什么我们选择使用 Haskell 来打造新一代的流数据处理平台,在工程实践中,Haskell 又有着哪些优势和不足?

演讲提纲:

  1. 我们为什么选择 Haskell
    • 流数据库的应用场景
    • 与 Erlang、Golang、Java 的对比
  2. Haskell 工程生态现状
    • 基础库、网络库
    • Z.Haskell 项目
  3. 工程中的优势和不足
    • Haskell 和高并发
    • GHC 运行时特性
  4. 未来工作
    • 完善工程生态
    • 语言、运行时改进
  5. 函数式编程范式的思考

你将获得:

  1. 了解国内最大的 Haskell 团队的实践情况
  2. 了解 Haskell 工程化中的挑战和收益
  3. 了解函数式编程范式

by 章淼 博士

百度智能云
架构师

随着产业的升级和人力成本的增长,软件工程能力受到越来越广泛的关注。本次演讲将重点分享以下几个内容:为什么要重视工程能力;什么是工程能力;怎么加强工程能力。

演讲提纲:

  1. 为什么要重视工程能力
  2. 什么是工程能力
    • 工程能力的定义
    • 工程能力涉及的范围
  3. 怎么提升工程能力
  4. 关于工程能力建设的其它思考

你将获得:

  1. 增强对工程能力的理解
  2. 了解如何提升自身及团队的工程能力

by 徐潇

华为
编程语言架构师

领域特定语言(DSL)有助于提高软件开发效率和质量,已被广泛应用于软件开发各个领域。但从0设计一门 DSL,并构建其配套的编译器工具链、IDE 等难度高,工作量大,限制了其应用范围。相比较之下,内嵌式领域特定语言(EDSL)由于可以复用宿主语言(通用编程语言)的编译工具链和开发环境,降低了开发 DSL 的门槛;同时随着编程语言的发展,现代编程语言支持的语法“糖”、反射、宏等特性,如同提供了一系列构建 EDSL 的“工具”,很好的助力 EDSL 的发展和应用。

本次演讲在介绍 EDSL 基本概念基础上,主要关注编程语言提供的一系列构建 EDSL 的“工具”,让软件开发者了解其实现模式,并可以根据自己所从事领域的特征进行实践。

演讲提纲:

  1. EDSL 基本介绍(概念、分类和实现模式)
  2. 业界案例:EDSL 的实现和收益
  3. EDSL 的下一步思考

你将获得:

  1. 学习和了解 DSL 与 EDSL 的概念
  2. 了解基于通用编程语言特性构建 EDSL 的方法

by 杨政权

腾讯云
Serverless 部门专家架构师

云原生架构逐渐成为主流的技术选型,也看到越来越多的落地成功案例和使用场景,但是很多对于云原生架构的关注和讨论大多围绕在技术层面,对于软件研发流程优化、软件研发效能等维度关注度远远不及技术层面;业界和广大的开发者,对于其真正为软件研发带来的价值理解还不够。

本次演讲希望从组织认知模型、团队组织结构设计等角度来分析云原生架构对于软件研发效能提升的帮助,以及当下所面临的机遇和挑战,结合个人的实践经验分享提升研发效能的具体实践。

演讲提纲:

  1. 软件研发效能的演变
  2. 原生时代的软件研发效能挑战
  3. 从组织认知模型看软件研发效能
  4. 云原生架构如何加速组织认知模型的转变
  5. 从团队组织结构看软件研发效能
  6. 人员能力建设于软件研发效能
  7. 对于云原生时代软件研发效能管理的展望

你将获得:

  1. 系统化了解云原生架构对于软件研发效能提升的价值
  2. 了解软件研发效能概念和当下的挑战
  3. 了解云原生时代有哪些助力于软件研发效能提升的手段
  4. 从组织结构、组织认识模型的角度重新思考软件研发效能

by 蔡超

Mobvista
技术 VP 兼首席架构师

反应式编程(Reactive Programming)毫无疑问已经成为了目前最热门的话题之一。 在多数开发人员眼中 ReactiveX(reactive.io)就是反应式编程,ReactiveX 也得到了越来越多的编程语言的支持及被越来越多的组织所使用。然而,当我们纵观历史,你会发现反应式编程并不只是 ReactiveX,反应式编程首先是一种程序设计的思维模式。目前,随着大规模系统对高可靠性和高实时性要求的提升,软件的设计及实现都面临挑战,反应式设计及编程能够帮组我们更好的利用现有分布式多核计算环境来应对这样的挑战。而 ReactiveX 则向它在定义中提到的一样“一种基于可观察(Observable)数据流的用于异步编程的 API”。

本讲座将重点放在阐释反应式编程的思维模式,并与当前的被动式(Passive)编程模式向比较,帮助理解听众理解反应式编程特点及优势。

演讲提纲:

  1. 统一编程模式(远程/本地,单线程/多线程,单机/多机)的发展回顾
  2. 软件面临的新挑战
  3. 反应式系统设计
  4. 反应式编程思维模式
  5. ReactiveX 编程实例简介
  6. RxGo(Golang Reactive Extension)的编程注意事项及陷阱

你将获得:

真正了解反应式编程背后的机理,正确的将这一思想应用于日常程序设计工作,避免只是使用相关 LIB 的生搬硬套。

交通指南

北京国际会议中心

Beijing International Convention Center
地址:北京市朝阳区北辰东路7号
  • 微信咨询

  • 电话咨询

    联系电话:+86 17310043226

微信联系我们

小姐姐