左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家
175859 人已学习
新⼈⾸单¥98
登录后,你可以任选6讲全文学习
课程目录
已完结/共 119 讲
左耳听风
15
15
1.0x
00:00/00:00
登录|注册

06 | 如何才能拥有技术领导力?

你好,我是陈皓,网名左耳朵耗子。
通过上节课,相信你现在已经理解了“什么才是技术领导力”。今天,我就要跟你继续聊聊,怎样才能拥有技术领导力。
第一,你要吃透基础技术。基础技术是各种上层技术共同的基础。吃透基础技术是为了更好地理解程序的运行原理,并基于这些基础技术进化出更优化的产品。吃透基础技术,有很多好处,具体来说,有如下几点。
万丈高楼平地起。一栋楼能盖多高,一座大桥能造多长,重要的是它们的地基。同样对于技术人员来说,基础知识越扎实,走得就会越远。
计算机技术太多了,但是仔细分析你会发现,只是表现形式很多,而基础技术并不多。学好基础技术,能让你一通百通,更快地使用各种新技术,从而可以更轻松地与时代同行。
很多分布式系统架构,以及高可用、高性能、高并发的解决方案基本都可以在基础技术上找到它们的身影。所以,学习基础技术能让你更好地掌握更高维度的技术。
那么,哪些才是基础技术呢?我在下面罗列了一些。老实说,这些技术你学起来可能会感到枯燥无味,但是,我还是鼓励你能够克服人性的弱点,努力啃完。
具体来说,可以分成两个部分:编程和系统

编程部分

C 语言:相对于很多其他高级语言来说,C 语言更接近底层。在具备跨平台能力的前提下,它可以比较容易地被人工翻译成相应的汇编代码。它的内存管理更为直接,可以让我们直接和内存地址打交道。
学习好 C 语言的好处是能掌握程序的运行情况,并能进行应用程序和操作系统编程(操作系统一般是汇编和 C 语言)。要学好 C 语言,你可以阅读 C 语言的经典书籍《C 程序设计语言(第 2 版)》,同时,肯定也要多写程序,多读一些优秀开源项目的源代码。
除了让你更为了解操作系统之外,学习 C 语言还能让你更清楚地知道程序是怎么精细控制底层资源的,比如内存管理、文件操作、网络通信……
这里需要说明的是,我们还是需要学习汇编语言的。因为如果你想更深入地了解计算机是怎么运作的,那么你是需要了解汇编语言的。虽然我们几乎不再用汇编语言编程了,但是如果你需要写一些如 lock free 之类高并发的东西,那么了解汇编语言,就能有助于你更好地理解和思考。
编程范式:各种编程语言都有它们各自的编程范式,用于解决各种问题。比如面向对象编程(C++、Java)、泛型编程(C++、Go、C#)、函数式编程(JavaScript、 Python、Lisp、Haskell、Erlang)等。
学好编程范式,有助于培养你的抽象思维,同时也可以提高编程效率,提高程序的结构合理性、可读性和可维护性,降低代码的冗余度,进而提高代码的运行效率。要学习编程范式,你还可以多了解各种程序设计语言的功能特性。
算法和数据结构:算法(及其相应的数据结构)是程序设计的有力支撑。适当地应用算法,可以有效地抽象问题,提高程序的合理性和执行效率。算法是编程中最最重要的东西,也是计算机科学中最重要的基础。
任何有技术含量的软件中一定有高级的算法和数据结构。比如 epoll 中使用了红黑树,数据库索引使用了 B+ 树……而就算是你的业务系统中,也一定使用各种排序、过滤和查找算法。学习算法不仅是为了写出运转更为高效的代码,而且更是为了能够写出可以覆盖更多场景的正确代码。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《左耳听风》
新⼈⾸单¥98
立即购买
登录 后留言

全部留言(150)

  • 最新
  • 精选
  • 野马
    皓叔,我是一个非科班出身的程序员,像我这样的编程人员在技术上需要学习哪些方面的基础知识呢?算法,数据结构,编程语言,计算机系统,网络?

    作者回复: 我写在了程序员练级攻略中

    19
  • 夏洛克的救赎
    了解编程范式是不是得学习编译原理

    作者回复: 不一定。大多数情况下不用

    12
  • Gamehu
    大佬 算法和结构有推介的书么?

    作者回复: 看后面的练级攻略

    7
  • ydp
    指明了努力方向,虽然实现较难,感谢分享!

    作者回复: 参看AWS的SWF

    5
  • 溺水的鱼
    Go算范型编程?

    作者回复: 目前不算,2.0版可能会算

    2
  • 阴明
    很多人在阶段性的技术领先下获得了一定的管理权限后,很快就会开始转行管理。而国内的激励机制里,仍然对业务进展、财务进展的激励优于技术进展。 这使得很多技术高手后期以管理为重,渐渐失去了技术的领导力。
    8
    246
  • 池建强
    学习好编程范式,有助于培养编程的抽象思维,提高编程效率,提高程序的结构合理性、可读性和可维护性,降低代码的冗余度,提高代码的运行效率。要学习编程范式,可以多了解各种程序设计语言的功能特性。 这段写的真好,好的程序员没有只掌握一门编程语言的
    152
  • 夏洛克的救赎
    这么说吧,如果今天使用中文搜索就可以满足你的知识需求,那么你就远远落后于这个时代了。如果用英文搜索才能找到你想要的知识,那么你才能算得上跟上这个时代。而如果你连用英文搜索都找不到,只能到社区里去找作者或是和大众交流,那么可以说你已真正和时代靠近了。 涨姿势了 认知升级
    6
    70
  • 蓓岑2015
    看完了这篇文章,即恐惧又兴奋。
    3
    41
  • 陈俊
    耗哥这个专栏是真好,这篇文章尤其好!既有系统地阐述和分析,也有具体的操作建议。真是让我有醍醐灌顶的感觉。结合这几年的工作经验,基本上我认同耗哥的指导,感谢分享!
    39
收起评论
显示
设置
留言
99+
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部