程序员进阶攻略
胡峰
京东成都研究院技术专家
33679 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 65 讲
蜕变:破茧成蝶 (3讲)
结束语 (1讲)
程序员进阶攻略
15
15
1.0x
00:00/00:00
登录|注册

02 | 初惑:技术方向的选择

追求满意决策
选择技术方向的难点
选择技术方向的出发点
兴趣 vs.功利
行业现状与增速
选择职业与选择语言的关系
选择确定性的回报
长期回报 vs. 短期波动
投资箴言:“高风险未必带来高回报”
预测语言存活时间的方法
选择展现蓬勃生命力的语言
语言选择的重要性
技术方向选择的原则与方法
选择行业
选择回报
选择语言
选择正确的技术道路

该思维导图由 AI 生成,仅供参考

初入职场或还在校的同学想必都会有些共同的疑惑,比如:“到底我该选哪个技术方向?”“现在该学哪门语言?”“未来 Java 语言的发展趋势如何?”这些问题的本质其实都是技术的投资决策问题,也即现在我该把时间精力花在哪个方向上,未来的收益才可能最大。
这个问题并不好回答,因为这个问题的本质和 “我现在应该投资哪只股票” 一样。没有人能回答好这个问题,我觉得最好的做法就是:从投资的出发点而非终点来选择一条路径。
至于这样选择的路径是否能在未来获得很好的收益,这是没法预测的。但选择技术方向和选择股票不同的是,只要你在这条路径上持续努力、学习与进步,基本可以保证能和 “大盘” 持平而不至于有亏损,但是否能取得超过 “大盘” 的收益,其实是看运气的。

选择语言

选择技术方向,从某种意义上讲就是选择语言。
虽然有一些流传的说法,类似于:“语言并不重要,必要的时候可以在各种语言间自由切换。”但实际情况是,能做到自由切换的前提是你得对一门语言掌握到通透之后,再学习其他语言才可能触类旁通。
计算机程序语言虽然很多,但种类其实有限。2018 TIOBE 程序语言排行榜(见下图)上的前三位(Java、C、C++),本质上其实是一类语言。但大部分人只能选择去熟悉并通透其中一种,因为这些语言背后都有庞大的生态圈。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

