当我们根据技术栈分类定出学习计划后,接下来就要选择合适的书籍学习了。
这里需要强调一下,以我的经验,对一门全新的技术学习,不建议完全通过看网上的文章。
因为网上的文章有好也有坏,坏的是真坑人,而且作为初学者,你没有什么经验,不知道文章是否有错误。
我举个例子,网上的链路跟踪,尤其讲 SkyWalking 的相关文章,很多都是错的,如果对链路跟踪不熟悉,就很难分辨出错误,到时候不慎把错误的观念用到了系统里,再改正就非常费劲了。
所以,入门阶段还是老老实实的找一些权威书籍看吧。
但是,权威书籍也有问题,因为书的受众不一样,如果一些书读的不合适,比如,选的书籍讲的都是过时的技术,又或者有的书籍讲的非常晦涩,理解起来非常费劲,那这些书就不合适我们去读,读了要么浪费时间,要么错用过时的技术。
怎么选择合适的书?
比如,我想学微服务设计,我发现微服务设计和领域驱动设计又是紧密关联的。领域驱动设计又有很多的书,有讲理论的,有讲实战的,甚至还有混杂着其他技术栈的。
我当时需要的是理论 + 实战的书,并且最好有在已有项目移植到微服务的相关案例的书。
接下来就是去网上看书评了。一般来说,现在豆瓣、当当、京东的书评和书籍简介都比较不错了。
不过,我更偏好英文书一些,所以,当时根据亚马逊的评价找到了一本《Implementing Domain-Driven Design》,这本书后来翻译成中文了,叫《实现领域驱动设计》—— 我粗看过,我认为翻译的不好。
事后证明,这本书确实解决了我的问题,让我摸清楚了域、子域、边界上下文之类的关键概念。