编程语言

会议室:二层 2号会议厅A
出品人:贺师俊(Hax)

编程语言专场会关注 JavaScript、Dart、Swift等这些语言的特性和... 展开 >

专题出品人:贺师俊(Hax)

百姓网 技术顾问

贺师俊(网名Hax),百姓网技术顾问,十多年来一直活跃在前端和JavaScript社区。对多项Web标准有微小贡献,对Groovy语言并间接对Swift语言有微小贡献,近年来参与了诸多ECMAScript新草案的讨论。曾设计和实现Jedi语言并用于生产环境,对自研编程语言略有一点实践经验。三次担任QCon出品人并获得「优秀出品人」荣誉,也经常在其他众多技术活动中担任讲师、嘉宾和主持人。

地点:二层 2号会议厅A

专题:编程语言

编程语言专场会关注 JavaScript、Dart、Swift等这些语言的特性和应用,这些是目前大前端领域在用或者趋势性的语言。

by 王巍(喵神)

LINE
高级软件工程师
在分歧中发展——2019,我们能用 Swift 做什么

Swift 是 Apple 于 2014 年公开的专属编程语言,并且于 2015 年底开源。在公布初期,Swift 就因为其新鲜和强大的语法和易于上手的特性,备受期待。经过五年的发展和持续进化,Swift 5 终于迎来了 ABI 稳定,这也预示着 Swift 的“语言革命”暂告一个段落,这门语言也将有机会被运用在更广阔的领域。除了传统的 iOS 和 macOS App,Swift 近一年来也逐渐在其他领域和方向发力。依托于现有的大前端的一员的移动开发者们,相对于 Microsoft,Facebook 和 Google 的对等语言的解决方案,Apple 和 Swift 正在尝试一条与其他前端语言完全不同的全新的道路。

本次分享将会以 App 开发中的 Swift 为起点,向听众介绍这一年来 Swift 的几个大变化,包括 Swift 性能方面的改进以及 ABI 稳定为 Apple 平台未来的开发带来的影响等。之后着重对 Swift 以此为基础的分支发展做详细介绍,包括 Server、脚本以及 AI 等方面的变革。通过本次分享,希望能帮助对 Swift 有兴趣的开发者了解这门语言的最新情况,并鼓励听众在合适的情景下尝试使用 Swift 进行开发,以提高工作效率并获得更稳定的效果。

听众受益:

1. 理解 Swift 在 App 开发中相对于传统 Objective-C 解决方案以及对于其他选择 (Flutter、RN 等) 的优劣。
2. 理解当前 Swift 发展现状和 Swift 社区及核心维护者对未来的展望。
3. 知晓除了 App 开发之外 Swift 也非常适合使用在其他某些领域,以及对于对应领域现有方案的比较。

听懂我的演讲,需要具备这些知识储备:

1. 熟练使用一到两门任意编程语言 (不需要是 Swift),以及一定的任意端的工作经验。
2. 如果使用过 Swift/Flutter/RN/NodeJS/Python 等会更利于理解,但并不是必要。

by 于航

饿了么
资深前端工程师
WebAssembly — 技术变革,未来已来

WebAssembly 技术自 2015 年出现后便一直受到开发者们的关注。相较于 Chrome 早期推出的 PNaCL 等技术,WebAssembly 技术则更加开放和统一。WebAssembly 作为一种新的二进制格式,它可以方便地将 C/C++/Rust 等其他静态语言代码快速的“运行”在浏览器中,这一特性为前端密集计算场景提供了无限的可能。不仅如此,基于 WebAssembly 技术,我们可以快速的将基于 Unity 游戏引擎开发的大型游戏快速的移植到 Web 端,这一切都要归功于 WebAssembly 技术带来的前端运算性能的大幅度提升。WebAssembly 技术现在已经成为 W3C 的标准,众多浏览器厂商已经提供了对其 MVP 版本特性的支持。在 Google IO 2017/18/19 连续三届大会上,谷歌也将 WebAssembly 技术作为重点进行了公开的演讲介绍和推广。Post-MVP 版本标准更是会对诸如复杂类型引用(如 DOM 对象)、多线程和 GC 等特性提供支持。WebAssembly 技术所带来的、不仅仅局限于 Web 层面的技术变革在未来将变得势不可挡。

