从0开始学架构
李运华
资深技术专家
立即订阅
38968 人已学习
课程目录
已完结 59 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 照着做,你也能成为架构师!
免费
基础架构 (13讲)
01 | 架构到底是指什么?
02 | 架构设计的历史背景
03 | 架构设计的目的
04 | 复杂度来源:高性能
05 | 复杂度来源:高可用
06 | 复杂度来源:可扩展性
07 | 复杂度来源:低成本、安全、规模
08 | 架构设计三原则
09 | 架构设计原则案例
10 | 架构设计流程:识别复杂度
11 | 架构设计流程:设计备选方案
12 | 架构设计流程:评估和选择备选方案
13 | 架构设计流程:详细方案设计
高性能架构模式 (8讲)
14 | 高性能数据库集群:读写分离
15 | 高性能数据库集群:分库分表
16 | 高性能NoSQL
17 | 高性能缓存架构
18 | 单服务器高性能模式:PPC与TPC
19 | 单服务器高性能模式:Reactor与Proactor
20 | 高性能负载均衡:分类及架构
21 | 高性能负载均衡:算法
高可用架构模式 (10讲)
22 | 想成为架构师,你必须知道CAP理论
23 | 想成为架构师,你必须掌握的CAP细节
24 | FMEA方法,排除架构可用性隐患的利器
25 | 高可用存储架构:双机架构
26 | 高可用存储架构:集群和分区
27 | 如何设计计算高可用架构?
28 | 业务高可用的保障:异地多活架构
29 | 异地多活设计4大技巧
30 | 异地多活设计4步走
31 | 如何应对接口级的故障?
可扩展架构模式 (6讲)
32 | 可扩展架构的基本思想和模式
33 | 传统的可扩展架构模式:分层架构和SOA
34 | 深入理解微服务架构:银弹 or 焦油坑?
35 | 微服务架构最佳实践 - 方法篇
36 | 微服务架构最佳实践 - 基础设施篇
37 | 微内核架构详解
架构实战 (13讲)
38 | 架构师应该如何判断技术演进的方向?
39 | 互联网技术演进的模式
40 | 互联网架构模板:“存储层”技术
41 | 互联网架构模板:“开发层”和“服务层”技术
42 | 互联网架构模板:“网络层”技术
43 | 互联网架构模板:“用户层”和“业务层”技术
44 | 互联网架构模板:“平台”技术
45 | 架构重构内功心法第一式:有的放矢
46 | 架构重构内功心法第二式:合纵连横
47 | 架构重构内功心法第三式:运筹帷幄
48 | 再谈开源项目:如何选择、使用以及二次开发?
49 | 谈谈App架构的演进
50 | 架构实战:架构设计文档模板
特别放送 (7讲)
架构专栏特别放送 | “华仔,放学别走!”第1期
架构专栏特别放送 | “华仔,放学别走!” 第2期
如何高效地学习开源项目 | “华仔,放学别走!” 第3期
架构师成长之路 | “华仔,放学别走!” 第4期
架构师必读书单 | “华仔,放学别走!” 第5期
新书首发 | 《从零开始学架构》
致「从0开始学架构」专栏订阅用户
结束语 (1讲)
结束语 | 坚持,成就你的技术梦想
从0开始学架构
登录|注册

如何高效地学习开源项目 | “华仔,放学别走!” 第3期

