写点什么

GitHub DevOps 平台界面全面升级:工程师详解 React 驱动下的应用化体验升级

  • 2025-03-05
    北京
  • 本文字数:1641 字

    阅读完需:约 5 分钟

大小:794.43K时长:04:31
GitHub DevOps 平台界面全面升级:工程师详解 React 驱动下的应用化体验升级

近日,一位 GitHub 的软件工程师分享了该平台用户界面的演进历程与未来规划,其中涉及 React 框架的深度应用,以及微软推动用户从 Azure DevOps 向 GitHub 迁移的战略考量。

 

Joel Hawksley 作为 GitHub 首席工程师,主导开发了该平台专用的 Primer 设计系统,这套工具集支撑着 GitHub 全站的界面设计与开发工作。过去两周内,他先后在温哥华 Ruby 开发者会议(一周多前)和博尔德 Ruby 技术沙龙(二月初)发表演讲,向数百万日常使用 GitHub 的开发者群体介绍了平台设计体系的演进方向。

 

GitHub 技术团队曾在 2023 年的一篇技术博客 中提到,其核心架构始终基于 Ruby on Rails 单体应用,当时代码库规模就已经接近两百万行。Hawksley 称目前的系统中包含约 5000 个数据模型、4000 个 UI 渲染路由和 2100 个控制器组件,每月有近 650 名开发者参与代码贡献。

 

Hawksley 在其博客中 提到,GitHub 的核心设计目标之一是打造"更接近应用体验"的界面。这一决策背后有多个考量因素:首先是通过动态化 UI 弥补与 Azure DevOps 的功能差异,Azure DevOps 这款微软服务与 GitHub 存在功能重叠,且早在 2018 年微软收购 GitHub 前就已存在;其次,Linear 和 Cursor 等"应用化体验更突出"竞品的出现给 GitHub 带来了竞争压力;此外,移动设备使用率的持续攀升也促使了界面的革新。"如果用户整天都在用 app,传统网页体验就显得过时了。"他解释道。

 

这些发展的趋势推动了 GitHub 更多地采用 React JavaScript 框架。"我们现阶段在利用 React 开发新功能模块,特别是那些需要实现应用级交互特性的场景。"Hawksley 表示,但他也补充强调:"目前还没有整体重构现有代码的计划。"

 

虽然 GitHub 的 Primer 设计系统 专门为 React 组件提供了支持,但在其文档中也明确表示,该系统主要聚焦界面展示组件的开发规范,暂不涉及 API 数据交互层面的功能实现。

 

Rails 框架创始人 David Heinemeier Hansson 一直在倡导开发者避免使用需要构建步骤的 JavaScript 框架。他在 2023 年 10 月的技术分享 中强调:"更好的做法是充分利用现代浏览器原生支持的 JavaScript 和 CSS 特性,避免对浏览器本身就能解析的代码进行额外编译。" Rails 的默认前端方案采用 Stimulus ,这是一款专注于增强 HTML 交互的轻量级框架,配合 WebSockets 实现无刷新页面更新的 Turbo 技术栈。

 

尽管 GitHub 的工程复杂度远超普通项目,但其增加 React 应用占比的决策仍被外界认为是与 Rails 生态的发展方向相悖。不过从微软的技术布局来看,React 已被深度整合到包括 Office(利用了 React Native)在内的多个核心产品中。

 

Hacker News 社区对 GitHub 的 UI 发展路线持怀疑态度。有开发者在该讨论帖中指出:"GitHub 移动端应用功能残缺,移动网页版体验更糟",认为移动端相比网页版缺失了关键的功能。另有用户认为 GitHub 界面正在丧失其简洁的优势:"早期设计干净利落,现在功能冗余且易用性下降"。讨论的重点集中在两个方面:第一,开发者主要使用桌面环境,移动端优化是否值得优先投入;第二,通用场景下优秀的现代 UI 设计理念是否同样适用于开发工具场景。

 

Hawksley 提到的另一个话题也很值得关注,尤其对于关心 Azure DevOps 未来发展的企业级用户,该平台在企业市场占据重要地位且仍在积极开发中。根据 产品路线图来看,Azure DevOps 将持续改进 Azure Test Plans 等 GitHub 尚未提供的功能模块。与 GitHub 的 Projects 功能相比,Azure Boards 在功能完备性和成熟度上优势明显。

 

"微软收购我们时,确实是希望将 Azure DevOps 的用户迁移到 GitHub 上,"Hawksley 在温哥华会议上 如此说。随后他在 Hacker News 上澄清,称 PPT 中的表述有误:"准确说法应该是'微软希望为 Azure DevOps 用户提供迁移到 GitHub 的可能性'。"

 

从开发进度来看,GitHub 的迭代速度明显快于 Azure DevOps。虽然目前两个平台仍在并行发展,但 GitHub 显然拥有更为明朗的发展前景。

 

查看英文原文:More React, more app-like: GitHub engineer outlines future UI for its DevOps platform

2025-03-05 18:388778

评论

发布
暂无评论

设计原则——依赖倒置原则

GalaxyCreater

架构

架构师 0 期 | 架构师怎样实现架构目标?

刁架构

设计模式 极客大学架构师训练营

RPC实战与核心原理-学习笔记(4)

程序员老王

作业2

annie

极客大学架构师训练营

架构师训练营-第二课作业-20200617-设计原则???

👑👑merlan

架构设计 软件设计

架构培训 -02 学习总结 架构师实现自己架构的主要手段

刘敏

深入理解JVM垃圾回收机制 - 运行时栈帧的内存变化

Skye

深入理解JVM 运行时栈帧

一周信创舆情观察(6.8~6.14)

统小信uos

新基建 信创

极客时间 - 架构师训练营 - week2 - 课堂笔记

毛聪

Week2学习总结

铁血杰克

架构师训练营第二周命题作业

whiter

极客大学架构师训练营

架构师训练营第二周总结

时来运转

编程的本质

GalaxyCreater

架构

极客大学架构师训练营第二周学习总结

竹森先生

设计模式 架构设计 极客大学架构师训练营 面向对象设计原则

架构师培训第二周作业

talen

拼多多市值快 1000 亿美元了

池建强

创业 拼多多

极客时间 - 架构师训练营 - week2 - 作业

毛聪

架构师0期week2-作业

小高

02架构的方法论

ashuai1106

架构设计 极客大学架构师训练营 架构设计原则

依赖倒置原则理解

Thrine

第二周作业

王鑫龙

极客大学架构师训练营

外包程序员的幸福生活

四猿外

架构师训练营第二周总结

烟雨濛濛

架构师训练营第二周作业

时来运转

学习总结 -- Week2

吴炳华

极客大学架构师训练营

第二周课程学习总结

腾志文(清样)

作业

架构作业-第2周

铁血杰克

【总结】框架设计之架构师实现自己架构目标的主要手段

魔曦

极客大学架构师训练营

设计原则

GalaxyCreater

架构

依赖倒置原则

清风明月

极客大学架构师训练营

豆瓣9.0,35万读者“搜不到信息”的神秘作者,我们帮你找到了

华章IT

JVM 虚拟机 深入理解JVM Java 25 周年 周志明

GitHub DevOps 平台界面全面升级:工程师详解 React 驱动下的应用化体验升级_云原生_Tim Anderson_InfoQ精选文章