<audio id="audio" title="用户故事2｜在库乐队中，你就是最好的架构师" controls="" preload="none"><source id="mp3" src="https://static001.geekbang.org/resource/audio/0a/9c/0a8ee4faf79b59a53136d4e79019099c.mp3"></audio>

你好，我是王秀文，一名后端架构师，戏称自己是摇滚码农。感谢编辑的邀请，我来唠叨唠叨我关于音乐的一些理解，以及学习库乐队的一些思考和想法。

可能在很多人的印象里，玩音乐的都有一头长发，写代码的都穿格子衬衫。事实上，专心写Bug的码农，也有对美的追求。

我们会抢鞋，会想玩音乐，会去野长城探险。你看，我们码农的精神世界也很丰富，是不是？当然了，我们还有降噪耳机，有风格各异的机械键盘，还有精致的摆件、机械风的收音机。你看，我们码农的桌面，也从来不缺摇滚范儿。

## 玩音乐，可能你并不需要会一门乐器

很小的时候，偶然一次从收音机里听到了电吉他的声音，就被它圆润的音色吸引了。于是我向父母再三保证，买了吉他之后一定学，绝不浪费。就这样，我得到了人生中第一把红棉吉他。

没有老师教，自己也不懂乐理，只是跟着一盘DVD里面的示范教学，再加上自己瞎琢磨，最后竟然也用一把民谣吉他，学会了第一首古典吉他曲。

我也兑现了自己的承诺，一有时间就拿着吉他练习。手指上的茧子长了又消失，消失了长。慢慢地，我也学会了第一把位的咪型指法，认识了和弦。后来又有了吉他老师，照着C、F、G、Am的指法图，右手弹53231323，我就可以弹唱一些简单的曲目了。不过，之后因为学业繁重，加上学乐器确实花费时间和精力，直到读了大学才又捡起来一些，这是后话了。

但是，小时候培养的这种对音乐的感觉，以及学习音乐的记忆，仍然很深刻。而现在有了库乐队App，以往复杂难按的和弦，现在只要配上适当的节奏型，然后轻点几下，就能制作出一段不错的音乐片段。这是我初学库乐队时就非常欣喜的一点。我不需要会乐器，就可以通过库乐队来用不同的乐器去制作音乐片段。

哪怕身旁没有鼓手，没有贝斯和伴奏吉他，但是用库乐队简单录制几个小节，自己就可以抱起吉他玩一段即兴了。

如果还不尽兴，通过一个USB转换器，甚至可以给手机接上MIDI键盘，用手机里的库乐队来制作音乐，这样制作音乐片段又会方便许多。

如果不追求手感，也不追求配重，那么25键的MIDI键盘甚至都可以装在自己的电脑包里。这就是玩库乐队的便捷之处，身边没有乐器也没关系，因为库乐队支持键盘、合成器。而且MacBook上，库乐队用普通的键盘也能弹奏。

坦白说，我刚开始接触库乐队的时候，觉得很简单了，就是在屏幕上点按几下，让不同的乐器发出声音，录制下来就行。但是跟着邓老师深入学习了几节课，才发现了很多在库乐队里微操作，很多按钮也是之前玩的时候从来没有注意到的。

这就让我想到了  Redis  的  string  类型，虽然天天用，但是在什么情况下占用多少空间，很多人就说不出来了。因为不知道细节，就很难准确地预估容量，那么架构也就是空谈了。

不过，库乐队也是有自己的局限性的。著名萨克斯管演奏家凯丽·金在一次采访中说曾经说：“萨克斯比其他乐器的优势就在于它直接用人的呼吸发声。”这也就是说好的音乐不光要有节奏，还有很多细节，这就是库乐队的局限了，内置的功能总是有限的，自动弹奏的节奏型也就那几个。

不过这种局限性，库乐队完全也可以通过连接外接设备，把劣势转变为优势。因为连上外接设备，比如键盘，那就可以自己弹奏，就会产生更神奇的效果。这也是我购买邓老师课程的原因。

我在目录上看到邓老师会在第三模块专门讲外接设备，包括话筒、键盘、声卡等，这也是我最期待的几节课，我想只有把这些设备都用上，就真的会有邓老师所说的“一个人就是一个乐队”的效果了。

但是在我看来，随时随地拿起手机玩音乐才是库乐队的最大优势。漫长的通勤，编译部署的空当，不妨打开库乐队，给自己放个小假。

## 在库乐队中，你就是最好的架构师

我的工作是架构师，所以我在理解音乐的时候，会把音乐和我的工作进行类比，这样一来，感觉音乐和工作都更有意思了。

“指挥家从来自己都不演奏任何乐器，但指挥家用他的影响力使所有的乐师更加出色。”

