从事Java后端开发,要学习哪些知识和技能?

很多小伙伴想转行做Java的后端,但是又不知道到底该学习些什么。

今天师姐就跟你们聊聊做Java的后端,需要学习和了解什么

首先要明确后端包括哪些职业

DBA(数据库维护优化专家),

Developer(程序猿),

Architect(构架师),

Scrum master及类似(敏捷开发专家),

Project Manager(产品狗),

Maintenance&ITsupport(通讯和服务器相关),

当然这只是一个大致的分类,并没有一个清晰的界限。

按程序猿内功而言:

关系型数据库,

领域驱动设计(Domain-Driven Design),

设计模式Design Pattern,

算法Algorithm,

面向对象编程OOP(SOLID),

线程安全,事件驱动,测试驱动开发,

依赖注入框架,等等。

对于初学Java并且有志于后端开发的同学来说,需要重点关注以下几个部分:

基础:比如计算机系统、算法、编译原理等等。

Web开发:主要是Web开发相关的内容,包括HTML/CSS/js(前端页面)、 Servlet/JSP(J2EE)以及MySQL(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面)。

J2EE:你需要学习的是Servlet/JSP(J2EE)部分,这部分是Java后端开发必须非常精通的部分,因此这部分是这三部分中最需要花精力的。关于Servlet/Jsp部分视频的选择,业界比较认可马士兵的视频。

最后一步,你需要学会使用数据库:mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。

你不仅要学会使用JDBC操作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。

开发框架:目前比较主流的是SSM框架,即spring、springmvc、mybatis。你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。

你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解。但你一定要可以快速的利用它们三个搭建出一个Web框架,你可以记录下你第一次搭建的过程,相信我,你一定会用到的。

还要提一句的是,你在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。

你需要去看一些JDK中的类的源码,也包括你所使用的框架的源码。这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?由此也可以看出,这些学习的过程是环环相扣的,如果你任何一个阶段拉下来了,那么你就真的跟不上了,或者说是一步慢步步慢。而且我很负责的告诉你,我在这个阶段的时候,所学习的东西远多于这里所罗列出来的。

总而言之,这个阶段,你需要做的是深入了解Java底层和Java类库(比如并发那本书就是Java并发包java.concurrent的内容),也就是JVM和JDK的相关内容。而且还要更深入的去了解你所使用的框架,方式比较推荐看源码或者看官方文档。

再总而言之,就是学习、学习、再学习~

去哪里学习?来找师姐啊~

班级里良好的学习氛围,

班主任每天的定时督促,

项目经理的实时问题解答,

教学老师带你进行项目实操,

既系统学习了知识,又拓宽了朋友圈。

你还有什么理由不来?

风里雨里,我在达内等你……

— END —

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181015A0A0JC00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券