[置顶] Java自学最佳实践 get√

文/向右奔跑(简书作者)

原文链接: http://www.jianshu.com/p/d99a1d7bb176

著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

这是13年8月发在博客上的文章。转到豆瓣,给更多想自学编程开发的朋友。大榜现在唯品会从事供应链金融开发,他初中毕业,没有读高中,大专读了一个成人类的电大。自学Java开发。

去年(15年)大榜在技术上像开了挂一样成长。2月份的时候,项目中要用到ActiveMQ,让他先了解,我上京东看了一下,只有一本原版书。他在公司内部进行技术分享完,跟我说,公司的牛人那么多,初中生也跟大家讲课了。5月份的时候,他说,架构师要休假,项目组就交给他,他说,我带你们冲。。。,10月份时,他说,面试了2个研究生,技术不咋滴,我说,人家的关注点跟你不一样,后劲强些,你还是多学习。

昨天晚上跟大榜说,上午有个来咨询的大学生,大连理工软件工程本科毕业,来上海找工作,面试了N次没有面试上,过来咨询Java、嵌入式课程。我了解过重点院校的软工专业的学费,就问他,学费多少?他说,大一大二每年一万块,大三大四每年一万六,他觉得什么也没有学到,现在还要培训再找工作。就跟大榜说,你看看,你自学Java,找到了工作。今年下半年报了本科,一年半就可以毕业(他今年18岁,专科刚刚毕业)。

4年以后你就有J2EE4年开发经验,复旦本科毕业。你的小伙伴今年去读大学,4年后才开始找工作。你的优势大了!其实Java学起来,没有那么难,而且网上的资源很多,培训机构所教的内容,网上都能找到视频教程。大榜就是一个Java自学的最佳实践。专科读的计算机应用技术(网络方向),编程开发课教的是C#基础。Java内容全部是自学。自学带给他的好处是:学习能力大大增强,解决问题的能力得到快速提升。

下面来具体说说,他的学习经过,供大家参考。

先看看他做过的项目:2013/3--2013/5:

在线商城-毕业设计软件环境:oracle tomcat

开发工具:MyEclipse8.5

项目描述:项目框架:struts2+spring+ibatis,oracle

数据库实现功能:商品展示、分页,商品管理,商品评论,类别管理,用户管理,购物车,订单管理,留言管理。

