【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

领英通过实施消息客户端 SDK,将开发效率提高了 10 倍

  • 2023-04-25
    北京
  • 本文字数:1458 字

    阅读完需:约 5 分钟

领英通过实施消息客户端 SDK,将开发效率提高了10倍

领英在近期发布的文章《如何通过消息客户端 SDK 大幅提升开发效率》中称,通过使用 SDK 抽象数千行代码至共享库,他们得以削减跨多平台应用的代码维护成本。在一个用例场景下,新 SDK 在构建全新领英体验时可以节省四十余名开发者数周的劳动。

 

领英的高级员工工程师 Michele Ursino 和领英的工程负责人 Joe Xue 对 SDK 是如何提高生产力的解释如下:

 

我们的 Messenger SDK 通过将数千行代码抽象为共享库,减少了跨多个应用程序的代码维护成本,极大地提升了开发人员的工作效率。在部分情况下,我们实现了跨十倍的代码数量减少,从三千多行减至几百行。其结果是,开发人员现在可以在几周内创建新的信息体验,而非原先的几月或几季度。

 

Ursino 和 Xue 称,通过创建一个跨领英消息体验的共用前端平台,他们已经证明了这种可被他人复制、用于自己核心功能的模式:

 

同领英一样,拥有多个大型应用的组织应重新考虑应用构建的方式。与其将应用当作独立个体,组织可以在可重复使用的平台库之上,建立轻薄的应用层,按需暴露各类技术支柱的高级能力乃至用户界面。

 

领英在2020年年中完成了其消息体验的重构。不过,据 Ursino 和 Xue 说明,“在运行领英产品的设备上实现完整消息可靠性和功能性是一项复杂的任务,不仅工作量繁重且对细节要求颇高。”为确保最大限度的一致性和可靠性,领英对其消息传递平台进行了扩展,涵盖了客户侧设备和前端 API 中的消息数据管理。领英的消息传递团队将所有消息传递功能打包为一个全功能的数据层 SDK,用于解决客户端应用中消息传递数据的管理复杂性问题。

 


来源:https://engineering.linkedin.com/blog/2023/unifying-messaging-experiences-across-linkedin

 

领英将新的 SDK 分为两类库:用于应用程序 API 中消息整合的 API 库(“messenger-api”),以及用于表示设备本地信箱的客户库(messenger-data)。

 

其中,API 库有三项功能:桥接客户与后端消息传递平台基础设施间 GraphQL 请求、允许主机 API 自定义消息传递 API 的行为,以及允许其他系统使用 GraphQL 对消息传递数据进行装饰。该 API 库实现了对外部系统消息传递数据的错误检查,并暴露了一个 GraphQL 模式,其中包含每个平台中客户 SDK 库用于获取信息的查询。这种架构方式允许主机 API 代码对每个 API 请求生命周期中,后端消息平台传至前端的消息数据进行自定义转换。

 


来源:https://engineering.linkedin.com/blog/2023/unifying-messaging-experiences-across-linkedin

 

客户库为消息传递实现了一个以事件为驱动的数据层(EDDL),为客户设备中的信箱数据提供了实时的表示,且与后端中实际的信箱数据进行同步。该 API 库意在保障最大化消息传递可靠性,允许应用程序开发者轻松访问信箱数据。此外,其所采用的反应式方法也支持了设备中对话和消息的快速渲染和屏幕刷新,即时地将任何数据变化通知主机应用程序代码,从而允许必要的用户界面刷新。

 


来源:https://engineering.linkedin.com/blog/2023/unifying-messaging-experiences-across-linkedin

 

领英已经将其旗舰应用程序的消息传递功能迁移至 Messenger SDK,为全客户平台提供一致且可靠的消息传递体验。该 SDK 带来了跨平台的功能平等性以及现代化的代码库,提高了稳定性和可靠性,也提升了开发人员的生产力。


原文链接:

LinkedIn Improves Development Productivity by 10x Implementing a Messaging Client-Side SDK


相关阅读:

领导力匠艺:像开发人员打造代码那样打造你的领导力

当你的技术栈不能满足每个人需求时,下一步是什么呢?

提高软件质量:如何处理数据发现更多 Bug


2023-04-25 08:002534

评论

发布
暂无评论
发现更多内容

如何用大模型解决产业场景实战问题?案例精讲教程来了!

飞桨PaddlePaddle

人工智能 百度飞桨 文心大模型

Kafka为什么这么快?

java易二三

Java kafka 程序员 计算机

为企业连接一切,用友BIP商业网络正式发布!

用友BIP

商业网络

总有陪伴在身边,皮皮App全新slogan亮相,一起放肆嗨

联营汇聚

百亿补贴通用H5导航栏方案 | 京东云技术团队

京东科技开发者

移动开发 H5页面 企业号 8 月 PK 榜 导航栏

APP自动化之Toast识别

霍格沃兹测试开发学社

相约清华!AI药物研发大赛总决赛明日开幕

飞桨PaddlePaddle

人工智能 paddle 百度飞桨 飞桨国赛

混合App的开发占比越来越大,大厂们纷纷转向此类开发

没有用户名丶

基于 Java +Vue开发的企业级数字化采购系统 (SRM)

金陵老街

医疗器械行业的MES系统解决方案

万界星空科技

解决方案 MES系统 医疗器械

KubeEdge Sedna v0.6 & Ianvs v0.2 重磅发布:边云协同终身学习全面升级

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

NFTScan | 08.21~08.27 NFT 市场热点汇总

NFT Research

NFT\

Appium WebView 技术原理

霍格沃兹测试开发学社

2023,到底是哪些ToB公司在正向增长?

ToB行业头条

【iOS逆向与安全】编写一个使应用保持前台运行的系统插件

小陈

安全 逆向 iOS逆向 ios安全 ios 开发

老铁们,还记得PowerShell吗?

为自己带盐

PowerShell

租赁LED屏幕费用预算指南

Dylan

解决方案 LED LED显示屏

区块链发币系统搭建,数字货币挖矿系统软件开发

V\TG【ch3nguang】

数字货币交易所开发 区块链技术应用开发

软件测试案例 | 某教务管理平台系统的系统测试总结报告

TiAmo

测试 性能测试 功能测试

NFT/DAPP链游系统智能合约搭建开发

V\TG【ch3nguang】

DAPP系统开发 NFT链游

Jmeter 参数化功能实现注册登录数据驱动

霍格沃兹测试开发学社

Royal TSX for Mac:强大的远程连接管理工具,轻松高效

晴雯哥

APP自动化如何使用参数化用例

霍格沃兹测试开发学社

重磅首发!全球首款一体化智能化MOM平台!

用友BIP

智能制造

docker安装redis

java易二三

Java redis 编程 程序员 计算机

虚拟币交易平台搭建,数字货币交易所系统源码开发

V\TG【ch3nguang】

数字货币交易所开发 虚拟货币

Lightroom Classic 2023 for Mac(Lrc2023图像处理软件) v12.4激活版

mac

图像处理软件 苹果mac Windows软件 lrc2023 Lightroom Classic

CorelDRAW Graphics Suite 2022 for Mac(矢量图形设计工具) v24.4.0.636激活版

mac

苹果mac Windows软件 CorelDRAW2022 矢量图形设计软件

领英通过实施消息客户端 SDK,将开发效率提高了10倍_语言 & 开发_Eran Stiller_InfoQ精选文章