

近日,一位 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](https://devclass.com/2025/01/29/more-react-more-app-like-github-engineer-outlines-future-ui-for-its-devops-platform/)
声明:本文为 InfoQ 翻译,未经许可禁止转载。