写点什么

应届生想要找到一份 Java 开发的工作,需要达到什么水平?

用户头像
极客good
关注
发布于: 刚刚
  1. 综合技能方面,能知道基本的数据结构知识(线性表外带排序外带一些树的技能),基本的操作系统知识(一般仅限于线程进程概念),基本网络通讯知识(一般仅限于网络通讯模型和 tcp udp 协议),但这仅仅是“需要知道”而已。


大家其实也可以通过看各种职位描述和招聘需求,看下哪些技能实际上是不会问的,对于这些知识,就不用学,从而把精力用到学实际 Java 相关技能上。


这里需要说明,在大学阶段学的很多知识,不能说没用。比如网络通讯里的 tcp 底层通讯细节,这些技能或者要等到工作 5 年后升级到高级开发或架构师的时候才会用到,而且以高级开发视角观察需要掌握的通讯协议细节知识,绝对要比大学阶段要复杂。


换句话说,很多技能,在大学阶段也就“需要了解有这事”,以在大学阶段的经历,再多用时间学,估计也无法达到“实际项目的需求”,而且等到有实际项目经验时,再学这类技能也就是一两周的事情。两厢一对比,结论就很明确了:在校阶段应该更多积累实际开发能力,因为更得靠这个找工作。


如果大家对于学习 Java 有任何的问题,关于如何提升学习 Java 以及学习方法、学习技巧、快速达到就业的技术水平,都可以随时到这个群问,建立了 5 年的 Java 学习交流群:796 866 257


有不懂的问题可以随时在里面问,需要 Java 各个阶段的学习资料也可以在里面进行下载。里面有很多大佬,关于前端和 Python 的问题也可以问我。


四、用一个月的时间了解 Java 核心部分的内容


通过上文,大家大致可以了解到毕业时找工作的目标,如果再不了解,可以实际看下招聘要求,甚至直接多去参加招聘会和面试,总之优先考察实际的开发能力,具体在 Java 核心部分,该如何高效学习呢?


  1. 在电脑上装 jdk,eclipse,别用 editplus 之类的工具,最好再用 eclipse 的自动编译功能。这方面,其实是锻炼自己的动手搭建环境的能力,工作后,开发是一方面,搭建环境的能力同样重要。

  2. 刚开始,一定得去找两三本 Java 入门书,先通过运行现有代码,理解代码的含义。别光看书不运行,开始阶段,也多运行别人的代码,别自己敲代码。这里建议直接找书,因为相比一些视频教材,毕竟书上的知识很系统,而且能正式出版的书一般没代码问题,能直接运行。不建议自己敲代码,是因为自己敲代码时,多少会遇到问题,遇到问题后延误学习进度是小,因为一直得不到解决从而影响学习信心,甚至终止学习了,事情就大了。

  3. 如果找到两三本 Java 入门书,一般其中涵盖的知识系统大多很相似,大家可以先运行一遍所有代码,这样就能大致掌握代码结构和基本知识点,而且由于书上代码一般问题不大,而且质量也不会低,至少不会有太大的阻碍性问题。

  4. 当运行好以后,着重观察集合,面向对象,多线程,IO 处理,JDBC,异常处理相关章节,这个阶段,是以掌握 API 用法为主,在这基本上再看下诸如接口,抽象类,异常处理流程,垃圾回收之类的高级知识点。


在上述基础上,如果可以通过资料的帮助,用 Java 实现堆栈,链表,队列,散列表,树等的数据结构,同时操练各种排序算法,这对找工作也有些帮助。


五、用半个月的时间,以 MySQL 为例,了解数据库的大致操作


在数据库方面,最好也去找本书,同时在 MYSQL 上实践。为什么选 MYSQL?因为这比较轻,相比 Oracle 而言,好安装,当然如果有条件装 SQL Server 之类的,那就更好了。


  1. 在 MySQL 数据库上,实践各种增删改查的 SQL 语句,实践建表,建索引能技巧,同时实践一下诸如子查询,with as 等等复杂的 SQL 语句。

  2. 用 JDBC 连同 MYSQL,在 Java 代码里做各种增删改查的操作。

  3. 在此基础上,了解诸如索引,范式和锁等概念,这时候虽然认识也会很肤浅,但至少不会一头雾水了。


这样,在数据库方面,好歹有实际操作经验了,这为之后的项目实践,能打下很好的基础。


六、用一个月的时间,了解基于 Spring 的 web 框架


