经常看到很多人捧着一本 10 天精通 java,java 开发宝典之类的图书学习 java, 当他们学会了用 eclipse,idea 等 IDE 工具写出 "Hello World" 之后, 就感觉自己掌握, 甚至精通了 java; 又或者找来一本类似于 jsp 动态网站编程之类的图书, 学会使用 jsp 脚本编写一些页面之后, 就自我感觉掌握了 java 开发! 世界上最可怕的事情就是自己菜却不知道自己菜!
还有一些朋友, 求职者听说千亿体育 qy8.in,J2EE,Spring 或 Spring boot 很有 "钱途", 于是立即跑到书店或者图书馆找来一本精通 j2EE 之类的图书, 希望这样一本图书就可以打通自己的 "任督二脉", 一跃成为 J2EE 开发高手!
也有些小盆友非常喜欢 J2EE 项目实战, 项目大全之类的图书, 他们想法很单纯: 我按照书上介绍, 按图索骥, 依葫芦画瓢, 应该很快就可学会 J2EE, 很快就能成为一个受人人羡慕的千亿体育 qy8.in 的 J2EE 程序员了!
......
凡此种种, 不一而足, 他们中的大多数最后的结果都是失败, 因为这种学习没有积累, 没有根基, 学习过程中困难重重, 每天都被一些相同, 类似的问题所困扰, 起初热情十足, 经常上论坛, 贴吧, QQ 群询问, 按别人的说法解决问题之后很高兴, 既不知道为什么错? 也不知道为什么对? 只是盲目地抄袭别人的说法. 最后的结果有两种:
1, 久而久之, 热情丧失, 最后放弃学习.
2, 大部分常见问题都问遍了, 最后也可以从事一些重复性的开发工作, 但一遇到新问题, 又将束手无策.
第一种我就不想多说了, 每个人都有自己的选择, 他们应该去干他们更擅长的事情, 毕竟不管你做什么都能给国家做贡献! 对于这第二种情况千亿体育可以说在普通程序员中占了极大的比例, 笔者多次听到, 看到 (在网络上) 有些程序员抱怨: 我做了 2 年多 java 程序员了, 工资还是 5000 多点. 偶尔笔者也会与他们聊聊工作相关内容, 他们会告诉笔者: 我也用 Spring 了啊, 我也用 Spring boot 了
啊...... 他们感到非常不平衡, 为什么我的工资这么低? 其实笔者很想告诉他们: 你们太浮躁了! 你们确实是用了 Spring,Mybatis 又或是 Spring boot, 但你们想过为什么要用这些技术吗? 用这些技术有什么好处吗? 如果不用这些技术行不行?
很多时候, 我们的程序员把 java 当成一种脚本, 而不是一门面向对象的语言. 他们习惯了在 JSP 脚本中使用 Java, 但从不去想 JSP 如何运行, web 服务器里的网络通信, 多线程机制, 为何一个 JSP 页面能同时向多个请求者提供服务? 更不会想如何开发 Web 服务器; 他们像代码机器一样编写 Spring Bean 代码, 但却从来不去理解 Spring 容器的作用, 更不会想如何开发 Spring 容器.
有时候, 很多同学在编写五子棋, 聊天程序遇到困难的时候, 会向他们的大学学长, 朋友求救, 这些程序员告诉他们: 不用写了, 网上直接有下载! 听到这种回答, 我只想对这位学长说: 你过来, 我保证不会打死你..., 网上还有 Windows 下载呢! 网上下载和自己编写是两码事. 偶尔, 笔者会怀恋以前黑色屏幕, 绿莹莹字符时代, 那时候程序员很单纯: 当他们想偷懒时, 习惯思维是写一个小工具; 现在千亿体育的程序员很聪明: 当他们想偷懒时, 习惯是从网上下一个小工具. 但是, 谁更幸福呢?
当很多同学把他们完成的小作业放在互联网之后, 然后就有很多人称他们为 "高手"! 这个称呼让他们万分惭愧; 惭愧至于, 他们也感到万分欣喜, 非常有成就感, 这就是编程的快乐. 编程的过程, 与寻宝的过程完全一样: 历经千辛万苦, 终于找到心中的梦想, 这是何等的快乐!
如果真的打算将编程当成职业, 那就不应该如此浮躁, 而是应该扎扎实实先学好 java 语言, 然后按 java 本身的学习规律, 踏踏实实一步一个脚印地学习, 把基本功练扎实了才可获得更大的成功.
实际情况是, 有多少程序员真正掌握了 java 的面向对象? 真正掌握了 java 的多线程, 网络通信, 反射内容? 有多少 java 程序员真正理解了类初始化时内存运行过程? 又有多少程序员理解 java 对象从创建到消失的全部细节? 有几个程序员真正独立地编写过五子棋, 坦克大战, 聊天程序这种小游戏? 又有几个 java 程序员敢说: 我可以开发 Spring? 我可以开发 Tomcat? 很多人又会说: 这些都是很多人一起开发出来的! 实际情况是: 很多开源框架的核心最初完全是由一个人开发的. 现在这些优秀程序员已经出来了! 你, 是否深入研究过它们, 是否深入掌握了它们?
如果要真正掌握 java, 包括后期的 javaEE 相关技术 (例如 Spring,Hibernate,Mybatis,Spring boot 等), 一定要记住笔者的话: 绝不要从 IDE(如 Eclipse 和 Idea) 工具开始学习! IDE 工具的功能很强大, 初学者学起来也很容易上手, 但也非常危险: 因为千亿体育 qy8.in 的 IDE 工具已经为我们做了很多事情, 而软件开发者应该了解软件开发的全部步骤.
来源: http://www.bubuko.com/infodetail-3373666.html