本书背景
大家好,欢迎来到码者。今天是码者分享第一本书,叫做Maven实战。了解Maven的人都知道,它对我们软件开发非常的重要,甚至可以说,它几乎改变了我们软件开发的工作方式。那么不了解Maven的人也不用担心,接下来码者将不定期的更新Maven实战这本书的内容,希望对你有些帮助。
在详细介绍Maven实战这本书之前,我们先简单来说一下这本书的背景。这是一本书10多年前写的书,可见这本书相对来说比较早了。特别是在技术领域,更新迭代的比较快,那么我们分享10多年前的书,可能有些人会觉书里的内容会不会已经过时了呢?在这这一点上,我们大可放心。但实事求是的说,确实书里有一些内容已经过时了,但这丝毫不影响这本书的价值。例如像Java编程思想这样的书,虽然书发布的比较早,但这本书的价值,值得我们多次阅读,并且每一次阅读,都会有不同的收获。
Maven实战这本书也是如此,也是值得我们多次阅读的,虽然这本书里有一些内容已经过时了,但这些过时的内容,并不是Maven的核心知识点,所以不影响我们通过这本书学习Maven。Maven作为非常重要的技术,它确实解决了我们软件开发的种种问题。但越是复杂的技术通常入门比较难,那么对于Maven也是一样的。想要学好Maven也不是件容易的事,并且我们在日常的工作中,常常会遇到很多Maven问题。但当我们遇到这些问题的时候,那么大部分人的常规做法就是先在网络上搜索相应的答案,或者是在官方网站上试图寻找答案。这样的方式到没有什么问题。就是不够高效。特别是在日常的工作中,可能有些bug是非常紧急的,需要我们快速的定位问题。这就需要我们完全深入的掌握一项技术。那么读书就是一种途径,希望通过码者,能将书里有价值的内容分享出来,让我们不但知其然还知其所以然。
通过这本书的名字,我们知道,这是一本实战书。实战书通常有一个特点,就是书比较厚,或者书入门比较难。所以要想完全掌握这本书里的内容,只通过码者的分享是远远不够的。我们希望通过码者的分享,降低入门的难度,也希望大家能够通过码者的分享,激起大家阅读此书的兴趣,希望大家静下心来好好阅读这本书,这才能将这本书的价值发挥到最大。这就是码者的目的,最后希望大家能够喜欢这本书。
作者介绍
下面我们介绍一下这本书的作者,我们希望通过码者分享的每一本书,都详细介绍一下本书的作者。也希望你能通过码者的分享记住这些技术牛人,也希望通过码者的分享能够让越来越多的人熟知这样的技术牛人,当我们在提到这些技术牛人的时候,我们并不会感觉到陌生,这也是码者的另一个目的。
这本书的作者叫做许晓斌,男,是阿里巴巴的技术专家。我们也知道能够通过阿里的面试,也间接的证明了作者的技术水平。他在阿里从事Java中间件开发和研发效率改进等工作。并且他除了是Maven实战的作者外,还是Maven权威指南的译者。并且他还负责维护过Maven中央仓库和Maven仓库管理软件Sonatype Nexus的开发工作。可见作者对Maven非常的熟悉。
出版信息
下面我们介绍一下这本书的出版信息,人们常说物以类聚,人以群分。对于书也是一样的,现在书的种类非常的多,特别是技术领域的书籍,通常同样的一项技术,有非常多的书籍供我们选择。那我们如何能选择到比较适合我们的书籍呢?码者建议所有我们在选择这些书籍时,可以以出版信息为一个角度,通常非常出名的出版社,大概率出的书的质量都是不错的。当然这是选书的纬度之一不绝对。本书的出版设为机械工业出版社。这个出版社大家一定不陌生,几乎我们看到大部分技术的书籍,都出字这个出版社。所以本书内容的质量,大家是可以放心的。
下面我们介绍一下这本书的出版时间,本书出版于2010年11月。距离现在已经有13年了,确实如上面所说,这本书确实已经比较老的。但还是那句话,这本书还是值得我们阅读的。并且在技术领域,无论怎么更新迭代,底层的实现方式大概率是不会变的。即使我们阅读的书相对来说比较早,但也一定会有相应的阅读价值,因为所有的技术都在原来的基础上更新的,所有即使我们阅读相关比较早的书也一定会让我们了解很多技术的早期实现。但这也不是绝对的,例如现在Java开发的主流版本为JDK1.8,如果你看的相关的书籍如果是JDK1.6的则不建议阅读,因为确实比较老了并且我们工作中几乎不会用到。但如果你就是做JDK开发的,则阅读JDK1.6的书籍还是有必要的,它可以让我们更加深入的了解技术原来的底层实现。
本书简介
下面我们介绍一下本书的简介。本书一共分4个部分。它们分别是基础篇、核心概念篇、实践篇、附录等。下面我们简单介绍一下这4篇的内容,希望能够为你做相应的参考。
- 基础篇
基础篇也就是入门篇,所以我们首先要介绍一下什么是Maven?怎么安装Maven?以及使用Maven时我们常遇到的问题是什么?
- 核心概念篇
在这一篇我们已项目为背景,详细介绍一下Maven的核心知识点,例如Maven的坐标与依赖,Maven的仓库,Maven的生命周期,Maven的插件等内容。由于本书中的项目架构有些过时,码者在介绍这篇内容时,将按照新的项目架构进行分享,并且尽量保持上面Maven知识点的覆盖。如有些读者觉的本项目还是不太适应,码者推荐你还是阅读本书的原项目介绍。
- 实践篇
实践篇,也可以理解为最佳实践。软件领域常说约定大于配置。在Maven中也是一样的,本篇将介绍Maven默认的约定,Maven模块的划分,Maven的依赖等内容,并会结合实际的项目开发经验来解决Maven在日常工作中遇到的问题。
- 附录
在这一篇,我们详细介绍一下Maven中POM的内容,已经Maven中Settings的详细配置。
本书读者
下面我们介绍一下本书的读者,任何一本书,都有适合它的读者。这本书也是一样的,由于Maven解决了项目构建、部署、打包等开发常见的问题,所以它非常适合Java程序员的阅读。如果你对Maven非常熟悉,也建议你好好阅读这本书,因为本书中还包括了,Maven插件开发等高级内容,可能会对你有些帮助。由于上面的内容是软件开发中常见的问题,所以即使不是Java程序员也是可以阅读的,并且Maven还支持项目管理等方面的内容,所以也是适合项目经理等角色阅读的。
本书意义
作者在2007年加入了一个新的公司新的团队,且这个团队之前用的是Ant。(不了解Ant的人不用担心,码者在后续的内容中会对这个内容进行补充)但由于Ant的弊端。作者在在公司的支持下开始了Maven的研究。并且在他的带头下建立了国内的Maven中文社区。且翻译了《Maven权威指南》这本书。后来作者加入了Maven之父Jason Van Zyl创建的Sonatype,并参与Nexus的开发并负责维护Maven中央仓库。正是因为这样的经历,使用作者希望能够写一本书,更贴近国内的技术人员的需求,能够降低大家学习Maven这项开源技术的难度,这也是作者写本书的意义。