如果说一个项目需要一个好的架构师，那么一首好听的曲子就需要一个“独裁”的指挥家。编辑库乐队的音轨，就是细致地调整每个乐器的细节，让它们搭配起来，互相协作。可能简单调整一下音量的比例，效果就能好上许多。

如果把音乐和编程做对比，那么鼓就是 Spring Boot，因为它可以把一个个小节串联起来，从而支撑起整个乐句。所以我自己做一个音乐片段，总是习惯先添加一个鼓的音轨。

我还很喜欢使用贝斯来制作音乐片段。贝斯弹奏的是低声部，它既是节奏乐器，又是乐音乐器，更重要的是它可以让吉他显得不那么飘，所以我在选定好节奏之后，就会用贝斯铺个底。在我看来，贝斯应该算运维吧，干好了没人关注，但是出点乱子就净背锅。

我在学习乐谱时也是如此。乐谱就是：“README.md”

五线谱高音谱表的下加一线代表钢琴的C3，不管线还是间，同等看待，从下往上，都是钢琴的白键，一一对应。谱号的起笔刚好是G。线或间的音符加上升降号，就是黑键。一个音符可以二分、四分、八分，为了区别它们，四分音符加一个尾巴，八分再加一个尾巴，以此类推，简谱则是用数字代表音符，音符下面划短横线，一个横线与五线谱的一个尾巴含义相同。

其实，类比多级索引，或者段地址和偏移地址，除了高音谱号，还有低音谱号、中音谱号。你看，有了偏移量，乐谱就能优雅地呈现了。

所以在我看来，相比简谱，五线谱是二维空间立体的表达。吉他谱就更简单了，用六根线分别代表吉他的六根弦，就是六线谱。开源的软件有很多参数可以定制，但启动可能只需要 java -jar  或者 npm start，所以我们学习乐谱也不必一下子了解所有的标记。

可能你还听过12小节布鲁斯，一个小乐队的几个乐手，约定好用什么和弦进行，几个小节一次 for loop 循环就可以各自发挥了。一个乐手可以弹默认的和弦，也可以对这个和弦做变化，这就是继承和重载。和弦套路，也就是设计模式。

当我这样来理解的时候，就发现我就更关注制作音乐片段背后的逻辑，而不仅仅是跟着老师一步步操作。

## 聆听音乐，可以尝试理解音乐

对于从事编程的我来说，工作占据了我大量的时间。所以平时的我就非常喜欢听音乐，听音乐的时候会感觉自己已经进入了另一个时空，能让自己更专注地搬砖。

不过我对音乐的爱好不止于此，我还想去鉴赏音乐。这就需要学习更多与音乐相关的乐理知识和背景知识。但我也知道，像音乐的节拍、调式，还有和弦的进行，等等，这些音乐基础知识需要花很长时间的慢慢积累才行，不能一蹴而就。

那我们是不是就没办法鉴赏了呢？也不尽然。比如说很多音乐风格来源于教堂音乐，那么了解一些文化背景，很有助于我了解它，欣赏它。说鉴赏可能有点过于专业，那不如先尝试理解音乐，欣赏音乐。

所以一方面，我在听歌的时候就会有意识地去搜集资料，去了解音乐背后的文化背景或有趣故事。我喜欢的音乐类型并不唯一，浪漫的皇后乐队，霸气的蝎子乐队，还有老鹰乐队，我都喜欢听。喜欢的音乐人也有很多，坐在椅子上弹吉他的“大胖熊” B. B. King，雷鬼谢天笑，二手玫瑰，还有许巍，第一吉他手李延亮。了解这些音乐人以及他们作品的相关背景，更能让我理解音乐其中的内涵。

另一方面，我也喜欢看一些音乐类的电影，像《八月迷情》《指挥家》《心灵奇旅》。在看这些电影的时候，音乐与故事相辅相成，共生共荣，这对我理解其中的音乐片段也十分有裨益。

所以对于邓老师的这个课程，我非常喜欢的一点就是老师不仅会在视频中讲解具体操作，同时也会最后有一个“邓老师说”的部分。这个部分的内容，老师会把视频中的操作演示部分进行提炼和升华，同时还会补充很多背景知识，这都让我更好地消化吸收音乐。

我是一个无缘985，无缘  BAT  的老码农，工作和生活也不总是一帆风顺，不过无论是工作还是生活，遇到了什么难题，音乐总能给我力量。

不知道你是否和我一样从音乐中获取了极大的能量，但是我相信，当你开始学习这个专栏，你一定会发现生活有了不一样的色调。

我的分享就是这些了，我也很想知道，你学习这个专栏的过程是怎样的呢？有没有什么独特的收获或者是心路历程呢？欢迎你写在留言区，我们一起分享，相互鼓励，共同进步！
