一路都在奔跑,但一直都不踏实,同时又感觉永远都不是个头......这应该是绝大多数程序员所面临着的问题。曾经也是我一直遇到的问题。
怎么解决这些问题?很多人可能都在寻找,但是很难遇到答案。因为从一开始他就固步自封,自己把自己限制死了。很大的特点就是经常潜移默化的告诫自己:要专一,要专注,不要贪多,否则嚼不烂,把本语言学好了,什么都解决了。但事实是这样的吗?比如你学PHP,一开始你是打算只要把PHP学好就行了,因为你找的工作就是PHP,目标很明确,自然很有理由不学C++。在拉钩网上你搜都懒得搜其他方向,比如C++,JS,因为你觉得它们和你无关。你的出发点是好的,就是专一和专注。但是单丝难成线,独木难成林,你想抛弃一切只学PHP,但是结果往往是你遇到许许多多莫名其妙的东西。如:好不容易搭建个数据库吧,把表设计好了,但是遇到优化问题。搞不懂!因为里面太多抽象东西了,什么BTree索引,Hash索引,二叉树原理,什么鬼东西。关键是为什么要那样,你无法领悟的懂。PHP开发的系统如果负载过高无法正常运行,你得负载均衡了,什么内网外网,TCP/UDP,网络编程又会让你头大。你也搞不懂。甚至和PHP息息相关的apache,nginx的原理也一头雾水,http协议,https协议,等等。微信公众号开发感觉全新的深不可测,还没研究透,小程序又来了,又是全新的东西。原生态APP还没学,webAPP就来了。这时候js突然有了新的定义:不但可以开发浏览器,还能开发跨平台APP?莫名其妙。
想深入,不是你说就能做到的。为什么遇到瓶颈?就是知识面太狭隘了。这样直接导致你一直在疲惫的奔跑着,累且低效,非常努力却跟不上知识更新速度。PHP很火,你跟风的过去,学的又慢,不久大数据又火了,你又是一个新手去慢慢学,再些时候,人工智能又火了,你又跑去当一个新手慢慢学。什么都是新的,什么都学的苦恼,一味的跟风,一味的拿新的专业术语来炫耀(如:区块链),但是估计你自己心里都没底。然后你感觉太难、没动力了、剩下的就只能是几个朋友举杯邀明月......聊聊怎么转型的问题。
上述状态是因为你少了一个很重要的东西,一个你一直看不清的东西,那就是:基础。你嫌弃汇编,因为太难。你嫌弃C语言,因为太枯燥,你嫌弃C++因为不但枯燥而且又难又多,感觉好低级。但是就是这些低级语言才是让你真正认清编程的本质。你用10年的html,css,js,真还不如别人学了1-2年的C/C++理解的深刻。所以:漂亮的外表不等于功力深厚的内涵。学编程,不是在选美!“红颜祸水”你不知道吗?现在来看,应该懂得了吧。PHP难深入,是因为它牵扯到很多的基础认识。学编程要重在打基础!
现在我也在弄汇编,就为寻找一个问题:main函数是怎么被调用和执行的;也在弄C语言,就在感受面向过程编程思想,字符串的恶心,去理解C++面向过程的优美。在弄QT是感受C++的应用,当然可以开始追求漂亮的外衣了。其实把某一门学好了都可以让你达到高薪的30K(比如:C++,QT,PHP,JS,任何一个精通成真正的高手,你都是高薪),但是你只弄一门,却很难深入,因为客观就是客观,它们本来就联系在一起,相互映射,相互衬托。所以你得开阔视野,不要自己把自己框死了。
前些时候我一直在迷惑,明明用浏览器访问包含js的网页是不可能操作本地电脑的文件的,但是js却可以写操作手机的webAPP,小程序也是这样的效果?难道js变成了我不认识的东西了吗?我在AngularJS里初步找到了答案,在nodeJS里找到了答案,在QT里找到了更完美的答案,深刻感觉一通百通,万物皆有缘......把酒言欢QQ:1455153071
只要你这辈子还做和编程相关的工作,你还想有突破,你迟早要深究这些:汇编、C语言,C++,QT,JAVA,PHP,JS,Python,数据库编程,Linux,网络编程,网络编程,编程原理,数据结构,算法,大数据,嵌入式,web开发,物联网,人工智能,ARM,FPGA,...
你会发现,不管未来什么新东西出现了,你都可以轻松搞定,万变不离其宗,那时候你就可以心中有真意,稳坐钓鱼台了,学什么都轻松,触类旁通...
祝你能在编程领域中多体会到拨开云雾见青天的激情...
原文地址:http://blog.51cto.com/ningcaichen66/2093749