李运华 2018-06-29
你好,我是华仔。今天这期“特别放送”,我想和你聊聊如何高效地学习开源项目,一方面澄清开源项目学习过程中的几个误区,另一方面谈谈我自己具体实践时的一套方法论。
得益于开源运动的蓬勃发展,众多技术顶尖的公司、团队或者个人通过开源的方式向技术社区贡献了许多优秀的开源项目,一方面大大促进了整体技术的发展,另一方面大大减轻了中小公司和团队在技术方面的投入压力,让团队能够更加聚焦于业务。
开源项目对团队和业务有很大好处,但对于技术人员来说,如果只是简单的采取“拿来主义”,那就变成一个陷阱:看似很快的用开源项目实现了需求,但自己的技术水平并没有什么提升;甚至可能出现看起来用了很多开源项目,知道很多项目名称,但技术水平止步不前的窘境。
因此,对于开源项目,不能简单的采取“拿来主义”,而要比较深入的去学习开源项目,做到“知其然,知其所以然”,一方面是为了更好地应用这些开源项目,另一方面也是为了通过学习优秀的开源项目来提升自己的能力。
很多技术同学确实也想深入学习一些业界成熟和优秀的开源项目,例如 Nginx、Redis、Netty 等,但是在具体实践的时候,常常因为一些不正确的观点而误入歧途,例如:
只有开发这些开源项目的人才能真正理解,我没法参与这个项目开发,因此我很难深入理解。
我的项目没有用 Redis,不用的话很难深入理解。
数据结构和算法很重要,所以我只要研究其数据结构和算法就够了,例如 Nginx 用的红黑树。
“Talk is cheap, show me the code”,一头扎进源码逐行阅读。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《从0开始学架构》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(42)

  • jack
    今天这篇很好,虽不是具体的知识文章,是方法论,指明了学习的路径,正是我期待的
    2018-06-29
    60
  • plflying
    很及时的方法论指导,我是做传统行业开发的,前期互联网相关技术和架构接触不多。订阅专栏后,收益颇多,虽然自己岁数很大,但仍然把自己当做新人,按照老师指引的方向,砥砺前行。最后谢谢老师对我上次留言根本性错误的指正!

    作者回复: 加油,学习永远不会晚👍👍

    2018-06-29
    25
  • 吴传卜
    今天这个话题收益很多!我都是急急忙忙的看很多项目,生怕自己落伍,还是得静下心来哪怕半年我搞透一个呢!好几个项目都是能用的水平

    作者回复: 搞透一个顶知道10个,尤其是面试😀

    2018-07-01
    9
  • Kylin
    没有方法论,早几年学习源代码走了不少弯路啊,感谢华仔,真有点相见恨晚的感觉

    作者回复: 业界很多流行的说法都误导了很多人,例如“talk is cheap,show me the code”,“算法和数据结构很重要”……

    2018-06-30
    7
  • MJ
    小白一枚,求问老师开源技术一般都关注哪些平台呢?

    作者回复: 热门的开源技术信息CSDN和InfoQ都有

    2018-10-18
    2
  • 昂头的笑脸
    有没有比较经典的可以学习得源码?求推荐

    作者回复: netty 4
    redis
    spring

    2018-09-06
    2
  • zbest
    英语真的很重要,信息递减
    2018-06-29
    2
  • Me5
    每期质量都很高,,👍👍👍👍👍
    2018-06-29
    2
  • 孔宣
    很有参考价值,结合我之前研究sandbox的过程可以印证这种方法的有效性
    2018-06-29
    2
  • enjoylearning
    有没有必要把该开源的项目官方文档都看一遍?

    作者回复: 如果是为了学习,主要看设计相关的技术白皮书之类的,如果是为了应用,能看一遍最好

    2019-04-04
    1
  • dw靖
    以前学习源码都是一头雾水,看了这边文章,总算有个方向指引
    2019-02-24
    1
  • 高源
    想问问老师你也是挤时间来学习吗,对于数学和英语这你是怎么看的,搞技术的是不是必须达到一定的程度

    作者回复: 当然挤时间学习啊,你可以搜《程序员月薪五万指南》,数学和英语够用就行,不用特别花太多时间

    2018-12-01
    1
  • caohuan
    谢谢 华仔的 开源的学习方法,本篇所得:1.带着目的去学习 效率才是比较高的,2.蜻蜓点水式的学习 不如深入到一个开源的项目中,学习到了开源的共性后,在学习其他的开源 只需要 再学习差异性的知识点。
    如果 华仔 能加个餐 用个例子 带我过一般 操作一遍,我会更期待的。

    作者回复: netty就是最好的例子

    2018-11-12
    1
  • 海滨
    这一期的文章太赞了,给了我们如何正确更高效学习开源项目的方法论。华仔说的几个问题深有体会,很多开源项目始终停留在会用的基础上,给自己带来的技术提升非常有限。后续一定找个感兴趣的开源项目,按照这套方法论好好实践一把。感谢华仔~

    作者回复: 再加一条,研究完写成博客,理解更深刻

    2018-08-16
    1
  • joyafa
    为啥每次读大型的开源代码就是那么吃力,不能整体把握好,细节搞清楚了,整体上就把握不了了,华仔有没有较好的建议,总感觉以前欠下的太多太多了。

    作者回复: 先看原理和架构,再看源码

    2018-07-11
    1
  • 小橙橙
    准备下个月开始学习一些感兴趣的开源项目,老师的方法论很有指导意义,可以指导我如何正确地学习。
    2018-06-29
    1
  • joyafa
    一直在看开源代码,总是感觉理解的不透,时间花了不少,实际收效却很小,一个是方法不对路,还有是不够集中,没有把一个开源代码研究透,就想着去研究其它的,这是很要命的,通过这期学习了华仔的分享,需要自己总结一下,调整一下学习方式,否则难以提高啊!
    2018-06-29
    1
  • godtrue
    非常感谢,这个这个专栏很涨见识,读后让人安心。不但给鱼还授渔,源码曾经也读过,应该不得法,面对毫无尽头的码海比较容易怠慢。
    不过现在有了指南针,相信能航行的顺利一些。
    2019-09-03
  • Coding咩
    老师的每一篇文章都值得反复阅读,每一次重复的阅读都会有新的收获,第一遍学习get不到或者疑惑的地方多读几遍结合精选留言基本都能找到答案。作为一名高开,成为一名合格的架构师一直是我的梦想,这篇专栏给我了很好的指引,相信不久的将来梦想会实现吧!

    作者回复: 加油,梦想一定会实现👍

    2019-04-18
  • gkb111
    开源项目学习心得
    带着问题去学习,包括原理,
    源码研究,并不需要大而全,要有的放示
    时间管理,一个月或者3个月,规划好
    2019-03-26
收起评论
42
返回
顶部