选择正确的技术道路对于初入职场或在校学生来说是一个共同的疑惑。文章指出,技术选择本质上是一种投资决策,需要从长期回报的角度考虑。选择技术方向就是选择语言,而要熟练掌握一门语言需要时间和精力。作者建议选择展现蓬勃生命力的语言,因为存活时间足够长的语言可能会继续存在。此外,选择技术方向和语言也是一种投资,需要考虑确定性的回报和更低的风险。文章强调了长期投入和持续努力的重要性,指出技术总是短期被高估,但长期被低估。因此,建议投入一些可能在长期被低估的基础技术上,而不是被技术潮流的短期波动所左右。文章通过对技术选择的投资角度进行深入分析,为读者提供了在选择技术道路时需要考虑的重要因素。 文章还提到了选择技术方向时需要考虑行业的现状、增速以及最好的公司所使用的技术栈和语言。作者强调选择技术方向不仅仅是为了兴趣,更重要的是为了获得竞争的相对优势。兴趣可以驱动你做到一定程度,但要成为高手,仅仅靠兴趣是不够的。最后,文章提到在选择技术道路时,当无法获得所有信息时,应该追求满意决策而不是最优决策。 总的来说,本文通过投资角度深入分析了技术选择的重要因素,强调了长期投入和持续努力的重要性,以及选择技术方向时需要考虑的行业现状和公司需求。文章内容丰富,为读者提供了在选择技术道路时需要考虑的重要因素。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《程序员进阶攻略》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(65)

  • 最新
  • 精选
  • 谭多肉
    对于我来说,也是一不小心踏入了Java的坑位,不同的是,我是做Android开发的。 大一下学期,仅仅学过C的我,偶然得知,学校这边和北大青鸟有计划一起做一款APP。顺着老师给的学习资料,我阴差阳错的踏入Android开发之路… 这Android开发之路,也是跌跌撞撞,前期几乎没有带,自己就像无头苍蝇一般瞎撞,也东拼西凑的整出一款APP,凭借这块垫脚石,顺利拿到一家公司实习offer。至此,瞎撞的苍蝇模式,终于切换到充满次序的蜜蜂模式,也顺利搭上了移动开发的红利期。 直到今日,虽说我仍然在做Android开发,却也涉猎过其他的语言,比如Android相关的Kotlin Dart,其他方向的JavaScript Python 等。接触下来的感觉变真的有峰哥提到的触类旁通的感觉。 现在回过头来看,从大学到现在走了不少弯路,但是由于种种原因很少能看到类似于本专栏一样,由一线工程师来分享自己工程之路的东西,导致偶尔陷入曲折之路时,也无法自拔。直到工作之后,看到了两本书《APP研发录》和《软技能》,受益匪浅。再到本专栏,一看到目录,我就明白。这是我需要的东西。希望在这里收获满满。

    作者回复: 所有人的路,都会有曲折,你还是很幸运的😄

    2018-08-06
    19
  • 一一
    从一个农民工阴差阳错下成为了一个java程序狗路过

    作者回复: 是不是真的哟?

    2018-08-09
    2
    11
  • sam3125C
    有些人是挺烦的,一天就在那里争论某个语言的某种优势。 我竟然还觉得他们说得挺有道理的,所以我全学了,上班写Java,下班写Python,周末玩JS。 后两个虽然还比较菜,但是有一个人成语叫厚积薄发!

    作者回复: 😂

    2018-08-07
    11
  • ꧁小佳꧂
    您好,看到您的文章,我受益匪浅,但有个小疑问: 1. 这个行业的现状如何? 2. 行业的平均增速如何? 3. 和其他行业相比如何? 4. 这个行业里最好的公司相比行业平均增速又如何? 5. 这些最好的公司都用些什么样的技术栈和语言。 这些问题该如何找到答案?我通过什么渠道能找到这些问题的信息?

    作者回复: 搜索引擎就有呀,要学会搜索过滤信息,分析数据,再产生洞察,做出选择

    2018-08-06
    2
    10
  • third
    大一学了C的基础,但是自己想做图,做游戏,发现用C太麻烦,然后大二因为看了吴恩达博士的人工智能课,觉得自己怎么能落后于时代呢,转学Python,发现出项目比较容易,成就感爆棚。 暂时没有选行业的想法,因为觉得自己还没有努力到要选行业的程度,硬要说一个的话,现在觉得数据分析不错。 最后对一些有兴趣的人说, 兴趣和爱这东西总是爽一会,爽完之后就得负责了,因为兴趣和爱,所以反而应该要求自己比别人做的更好,对自己更苛刻。 ……当然了,这就是编程天才跟普通人的区别,是否能在长期枯燥的生活中,坚持并感受到快乐

    作者回复: 能感受到快乐,挺好的,抵消了努力的辛苦感,在享受中获得成长

    2018-08-06
    10
  • 阿达西
    做嵌入式底层开发,一直是C和汇编,每次把设备运行效率提高一点都感觉很有成就感。最重要的是看到实体产品在自己的程序控制下运行正常、流畅,是一种强烈的满足感

    作者回复: 这是程序工作的魅力之一😄

    2018-08-07
    9
  • 彭超
    建筑汪,纯个人兴趣在学python,希望可以在参数化设计与性能分析中有所用

    作者回复: 跨界技能,👍

    2018-08-06
    9
  • shine
    大一的时候安卓很火,选择了安卓,到了大三找实习,明显感觉到安卓找工作很难,也许是自己学得不够好,最后选择了与安卓同是java编写的java ee,学校课程教过而且自己暑假自学巩固一个月,就去找工作了,确实java ee比较容易找工作。

    作者回复: 恩,APP市场萎缩了,端的形态发生了变化

    2018-08-07
    6
  • ꧁小佳꧂
    感觉很多人都错了……程序设计语言不是工具,是材料。 工具和材料区别还是蛮大的…… http://www.yinwang.org/blog-cn/2013/04/21/programming-languages-are-not-tools

    作者回复: 写出来的代码才是材料吧

    2018-08-06
    5
  • @XP
    被培训机构忽悠学了安卓,现在自学python,工资高

    作者回复: 我咋觉得差别不大呢

    2018-08-07
    4
收起评论
显示
设置
留言
65
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部