第一类:C语言或Python语言等,可做为学习用语言,一年时间足以。由于没有参与实际项目,仅仅靠学习,很难精通(除非你是天才),不能算是第一门语言。
第二类:接下来是工作语言,不同领域有不同的语言,例如:用于游戏开发的C/C++,用于APP和后台服务开发的Java,用于前端的JS,用于微软桌面开发的C#,用于单片机开发的C,…这将是你的真正的第一门语言,是真正掌握的语言,也是吃饭的家伙。相中后,最少2年时间,建议4年,不要考虑其它语言。之后,由于工作的需要可能需要对工作语言进行扩展,例如,网站前后端转换,游戏脚本语言的使用,单片机开发嵌入汇编,等。这虽然可能用去2年时间,但这只能算是对第一门语言的辅助,不能算第二门语言。这些语言都是为工作服务的,虽然可以精通,但只能处于知其然的阶段。
第三类:接下来是触及程序本质的语言,这才是正真的第二门语言,建议最少在第一门语言8年时间后,而且是对程序本质有极强的求知欲的情况下,方可学习。先从Lisp开始,接着R语言、最后Haskell。估计需要2年时间。
第四类:数学,当你完成十年的计算机语言修炼后,就会发现,一切都是数学:Lisp是公理集合论,R是数理统计,Haskell是范畴论。数学是最终的计算机语言,你会用你的后半生来学习它。
(可能还有第五类语言,哲学,但偶个人是无法触及的。)
注:同类型的语言,学再多,只能算一门语言。在掌握主语言的情况下,可以自由选择,但主语言的2-4年的打地基阶段是无论如何跑不掉的(除非你是天才)。