Skip to Content
Java 开发人员的 DevOps 工具
book

Java 开发人员的 DevOps 工具

by Stephen Chin, Melissa McKay, Ixchel Ruiz, Baruch Sadogursky
July 2025
Intermediate to advanced
344 pages
4h 17m
Chinese
O'Reilly Media, Inc.
Content preview from Java 开发人员的 DevOps 工具

第 6 章 软件包管理 软件包管理

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

当您阅读这句话时,在世界的某个角落,一行代码正在被编写。这行代码最终将成为一个工件的一部分,而这个工件将成为一个组织内部在一个或多个企业产品中使用的构件,或者通过公共存储库共享,其中最著名的是 Java 和 Kotlin 库的 Maven Central。

如今,可用的库、二进制文件和构件比以往任何时候都要多,而且随着全球开发人员继续开发新一代产品和服务,这些库、二进制文件和构件的数量还将继续增加。处理和管理这些构件 现在比以往需要付出更多的努力--越来越多的依赖关系形成了一个复杂的连接网络。使用不正确的构件版本很容易掉入陷阱,造成混乱和构建中断,最终导致精心规划的项目发布日期落空。

对于开发人员来说,现在比以往任何时候都更加重要的是,他们不仅要了解眼前源代码的功能和特异性,还要了解他们的项目是如何打包的,以及这些构件是如何组装成最终产品的。 深入了解构建过程本身以及我们的自动构建工具是如何在引擎盖下运行的,这对于避免延误和不必要的故障排除时间至关重要,更不用说防止大量错误逃逸到生产中了。

获取大量的第三方资源,为常见的编码问题提供解决方案,有助于加快项目的开发速度,但也带来了错误或意外行为的风险。 了解这些组件是如何被引入项目以及它们的来源,将有助于故障排除工作。 确保我们是内部生成的工件的负责任管理者,这将使我们在涉及错误修复和功能开发时能够改进决策和优先级排序,并有助于为发布到生产中铺平道路。 开发人员不能再只精通眼前代码的语义,还要了解包管理的复杂性。

为什么说 "构建并发布 "是不够的?

不久前,软件开发人员还认为构建一个产品是艰苦努力的结晶,有时甚至是史诗般的努力。 要在截止日期前完成任务,有时意味着要走捷径和使用记录不全的步骤。 从那时起,行业需求发生了变化,带来了更快的交付周期、多样化的环境、量身定制的产品、爆炸式增长的代码库和资源库以及多模块软件包。 如今,构建一个产品只是更大业务周期中的一个步骤。

成功的领导者认识到,最好的创新产生于尝试和错误。这就是为什么他们将测试、实验和失败作为生活和公司流程中不可或缺的一部分。

创新、更快地扩大规模、推出更多产品、提高应用程序或产品的质量或用户体验以及推出新功能的方法之一就是 A/B 测试。什么是 A/B 测试?根据哥伦比亚大学应用分析项目创始人冯凯泽(Kaiser Fung)的说法,A/B 测试最基本的是一种有百年历史的方法,用于比较两个版本的产品,以找出哪个表现更好。 如今,一些初创公司、微软等老牌公司以及其他一些领先公司(包括亚马逊、Booking.com、Facebook 和谷歌)每年都会进行超过 10,000 次在线控制实验。

Booking.com 对其网站上的每项新功能都进行了对比测试,从照片和内容的选择到按钮的颜色和位置等细节都进行了比较。 通过对多个版本进行对比测试并跟踪客户反应,该公司能够不断改进用户体验。

我们如何交付和部署由众多工件组成的多版本软件?如何找到瓶颈?我们如何知道我们正在朝着正确的方向前进?我们如何跟踪哪些工作做得好,哪些工作对我们不利?我们如何保持结果的可重复性,同时又能丰富品系?这些问题的答案可以通过捕捉和分析有关工作流程和人工制品的输入、输出和状态的相关、上下文、清晰和具体的信息来找到。这一切都要归功于元数据。

关键在于元数据

正如 W. Edwards Deming ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Pro Java Microservices with Quarkus and Kubernetes: A Hands-on Guide

Pro Java Microservices with Quarkus and Kubernetes: A Hands-on Guide

Nebrass Lamouchi

Publisher Resources

ISBN: 9798341662933