纵观Java开发平均月薪超2W。
!
如果已经有一定的编程基础,比如具备C语言的编程基础,那么通过知识迁移是可以快速掌握Java编程的,但是如果自身并没有编程语言的基础,那么学习Java则要一步一个脚印,在求快的同时也要求稳。
Java语言经过多年的发展已经形成了一个比较完善的语言生态,在Web开发、Android开发、大数据开发等领域都有广泛的应用,可以说如今的Java已经是一个“语言帝国”了。Java语言虽然内容比较多,但是基本上与应用场景有密切的关系,不同的开发场景需要学习不同的知识(API)。通常情况下,学习Java都以Web开发为学习的主线,然后在再根据具体岗位进行相应的学习。
Java学习整体上属于先难后易,所以要想快速入手Java编程需要打下一个扎实的基础,这个基础包括以下几个方面的内容:
第一:面向对象基础。学习Java的根本在于对面向对象开发过程的理解,面向对象的开发过程包括类的设计、对象的创建和方法的调用。不管未来程序的规模有多大,这个根本的步骤是不会变的,所以一定要把握住这个根本的编写原则。
第二:掌握面向对象编程的三大特征。Java编程的三大特征是封装、继承和多态,掌握了这三个特征几乎就掌握了Java最核心的内容。封装的步骤有三个,分别是私有化成员属性、定义设置器、定义获取器。继承则是在已有类的基础上创建一个新类的过程,重点在于发展。多态则体现在“两个方法、三个定义”上,具体包括方法重写、方法重载、父类定义、抽象类定义和接口定义。
第三:掌握多线程。并发编程是Java中的一个重点内容,也是Java稳定性能的重要保障。Java的并发编程内容比较多,包括Thread、Runnable、synchronized、并发工具类、并发框架等,我在头条上写了关于Java并发编程的系列文章(共22篇),感兴趣的朋友可以看一下。
最后,要想快速掌握Java编程,一定要重视实践。
我从事软件开发工作多年,目前也在带软件开发团队,我会陆续在头条写一些关于软件开发方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有软件开发方面的问题,也可以咨询我,谢谢!
学习JAVA可以看哪些书?
入门到进阶。
你现在的目标是三个月后能找一个一般公司的JAVA后台工程师的岗位入行,从这个角度讲,很多学习的知识点需要做减法。因为很简单,普通公司一个初级工程师的岗位,不会要你什么架构、算法、高级的框架定制,能够用业内常用框架、有质量保证的完成一些业务模块就可以了。所以你也不用太担心,把问题搞得太复杂。以下是我以前带新员工时给他们的一些建议,希望对你有帮助。
第一步:打基础
后端知识:
1.1 JAVA语言:找一本JAVA基础书把上面的知识点过一遍,侧重面向对象、文件IO、集合类、多线程;你一周后尝试写一个相对复杂的业务逻辑,比如统计代码行(去注释)或者计算器(给你一个复杂带括号的四则运算公式能给出结果),swing啥的别去学。
1.2 数据库:先只学mysql就可以,自己装一个mysql用客户端登录进去操作,学习基础语法,初步达到效果建议如下。你构建一套学生成绩表,诸如学生信息、考试成绩、班级信息等;聚焦单表增、删、改、查;左右连接的跨表查询;简单查询,如某个成绩的平均分、超过某个分数的学生信息、班级成绩排名等;
前端知识:
1.3 建议直接在W3Cschool网站上把HTML、CSS、JS的基础知识点过一遍;你不用都记住,因为目标是后端工程师,有概念就行;
1.4 把Jquery学一遍,学完后综合1.3的知识点,你看能不能完成一个左树右表的常用管理后台界面框架;
第二步:WEB开发基础
2.1 学习tomcat下用servlet + jsp + jdbc完成一个简单的管理系统。目标是有登录,登录进去后能够做一些常见的业务操作,比如结合你自己熟悉的工程项目管理。
备注:之所以不建议直接上框架,是建议你在这一步去了解所谓的web项目,从浏览器 到 HTTP请求 到 WEB服务器 到数据库 的本质是什么。这里你会用到Ajax(是必须的知识点)。
第三步:框架下的WEB开发
3.1 建议用springmvc + spring3 + mybatis3 去重新实现你2.1 完成的管理系统。
备注:在学习第二步、第三步的时候,你会碰到很多概念,诸如AOP、IOC、连接池等,不用管它,先以能调通、能实现功能为目标。
第四步:重新夯实知识点
上面所有的工作都是以小步快跑的形式做的,其实你真的走到这一步,你已经对JAVA技术栈下的WEB开发有一个直观整体的了解。往下你要对遗漏的点进行夯实、补漏:
4.1 开发环境:切到maven去搭建SSM框架
4.2 生产环境:在阿里云上买一台入门级的linux服务器,搭建tomcat、mysql,并部署你的工程;
4.3 原理性知识:把spring ioc、AOP的原理过一遍;有一本叫《从零开始写JAVA web 框架》不错
4.4 应用性知识:如何做权限控制、如何使用定时器、如何使用缓存、如何使用日志;每个点自己去网上查方案,然后可以补充到你的工程里去。
4.5 数据库知识:你可以尝试编一些相对复杂的统计报表来练习SQL、Mybatis的熟练度;
4.6 分布式框架(可选):学习并搭建一个dubbo或dubbox的项目、学习下springboot的web开发。这个github上有很多参考项目,你对着人家源码学习就OK。
我差不多能想到的就这些,剩下的就是找一份合适你的工作。给你几个建议吧,
- 第一份工作不要太看重薪酬,能踏实入行最重要,IT这块有能力跳槽薪酬涨涨很快的;
- 如果确实技术没法那么快提升到位,至少态度一定要积极,该加班就加班;
- 可以找与自己专业相关的IT行业,这样你自己在产品业务这块就有优势;
祝你好运:)
java程序员如何提升自己?
深入学习Java方面的内容,了解过“如鹏网”的Java提高课程,可以参考一下,内容包括:分布式、设计模式、前端技术、网络支付、全文搜索引擎、Docker、WebService等。Java提高详细的知识点和学习路线 ,可以作为参考。
第一阶段:
第二阶段:NoSQL
第三阶段:设计模式
第四阶段:分布式技术
第五阶段:综合项目
详细的可以到“如鹏网”上去了解一下,有网络的地方就可以学习,口碑不错,基本上都会慕名而去的。