`
qindongliang1922
  • 浏览: 2147478 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:116328
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:124593
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:58457
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:70354
社区版块
存档分类
最新评论

九句良言胜敲十年代码

阅读更多
此刻,夜深人静,时间已超过凌晨零点,散仙还在读张龙老师的一篇博客,特别是读到如下的一段话,感触颇深,内心思绪良久,觉得此段话若能在25岁之前领悟,其价值真胜敲过十年代码,下面,散仙会把张龙老师的这段领悟,原样贴在下面,供各位道友,细细品味。



1. 基础的重要性。我总是不断强调基础的重要性,因为我是有切身体会的。基础的东西可以让你受用一生。struts出来了,webwork出来,tapestry出来了,jsf出来了,struts2也出来了,等等等等。但是这些框架或者标准都是新东西吗?其实每个人都知道并不是的,他们都是基于HTTP协议的,换句话说都是构建在jsp与servlet基础之上的,有很多人连这两个基础都没掌握好,就去学这些框架,这真是难以想象的。有了好的基础会让你学习新东西更快,也更扎实,走的也更远,否则你永远都是在跟着别人的脚步。

2. 还是基础。我们都知道Spring是非常优秀的框架,也是很多公司采用的技术选型。但是你是否真的了解Spring的核心IOC与AOP了吗?适当看些设计模式的书会让你受益匪浅。其实你只要掌握了java的动态代理对于AOP的理解就是自然而然的事情了。

3. 舍得投入。 有时间的话买些书看看,好书可以让你系统的学习一些技术,而不是一些支离破碎的技术点。

4. 抓紧时间。 将游戏的时间控制的少一些,把精力放在学习上吧,如果你想投身IT行业,做好不断学习的准备

5. 要有激情。 没有激情的人生是惨淡的人生。生活和学习要有激情,否则你体会不到淋漓尽致的快乐与苦痛。

6. 要有耐心。 没有耐心是无法成为一个优秀的程序员的。其实写程序的时候大部分时间是与错误、异常相伴的,不要幻想一下就能将程序写对,优秀的程序实际上是不断重构的过程。

7. 要能耐得住寂寞。 很多时候我们都是与计算机为伴的,如果你没有对程序的兴趣与热情,时间长了你会坐不住的。

8.英语的重要性,如果你想进外企的话,那么英语是必须要过的一关(主要体现在听说上)。

9. 最后一点,坚持学习。活到老学到老是对程序开发人员最好的描述。


最后,散仙再唠叨几句的自己的心得体会,张龙老师说基础非常重要,散仙也是最近才领悟出来,以前一直都是处于,知其然不知其所以然的感觉,比如说某个技术或框架,Lucene也好,Hadoop也罢,只要是由Java写的东西,散仙愚见,只要你Java SE足够熟练,那么上手起来其实是非常容易的,关于Java EE方法,张龙老师说的,只要你Servlet和Jsp拿下了,其他的一些Struts,JSF,Spring MVC诸如此类的框架,学习起来,非常简单,这就很想散仙想说的另外一个例子,只要你JDBC真正的拿下了,其他的一些JPA,Hibernate,MyBatis,JDO,学习起来也是如此,对想学习全文检索的朋友们,散仙建议只要你把lucene拿下了,其他的一些像solr,ES,Compass,hibernate search,掌握起来,也是易如反掌,不过这些都不是散仙最后想要说的重点,散仙想说的是,如果你想做到在基于Java这个平台下的世界里,随心所欲,游刃有余,那么请你一定认真学好并真正掌握,那个经常被大部分人忽视而不起眼的Java SE的一系列技术。

         
           最后,感谢各位道友,能够坚持看完此篇文章!

139
21
分享到:
评论
93 楼 beowulf2005 2013-12-06  
学好数学,IT都是浮云。
92 楼 qindongliang1922 2013-12-06  
tanglanwen 写道
说得很有道理,但是程序员应该学会怎么不受制于人,自己找方向,创业!

兄弟创业了吗?
91 楼 tanglanwen 2013-12-06  
说得很有道理,但是程序员应该学会怎么不受制于人,自己找方向,创业!
90 楼 qindongliang1922 2013-12-06  
j00131120 写道
深有体会,感慨 作者总结的太精辟了。


是的,根基很重要!
89 楼 j00131120 2013-12-06  
深有体会,感慨 作者总结的太精辟了。
88 楼 qindongliang1922 2013-12-06  
一个java程序员 写道
实话,我现在就回头学习基础了。呵呵,一直都是菜鸟。好文章。转了


坚持,加油。
87 楼 qindongliang1922 2013-12-06  
tianqixin 写道
多学基础真的挺重要的,推荐w3cschool菜鸟教程:http://www.w3cschool.cc/

打广告的.....
86 楼 一个java程序员 2013-12-06  
实话,我现在就回头学习基础了。呵呵,一直都是菜鸟。好文章。转了
85 楼 qindongliang1922 2013-12-05  
manxd539 写道
支持分享。

谢谢,加油!
84 楼 manxd539 2013-12-05  
支持分享。
83 楼 qindongliang1922 2013-12-05  
djcbpl 写道
最近给公司员工培训,我也在他们代码中发现,基础真的很重要

嗯,加油!
82 楼 qindongliang1922 2013-12-05  
brave2211 写道
楼主说的都是对的,但这些道理经常被人忽略.在公司干了一段时间, 发现很多工作两三年甚至更久的程序员, 基础都薄弱的惊人, 连基本的面向对象和java的语法都没搞懂, 真不知道项目怎样做出来的. 工作一段时间后, 真切感觉到基础的重要性. 举一个例子,搞懂了java虚拟机的原理,class文件结构,java内存模型等底层的原理,难以理解的java语法就会感到很自然,在编码时能避免很多错误.
我现在做android应用开发,正在学习关于linux内核和android框架相关的知识.因为我和楼主同样认同基础的重要性.也有人认为设计和架构和软件管理等高层的能力比基础重要,但是我认为基础不够好,在高层的层面上也不会走的很远.
至于有人认为基础不重要,也算是仁者见仁智者见智吧.

大善!
81 楼 djcbpl 2013-12-05  
最近给公司员工培训,我也在他们代码中发现,基础真的很重要
80 楼 brave2211 2013-12-04  
楼主说的都是对的,但这些道理经常被人忽略.在公司干了一段时间, 发现很多工作两三年甚至更久的程序员, 基础都薄弱的惊人, 连基本的面向对象和java的语法都没搞懂, 真不知道项目怎样做出来的. 工作一段时间后, 真切感觉到基础的重要性. 举一个例子,搞懂了java虚拟机的原理,class文件结构,java内存模型等底层的原理,难以理解的java语法就会感到很自然,在编码时能避免很多错误.
我现在做android应用开发,正在学习关于linux内核和android框架相关的知识.因为我和楼主同样认同基础的重要性.也有人认为设计和架构和软件管理等高层的能力比基础重要,但是我认为基础不够好,在高层的层面上也不会走的很远.
至于有人认为基础不重要,也算是仁者见仁智者见智吧.
79 楼 zhushaolong 2013-12-04  
ASTER1111 写道
    楼主的思维还停留在程序员的思维上,按照这9句话,不是笨的人,应该都可以成为优秀的程序员,但不能成为伟大的程序员。首先我不否认基础的重要性,但我不认可必须有基础才能学上层的东西;要知道Gavin King在开发Hibernate之前,会一些EJB但没有任何用SQL开发数据库的经验,他是有了想法有了创意之后,再回头学数据库的东西。 所以我觉得创意更重要。
    按需要学习,先解决手工的工作,再去优化提升,这样的方式更加适合实际工作;如果按照一切都要从基础开始,把基础打牢之后再学上层的东西,那我们学JAVA之之前,是不是要先把C或者C++学精通?学C或C++之前,还得先把汇编弄精通?汇编下面还有X86指令,ARM指令等等。是不是也得都学一遍?
    另外说一句,如果哪个人敲了10年代码还不如读这9句话感悟多,我觉得他也不可能把楼主说的基础学好。



你这么说  我觉得有点过了  这几句话只是强调基础的重要性,又没说非要把基基基础的都全学一遍,伟大的程序员毕竟少数.做一个优秀的程序员就可以了.
按需学习,先解决手头是对的,但是基础差到连手头的工作都解决不好呢.

文章面向的读者应该不是立志去做伟大程序员的人.
78 楼 KimHo 2013-12-04  
ASTER1111 写道
    楼主的思维还停留在程序员的思维上,按照这9句话,不是笨的人,应该都可以成为优秀的程序员,但不能成为伟大的程序员。首先我不否认基础的重要性,但我不认可必须有基础才能学上层的东西;要知道Gavin King在开发Hibernate之前,会一些EJB但没有任何用SQL开发数据库的经验,他是有了想法有了创意之后,再回头学数据库的东西。 所以我觉得创意更重要。
    按需要学习,先解决手工的工作,再去优化提升,这样的方式更加适合实际工作;如果按照一切都要从基础开始,把基础打牢之后再学上层的东西,那我们学JAVA之之前,是不是要先把C或者C++学精通?学C或C++之前,还得先把汇编弄精通?汇编下面还有X86指令,ARM指令等等。是不是也得都学一遍?
    另外说一句,如果哪个人敲了10年代码还不如读这9句话感悟多,我觉得他也不可能把楼主说的基础学好。
一针见血!
77 楼 ASTER1111 2013-12-04  
    楼主的思维还停留在程序员的思维上,按照这9句话,不是笨的人,应该都可以成为优秀的程序员,但不能成为伟大的程序员。首先我不否认基础的重要性,但我不认可必须有基础才能学上层的东西;要知道Gavin King在开发Hibernate之前,会一些EJB但没有任何用SQL开发数据库的经验,他是有了想法有了创意之后,再回头学数据库的东西。 所以我觉得创意更重要。
    按需要学习,先解决手工的工作,再去优化提升,这样的方式更加适合实际工作;如果按照一切都要从基础开始,把基础打牢之后再学上层的东西,那我们学JAVA之之前,是不是要先把C或者C++学精通?学C或C++之前,还得先把汇编弄精通?汇编下面还有X86指令,ARM指令等等。是不是也得都学一遍?
    另外说一句,如果哪个人敲了10年代码还不如读这9句话感悟多,我觉得他也不可能把楼主说的基础学好。
76 楼 qindongliang1922 2013-12-03  
beiyangshuishi 写道
写的非常好,我本人就是从html+CSS-->js-->j2se-->jsp、servlet-->jsp购物车开始学习软件的。
jsp的九大内置对象、转发与重定向等等都是必须掌握的,没有这些基础,要学习struts、spring这些框架只能懂怎么用,但不懂其原理,这样并不好。

楼主说得对,基础是第一,没有这些基础,想要往更牛逼的方向发展,会很吃力



恩,不错,加油!
75 楼 barryzhong 2013-12-03  
空谈误国,厚积薄发
74 楼 kelvem 2013-12-03  
我是个反例,很多技术对于我都是黑盒,够用就好。我更关心的是结构与易用性,也设计了几个中型项目,混得还可以。但总感觉与主流格格不入。

相关推荐

Global site tag (gtag.js) - Google Analytics