现在很晚了,但是看到这个问题还是比较有感触的。一年前,我大三上学期,创业失败,想转行做技术。那时候我对Java刚刚了解这几个英语单词。 自己买了本Java从入门到精通。以为可以很快的学完,非CS专业。
现在我想说所有系列的从入门到精通都是垃圾,一年多来,我每天白天看视频,晚上敲代码到凌晨,我是一个很倔的人,我认为天下没有任何东西是人类学不会的,所以我就付出高三一样的时间去学习。最开始学习Java SE,看着控制台打印出第一行Hello world的欣喜,到后面学习打印二维数组算法菱形的恐慌,再到后面学习Java Swing的有趣,再到后面自己开发几款小游戏。
这其中有苦有累,总之就是很孤独,我从学校搬到了外面的小区,每天从事着自己喜欢的事情,一直到2018年1月3号,正式入职。是一个初创公司的后端主要负责人。一共收到4个offer。投了10多家。
这是这一年来我看的一些书籍。
刚开始的学习十分盲目,不知道如何去学习,看到一个东西觉得有趣就去研究,结果最后没有系统性的学习,还浪费了大量的时间。
现在我觉得如果你要学习Java技术可以先自学一段时间,看自己合不合适,但是一定要坚持,因为既然选择了IT,就要养成终生学习的习惯。下面是我觉得你作为初级Java工程师应该掌握的技术。
1.Java SE部分 初级语法,面向对象,异常,IO流,多线程,Java Swing,JDBC,泛型,注解,反射等。
2.数据库部分,基础的sql语句,sql语句调优,索引,数据库引擎,存储过程,触发器,事务等。
3. 前端部分, HTML5 CSS3 JS(和Java一样复杂,会使用就行), HTML DOM Jquery BootStrap等。
4. Java EE部分,Tomcat和Nginx服务器搭建,配置文件,Servlet,JSP,Filter,Listener,http协议,MVC等。
5. 框架部分,每个框架都可以分开学,在去学如何使用SSM 或者SSH框架,如何搭建,如何整合。开发中为什么会用框架,Rest是啥?Spring为啥经久不衰,底层如何实现等。
6.23种设计模式,掌握常用的,比如单例模式的多种实现,责任链模式,工厂模式,装饰器模式等,了解常用场景。
7. 基础算法和数据结构,八大排序算法,查找算法。(面试会问)
8. (不做硬性要求) 熟练使用maven等构建工具,git等版本控制工具,熟悉常用linux命令,log4j,dubug,junit单元测试,日志打印工具,Redis等NoSql。
9,也是最重要的一条,对待Java要时刻充满激情!
太晚了,今晚该休息了,全是手打的。明天在继续码字吧。晚安,希望对你能够有所帮助!
昨天晚上叫轮子哥帮我点赞,一觉醒来50多个赞了。20多条评论。看来大V还是有用的。
其实这也是我一直想说的,学习Java以来我就和轮子哥保持着沟通,希望向轮子哥多多学习,现在也算是朋友了。学习的过程也许是痛苦的,但是过程中认识的朋友以及结果都是令人很开心的。
评论里面有说推荐书籍的。说实话,国内国外的书籍真是一大堆。但是很经典的也就那么一些。大家都知道。
2018年12月1日,首先谢谢大家的赞。之前自称架构师有点儿吹牛吹大了。现在跳槽到一家中型公司。发现懂得越多越觉得自己无知。在技术这片浩瀚的宇宙里面翱翔,有兴趣会觉得这是一件多多爽的事情。希望大家能够努力学习,然后找到一份自己满意的工作。你我共勉
这里说说我学习Java的使用的几个网站吧:
How2J 的 Java教程 (有完整的流程和章节,最主要都是免费的)
Build software better, together(可以多看看别人的源码)
SegmentFault(有任何问题可以去上面提问)
Stack Overflow - Where Developers Learn, Share, & Build Careers(你的很多问题都可以在上面找到答案)
CSDN-专业IT技术社区(有很多书籍,软件资源)