技術的深度和廣度是相輔相成,互相促進的關系。
通過提高深度,可以幫助觸類旁通,加快你的廣度拓展速度。
比如分布式系統來說。如果你理解了一個分布式系統的原理,比如Kafka的分區和主從備份。當你再學習其他的分布式系統原理的時候,比如Hadoop,你就會比較容易理解它的架構設計。本質上他們要解決的問題是一樣的。也都是分布式系統的基本問題。
當你學到一定深度的時候,通過增加廣度,也會幫助你更深地理解技術。還是上面的例子。等你了解了Kafka和Hadoop,還有etcd之后,你就會發現對于同一個問題會有不同的方案。各自適用于不同的場景或者有不同的優缺點。
就拿jvm的gc來說,就有幾個不同的算法。通過比較可以加深理解,拓展思維。
最終提高你的系統理解和設計能力。也可以幫你構建完整的知識體系。
我分享了很多分布式相關的動畫視頻。專門演示系統原理的。歡迎觀看。