以前在学校的时候,就只注重学过两门语言:java和C#。但现在却发现新出来的编程语言越来越多了,感觉自己懂得的语言太少了。在软件开发领域也有一些几乎像全能一样的高手,精通多门编程语言。于是,我便追逐这些人的脚步,只要是有什么新语言出来了,就去关注一下,并下决心要学好那门语言。几乎每出来一门新语言我都会带着好奇心去学,可是要学深刻学精深真的太难了。经过几个月的尝试,我做了些检讨,这样下去真的不行。多门语言一起学习,感觉就像两天打渔三天晒网,顾了这们语言,又落下了其他几门语言,而且时间控制方面也变得捉襟见肘。经过认真的反省,我觉得不能在这样下去了,必须只能学一门语言,然后专攻这门语言。宁做一门语言的鸡头,也不做多门语言的凤尾。
也许有人会说,懂得多门语言不是很好么?是的,的确很好。但是你除了有精力、有时间、有毅力之外,还得有那种学习的领悟能力,不然即使话费再多的时间和精力也是徒劳。也许学了这么多语言,你会说,你懂这么多种语言。但是你真的懂了吗?你领悟了吗?你学精通了吗?我想,很少人能做到门门语言都能学到精通。但是,如果你没学精通或者是熟练,即使在面试的时候,你对面试官说你懂很多种语言。但面试官不要这些,他只会问你精通或者专攻哪门语言的时候,你怎样回答?也许你自己都会心里问自己:我到底精通哪门语言呢?其实你根本就不敢承认,因为你根本就没有对一门语言学深入进去,没有学透彻。所以,面试的结果注定是失败的。
现在,各种语言的兴起,进一步地开拓了我们的软件市场。这也表明了软件行业将变得更加的兴盛和广阔,但同时,也让软件开发领域变得鱼龙混杂。对于开发者来说,以前开发出一个项目也许只要用到两三种语言就够了。但现在可能截然不同了,为了满足客户的需求,也许只有其他新生的语言才能实现或者更完美地实现某一个系统功能。很显然,这种新生的语言就是为了更完美地实现这种功能而应运而生的。但是,毕竟是新产生的语言,其实也只是某一个大型项目的代谢产物,因为也只有开发大型项目才会有那个财力和人力来单独研发一套新型语言,这种新型语言或多或少还存在很多的漏洞和不足,比如说系统性能、网络安全、网络交互、以及和其他语言的集成等诸多问题,都很好的解决了这些问题吗?答案是否定的。但是,却就是有很多未成熟的语言搬到网络上来推广,虽说是打着共同研究和学习的旗号,但是还是会让很多人误解,在看了这种语言新特性和功能后,便产生浓厚兴趣想学好这门语言。这样一来,新型语言越来越多地在这个软件开发领域中产生,越来越多的人成为其中的探险家。但是最终有几个探险家能真正坚持下来取得成功的呢?因为他们探险的太多太多了,以至于忘记了自己真正的目的。
对新语言产生浓郁的兴趣并不是不好,这说明你不是守旧排新之人,说明你是追求新知积极向上之人。但是,有时也正因为这一时性起,会让我们变得去盲目地追求。这种盲目的追求越积越多,就会打乱我们以前制定好的学习方针,一切将会变得乱糟糟。最终的后果是你一门语言都没学好,没掌握。
说到这里,我再次严重的检讨和反省一下自己,不能再这样盲目下去了,很长一段时间内,只能学习一门语言。然后把这门语言学懂学好之后,再在掌握了这门语言的基础上学习另一种语言,用比较学习法去学,这样就不会把两种语言的异同弄混淆。即使是这样学,我觉得也不能学太多的语言,顶多还是要以学习一门语言为主,其他语言的学习为辅,只是为了防止在以后的开发工程中用到的时候对它们一无所知。另外,如果大家也一样,如果也学习多门语言的话,一定要找准一种语言为目标,来专攻它。在面试的时候也要禁忌想面试官炫耀说自己懂得多门语言,除非面试官问你懂的那些语言,但即使是那样,你也要表达清楚,要把你自己最擅长的语言着重强调地表述给面试官,不要让面试官产生“到底擅长哪门语言”的模棱两可的感觉。
其实,如果你只要对一门编程语言做到深入和精通就是一个很不错很成功的软件工程师,记得“宁做一门语言的鸡头,也不要做多门语言的凤尾”哦!
以上就是我这次想大家分享的学习心得和体会,望大家多多指教!