面试时更看重的是框架经验,这块学习的建议如下。


  1. 先通过运行代码,了解 Spring 里 IOC, AOP,这时应该注意各种配置。

  2. 熟悉 Spring 的基本概念后,可以尝试跑一个 SSM 的小例子,这个例子可以非常简答,就一个页面也行,但要包含 Spring MVC 和 Mybatis 诸多要素,这样大家好歹能知道框架的构成,在这个基础上,可以继续扩展,加些必要的业务,从而进一步了解这个框架。


在这个阶段,还是最好看书上的例子,因为书上的例子一定能通,而且还会带部署和运行的步骤,还是不建议自己敲代码,因为 SSM 框架相对复杂,在这个阶段如果自己敲,很有可能会因为问题太多而放弃。


  1. 在自己机器上跑通 SSM 框架的案例后,可以网上找个带业务的系统,比如图书管理系统等,从中看些前端和后端交互数据的流程,同时,结合业务看 Mybatis 里的 ORM 过程,以及 Spring 里的常用注解。


七、在学习过程中,可以避免的误区


Java 方面,本人按照上述步骤辅导过不少在校的同学,只要肯上心练习,效果不会太差,不过很多同学在实践过程中会走弯路,这里列些普遍存在的问题,请大家在操练的过程中尽量避免。


  1. 别钻牛角尖,先面再点。比如有同学对一个知识点不理解,或者一段代码运行有问题,就会在这个点上耗费很多时间,不解决就不继续。其实在这个过程中,首先需要全方位掌握 SSM 框架、Java 技术和数据库,个别点如果有问题,可以跳过,或者一个案例运行不通可以运行其它类似的,总之别在一个点上花费太多的时间。

  2. 再啰嗦一下,最好先照着书上代码运行,开始阶段的学习方法是“复制粘贴运行理解”,在自己已经有一定的基础后,再尝试自己写代码。

  3. 在操练 SSM 项目时,有些同学会照着视频上提到步骤做,如果有些视频步骤不对,这样就会有问题,所以还是建议照着书做。

  4. 工具要选对,刚开始就 eclipse,或者 Idea,别用 editplus 或命令行。


上述是方法上的误区,其实最大的问题出在态度上,上述学习过程持续时间不会短,快则两三个月,慢则半年,如果中途因为效果不明显而放弃,那就很可惜了。


八、有学习项目经验后,争取找些商业项目的实践机会


按照上述步骤,让自己拥有最基本的 SSM 以及其它 Java 和数据库相关技能后,要做的绝不是继续积累学习项目经验,而是尽可


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


能去找实习的机会,以积累商业项目的经验。在找实习经验方面,大家可以参照如下的建议。


  1. 在我之前的博文里也提到,大三时,打听计算机学院里哪些老师和外面公司有合作,一般硕导都有这样的项目,然后直接去找老师,刚开始不要钱,只求经验,或许对各位在校生同学而言,这种方式是比较可行的,本人第一个商业项目经验也是由此得到的。

  2. 一般学校里都会安排实习,实习的过程中,一定要重视,这个是实打实的商业项目经验。

  3. 寒暑假,找软件公司,这可能会比较艰辛,因为在校阶段自己非常难找相关实习机会,但要去找。

  4. 这个大家根据自己的实际情况自己斟酌:如果报培训班,多少能积累些项目经验,但这仅仅是学习项目经验,不过在培训班里,可以找相关老师推荐实习的机会。

  5. 如果实在找不到实习的机会,那么尽可能通过各种渠道,去找商业项目经验的案例,我知道有些网站有,但不做广告。虽然靠这种方式积累的商业项目经验质量就打折扣了,但好歹聊胜于无,而且毕竟很多毕业生,连学习项目经验都没。


不少在校的同学发现,哪怕实际只干了三个月的商业项目经验,自己的技能也会很大程度提升,而且实际的商业项目经验,会让大家掌握书本上根本不会多提但项目里一定会用的技能,比如 JVM 内存调优或多线程并发。从这意义上来讲,只要有条件,大学生朋友应该挤破头去找商业项目的经验,而不是悠哉游哉地坐在机房里敲代码。只要你有商业项目的经验,哪怕就三个月,找工作时你就有代差优势。


九、毕业生准备简历的要点


按照上述步骤,大家在毕业时,多少会有些商业项目经验,再不济也能有学习项目经验,请记住,在招聘毕业生时,第一看项目经验,第二看项目里包含的技能,第三再问算法和理论问题,至于逻辑题和情商题,只供参考。

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
应届生想要找到一份Java开发的工作,需要达到什么水平?