责任描述:做为毕业设计项目独立完成所有功能。主要通过该项目系统学习了掌握ORACEL数据库,掌握ibatis框架,锻炼分析、解决问题能力。项目通过花生壳发布在网上。(这是培训机构,院校毕业设计喜闻乐见的项目,但是要完成所有功能不容易。因为大专毕设不限开发语言,他选择了Java,其他同学都用C#)

2012/11--2013/1:

在线聊天室软件环境:windows tomcat mysql

开发工具:MyEclipse

项目描述:在线聊天室功能:1、在线用户列表;2、发送、接收聊天信息,聊天信息推送PUSH;3、私聊功能;4、用户登录注册;5、创建聊天房间;6、后台功能。学习DWR,反向Ajax,HTTP长连接技术,通过该项目增强分析问题和编码能力。责任描述:独立完成在线聊天室所有功能。

2012/5--2012/7:白山电子楼书房产系统后台-实习

开发项目软件环境:Tomcat mysql开发工具:MyEclipse8.5

项目描述:作为手机客户端Android,iOS的后台。提供公司管理、楼盘管理、优惠信息管理,预约看房管理,问卷调查模块的后台功能。

责任描述:为手机端提供JSON数据,WEB后台功能代码编写,页面设计。参与数据库设计。协助服务器端安装、部署。

2012/4--2012/5:DRP(医疗企业分销计划)

软件环境:Windows mysql tomcat

开发工具:MyEclipse

项目描述:项目功能:用户管理,分销商管理,物料管理、维护,库存维护。

审批流程技术架构:JSP/Servlet/JavaBean JDBC,dom4j,Jquery,JFreeChart

责任描述:完成功能:用户管理,分销商管理,物料管理、维护。通过此项目学习复杂业务的分析、实现。

2012/1--2012/4:QZONE-模仿腾讯QQ空间软件环境:Windows mysql tomcat开发工具:MyEclipse6.5

项目描述:模仿QQ空间功能开发,实现:注册、登录、发表说说,发表日志,评论,上传头像,赞一个。

技术架构:Struts2 Spring Hibernate

责任描述:独立完成数据库设计,完成所有功能。通过QZONE项目,掌握S2SH框架,掌握框架的基本流程。还有一些小的J2SE项目,如Java版QQ,没有列在上面。从项目的数量和质量上来看,已经超过任何一家培训机构的要求。他学习Java的时间一年半多点,全部为课余时间学习。所有学习内容都来自网上。如DRP(企业资源分销计划)是节点动力王勇的培训视频项目。QZONE就是模仿QQ空间做的。做在线聊天室是为了学习服务器推技术。

在线商城,是要完成专科的毕业设计,其中购物车采用cookie实现。找工作的前2个月,他又迷上了C,汇编语言,数据结构,自称Java已不能满足他对计算机的欲望了。“我要搞底层!”,以致于他在面试Java时,称自己3~5年的发展是做个黑客。

(结果这次面试就cancel掉)具体说说:

1、计划=-好学习时间和进度。他的进度全部自己掌握。其中DRP项目是跟着视频过了一遍(差不多两百集),把所有的业务都实现了。掌握了web开发流程。在学J2EE之前,他过了程序逻辑关,自学了半年多Android课程,主要是Android游戏开发,做了一些游戏如太空大战等、一共学完成了4~5个项目。Android都是看书自学。

这些学完了,因为不到18岁。我对他说,Android的开发团队都比较小,公司不会招一个小朋友来把Android项目交给你做。反正你现在还没毕业,不如先学学J2EE。这时他完全不了解JS,数据库,web的内容(了解一点点HTML)。他没有赶进度,是因为年纪比较小,业余时间学习。自学编程进度上可以根据自己的情况定,我的建议是先了解整个体系。以项目驱动的方式来学习,找一个系统的视频教程。

2、多做多练。练习、项目是对学习最好的检验和升华。在不断的练习和项目中强化了知识点。我打过一个比方,一个个知识点好比珍珠,如果没有一个大的项目来把这些知识点串起来,你所学的知识就是散乱的。很多东西是过了你眼,过了你耳,没有过你心,很快就忘记了。编程是一门实践性很强的学科,在项目中解决的问题会升华你对知识点,技能点的认识。(关于如何自己确定一个项目去练习,得另文详述了)

3、遇到问题,独立解决。这点可能是大家在自学中遇到的最难的地方。我自己是Java培训讲师。但是他的问题我基本不回答,他也很少问我。都是百度,GOOGLE。这是一个艰苦的过程。我听到他解决一个问题的感慨,“这个问题憋了我3天了!”。印象中我只跟他解决过3个问题。其中一个问题还只能算跟他讨论,最后他自己解决了告诉我,我写了一篇文章: http://blog.163.com/ppy2790 126/blog/static/10324224120133211493846/4、不足地方。他学习做的练习、项目多,但缺少总结、笔记,我曾向他建议写BLOG。这是一个非常好的学习习惯。CSDN、iteye、51CTO这些对于学习编程的童靴来说是写博客最好的地方。
【转角ITman】不迷茫,程序员,在路上。喜马拉雅FM(上嵌电台)为IT准职业人,IT职场新鲜人打造的职场访谈类节目,分享职场经验,关注成长话题。分析IT职业生涯,开启精彩职业生活。欢迎关注上嵌电台一起成长~~~
[置顶] Java自学最佳实践 get√_第1张图片

你可能感兴趣的:(java,Web,互联网,软件开发,移动互联网)