写点什么

领英通过实施消息客户端 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:002771

评论

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

工程师们看过来|这是我见过的IT圈最“潮”的产品发布会了!

观测云

程序员 可观测性 产品发布会 IT工程师 监测

不知道OpenCLA的注意啦!(OpenCLA签署须知)

Jianmu

开源项目 开源社区 建木CI CLA 贡献者许可协议

列举GaussDB(DWS)常见的查询时索引失效场景

华为云开发者联盟

索引 GaussDB(DWS) 隐式类型转化 GIN索引 analyze

开发改了接口,经常忘通知测试,有什么好的解决方案吗?

Liam

测试 Postman 自动化测试 测试工具 测试自动化

OpenHarmony技术日圆满举行 | 3.1 Release版本重磅发布,生态落地初具规模

OpenHarmony开发者

OpenHarmony 技术日

基于Sharding-JDBC的订单分库⽅案

领创集团Advance Intelligence Group

Sidecar 模式的机制与应用

全象云低代码

Kubernetes 容器 低代码 后端技术 Sidecar

使用车载小程序,共建车联网联合共赢生态

Speedoooo

车联网 物联网 智能设备 小程序容器 车载设备

在亚马逊云科技上搭建静态无服务器 Wordpress,每天仅需 0.01 美元

亚马逊云科技 (Amazon Web Services)

Serverless CDN WordPress

阿里云人工智能创新发布-工业五金图片搜索

视觉智能

拍照购物 以图搜图 图像搜索 拍立淘

80+产品正通过兼容性测试,OpenHarmony生态落地已初具规模

科技汇

设计千万级学生管理系统的考试试卷存储方案

锎心😌😌😌

一看即会:Serverless 应用开发的 7 个实战小技巧(文末附好礼)

阿里巴巴云原生

阿里云 Serverless 架构 开发者 云原生

免费IT自动化运维平台- ETL调度批量管理工具 TASKCTL 8.0 作业设计功能使用

敏捷调度TASKCTL

数据仓库 数据治理 运维自动化 ETL任务 TASKCTL

KPI与360度考核结合的应用落地方案

明道云

MySQL数据库之数据查询

乌龟哥哥

4月月更

合作创新,携手共赢!共筑坚实数字底座!

天翼云开发者社区

系统

如何成为一名亚马逊云科技 Community Builder

亚马逊云科技 (Amazon Web Services)

Cloud 亚马逊云科技 career

网站的FAQ页面应该怎么写?

小炮

FAQ

以南大通用为例,讲一讲如何完成与龙蜥操作系统的兼容验证

OpenAnolis小助手

操作系统 龙蜥社区 南大通用 兼容验证

天翼云:加速推进云网融合共赢算力时代

天翼云开发者社区

大数据

智能手表的下半场,机遇与挑战并存

Speedoooo

物联网 小程序容器 智能手表 智能穿戴

一个平面设计师的异想世界

万事ONES

研发管理 设计师 ONES workbalance

Docker 镜像知多少?

Daocloud 道客

云原生 Docker 镜像

智慧运维平台之全息监控

鲸品堂

运维 通信 运营商

松灵学院 | Scout mini 仿真指南

松灵机器人

人工智能 机器人 ROS 移动机器人

天翼云Web应用防火墙(边缘云版)拦截WordPress Elementor漏洞的说明

天翼云开发者社区

防火墙

OpenHarmony技术日成功举办,全球下载次数高达6300万

科技汇

风险与机遇并存,数据分析厂商如何突围?

ToB行业头条

直播预告|企业云原生 IT 成本治理方案解析

阿里巴巴云原生

阿里云 容器 云原生 cncf 直播预告

区块链赋能不动产—易居EBaaS在不动产领域应用

BSN研习社

区块链

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