演讲提纲:

1、什么是 WebAssembly?

(1)JavaScript 的历史痛点;

(2)曾经失败的尝试:asm.js 与 PNaCL;

(3)Wasm 的基本用法:基于 Emscripten 的简单介绍;

2、Roadmap & Milestone

(1)Pre/Post-MVP 技术迭代:多个技术提案对 Wasm 发展带来的变化,如 Tail Call 支持、Reference Type、SIMD、GC、基于栈的多返回值、BigInt 等;

3、百花齐放、百家争鸣

(1)各个业务领域的 Wasm 尝试:边缘计算 - 终端人脸识别、直播/短视频解码、安全 - 基于 VM 的前端代码加密、游戏 - 基于 WebGL 的高帧率游戏等;

  (2)各个技术领域的 Wasm 尝试:Wasm 领域近两年出现的技术产品和尝试,如各类语言编译器和工具、运行时领域的 Wasmer、区块链领域 Ethereum 核心、前端领域的 Sharpen、Ammo.js 等;

(3)支持编译到 Wasm 的语言:C / C++ / Lua / Rust / Go ...

4、未来可期

(1)诞生于 Web,基于 Web 平台的更多可能;

(2)WASI:平台独立与 Runtime;

(3)构建生态:宏观层面的 Wasm 技术布局和潜在生态赋能,如 JS 框架、区块链、CDNs、Serverless、IOT、Portable CLI 等;

(4)真相和弱点:介绍现阶段的发展和可落地情况;

听众收益:

1. 了解 WebAssembly 技术的基本核心原理
2. 了解 WebAssembly 技术现阶段的发展情况
3. 了解 WebAssembly 技术所带来的实际业务改进和提升(优势)
4. 以及 WebAssembly 技术在未来的发展方向

听懂我的演讲,需要具备这些知识储备:

基本的 C/C++ 编程经验、前端 JavaScript 基本语法;

by 陈航

美团点评
高级技术专家
Event Loop、Future与Isolate - 单线程模型下的Dart异步编程模式

在前端开发领域被JavaScript一统天下的今天,Dart语言的出现无疑是一股清流。作为后来者,Dart集百家之长,拥有其他优秀编程语言的诸多特性和影子。凭借着Flutter火热的势头,作为构建Flutter的关键技术,越来越多的开发者开始慢慢了解、学习这门语言,并共同完善它的生态。


单线程模式下的Dart是如何从语言设计层面和代码运行机制上保证Flutter UI流畅性的,关于异步和并发编程,作为开发者的我们又该了解Dart的哪些知识呢?本次分享将带领听众从几个小例子出发,由浅至深循序渐进的了解Dart语言的Event Loop处理机制、异步处理和并发编程的原理,从语言设计和实践层面理解Dart单线程模型下的代码运行本质,从而懂得后续如何在工作中使用Future与Isolate,优化Flutter项目。

演讲提纲:
1. Dart单线程模型

2. Event Loop - Dart代码运行模式本质
(1)Dart事件处理机制 
(2)Event Queue介绍
(3)MicroTask Queue介绍

3. Future - 单线程模型下的Dart代码是如何异步执行的?
(1)Future运行机制分析
(2)异步执行与同步等待
(3)异常处理
(4)案例分析

4. Isolate - Dart中的“多线程”机制
(1)Isolate原理介绍
(2)Isolate的创建与销毁
(3)Isolate消息机制
(4)Isolate实战

5. Future与Isolate适用场景

 

听众收益:

1. 理解Dart单线程模型下代码运行本质
2. 懂得Dart异步处理和并发编程的原理和各自适用的场景
3. 懂得如何在项目中使用Future与Isolate优化现有代码

听懂我的演讲,需要具备这些知识储备:

有基本的Dart编程经验或一定的JavaScript经验,看得懂基本的Dart语法

交通指南

© 2020 Baidu - GS(2019)5218号 - 甲测资字1100930 - 京ICP证030173号 - Data © 长地万方
本网站图片存储由七牛云独家支持