写点什么

基于 Kotlin 协程实现异步编程

  • 2019-08-24
  • 本文字数:1295 字

    阅读完需:约 4 分钟

基于Kotlin协程实现异步编程

QCon北京2018大会上,Roman Elizarov 讲师做了《基于 Kotlin 协程实现异步编程》主题演讲,主要内容如下。


演讲简介


开发者越来越关注异步编程。现代软件系统都互相连接,保持通信。很多编程语言都加入了某种形式的异步支持,如 async/await。不过 Kotlin 用协程(coroutine)新颖地解决了这个问题。


我们一起看看基于 futures/promises 的传统 async/await 方式存在的问题,解释 Kotlin 基于 coroutine 和 continuation 概念提供的解决方案,从而了解为什么说 Kotlin 的编程模型更安全、更容易。


Asynchronous programming is on the rise. Modern software systems are connected and constantly communicating. Programming languages are adding some form of asynchronous programming like async/await. However, Kotlin had taken a fresh approach to this problem with Kotlin Coroutines.


In this talk, we’ll study various approaches to asynchronous programming, their evolution, differences and similarities. We’ll see the problem with the traditional async/await approach that is based on futures/promises and how the Kotlin’s solution that is based on concepts of coroutines and continuations is giving us safer and easier programming model.


讲师介绍


Roman Elizarov


JetBrains 工程师,Kotlin 开发团队成员


Roman Elizarov 有超过 16 年的职业软件开发经验。曾就职于 Devexperts,负责为领先的经纪公司设计和开发高性能交易软件。


他也是 Java 和 JVM 专家,擅长并发、实时数据处理、算法和现代架构的性能优化。Roman 目前在 JetBrains 参与 Kotlin 语言的开发。


Roman 于 2000 年毕业于圣彼得堡信息技术、机械与光学大学(ITMO)。现在也在该校开设了一门并发和分布式系统编程的课程。他在大学期间开始参与 ACM 国际大学生程序设计竞赛(ICPC)。从 1997 年到现在,他一直是 ICPC 欧洲东部和北部地区预赛的主裁判之一。


Roman Elizarov is a professional software developer with more than 16 years of experience. He had started his career at Devexperts, where he designed and developed high-performance trading software for leading brokerage firms and market data delivery services that routinely handle millions of events per second. He is an expert in Java and JVM, particularly in concurrency, real-time data processing, algorithms and performance optimizations for modern architectures. Roman currently works on Kotlin language at JetBrains. In 2000 Roman had graduated from St. Petersburg ITMO. He now teaches a course on concurrent and distributed programming in ITMO. During his undergraduate study he participated at ACM International Collegiate Programming Contest (ICPC). Since 1997 and until now Roman serves as a Chief Judge of Northeastern European Regional Programming Contest (NEERC) of ICPC.












完整演讲 PPT 下载链接


https://qcon.infoq.cn/2018/beijing/schedule


2019-08-24 17:135018

评论 1 条评论

发布
用户头像
无有效内容
2022-03-07 09:03
回复
没有更多了
发现更多内容

如何使用 NFTScan NFT API 在 Fantom 网络上开发 Web3 应用

NFT Research

API NFT\ NFTScan

软件测试/测试开发/全日制/测试管理丨Appium Server

测试人

软件测试

Ronin 与 Footprint Analytics 宣布合作,探索使用数据赋能 Web3 游戏

Footprint Analytics

区块链 加密货币

青椒云桌面:企业办公网络安全的现状及解决方案!

青椒云云电脑

云桌面 云桌面系统

软件测试/测试开发/全日制 |理解JavaScript的异步编程模型

测吧(北京)科技有限公司

测试

软件测试/测试开发/全日制 |构建基于机器学习的实时推荐系统

测吧(北京)科技有限公司

测试

Casper Labs 与 IBM Consulting 合作,透明度、审计能力的新方案

股市老人

低代码与小程序开发:简化创新,加速应用开发

EquatorCoco

小程序 低代码 程序开发

亚马逊API:快速查询全球商品数据的技巧!

技术冰糖葫芦

API

数据洞察力,驱动企业财务变革

智达方通

全面预算管理 财务转型 财务变革 数据洞察力

AWS改革6万人的销售团队以解决客户投诉问题

B Impact

为什么思科愿意高价收购一家云网络创业公司

B Impact

软件测试/测试开发/全日制 | 使用Vue.js构建单页应用(SPA)

测吧(北京)科技有限公司

测试

软件测试/测试开发/全日制 |理解CORS与跨域资源共享的应用

测吧(北京)科技有限公司

测试

打造自主品牌的体育赛事直播平台,无需开发源码搭建

软件开发-梦幻运营部

2023 IoTDB Summit:天谋科技高级开发工程师苏宇荣《汇其流:如何用 IoTDB 流处理框架玩转端边云融合》

Apache IoTDB

《产业结构调整指导目录(2024年本)》发布,模糊测试首次纳入

云起无垠

小红书搜索团队提出全新框架:验证负样本对大模型蒸馏的价值

小红书技术REDtech

算法 搜索 大模型 AAAI 负样本

14代酷睿亮相!华硕天选5 Pro新配置开售,比13代贵500元值吗

E科讯

软件测试/测试开发/全日制/测试管理丨自动化测试框架UI Automator

测试人

使用云桌面对于企业来说是否值得?

青椒云云电脑

桌面云 云桌面 云桌面解决方案 云桌面系统

JD商品详情数据接口

tbapi

京东商品详情数据接口 京东API接口 京东商品数据接口 京东商品数据采集

9 个让你的 Python 代码更快的小技巧

快乐非自愿限量之名

Python 开发 开发语言

OpenAI 自带的检索功能好用吗?定量测评带你深度了解!

Zilliz

Zilliz openai 向量数据库 zillizcloud

Casper Network (CSPR)2024 年愿景:通过投资促进增长

股市老人

2024 爱分析 · AI 与大模型高峰论坛:和鲸喜获两项殊荣!

ModelWhale

人工智能 大数据 数据智能 大模型 前沿

软件测试/测试开发/全日制/测试管理丨移动自动化测试框架Appium

测试人

软件测试

一文解析Web缓存代理

不在线第一只蜗牛

Web 前端开发 web开发

必须知道了解的40个SEO专业术语!

九凌网络

游戏被攻击,有没有什么好的解决办法

德迅云安全杨德俊

DDoS

软件测试/测试开发/全日制 |理解Web应用性能优化的关键技术

测吧(北京)科技有限公司

测试

基于Kotlin协程实现异步编程_QCon_Roman Elizarov_InfoQ精选文章