零基础的Java如何准备初级开发的面试

对于各位Java程序员来说,只要能有实践的机会,哪怕工资再低,公司情况再一般,只要自己上心努力,就可能在短时间内快速提升,甚至在工作2年后进大厂都有希望,因为项目里真实的开发实践环境是平时学习不能模拟的。所以很多想从事Java开发的同学其实是卡在了第一步:无法积累足以找到工作的项目经验,甚至不知道该如何积累,从而导致没面试机会,或者面试总通不过。这样很多有编程天赋有而且聪明上进的程序员可能就与感兴趣的职业失之交臂了。

作为面试官,我知道Java初级开发的最低面试标准,作为Java培训讲师,我帮助过不少零基础的人应聘成功初级Java开发岗,在这篇文章里,就将结合我的相关面试和培训经验,针对零Java基础零Java项目基础的同学,讲述下如何积累项目经验,以及成功找到开发工作的相关技巧。

1 明确目标:该去哪些公司?这些公司有哪些要求?

对于零基础的同学来说,目标可以是半年后(最快三个月)进公司干Java,这里的公司可能是如下种类:1 规模比较小的公司 2 外派公司,即以外派的身份到银行保险之类甲方公司去干活。3 外包公司,即在公司里干些分包的活。

当然你学历学校比较好的话,也有可能去挑战下大公司,但毕竟路要一步步走,而且这类公司里,有可能工作环境和氛围不如意,但项目里包含的值钱技术点足以帮助你在两三年后进大厂。更重要的是,这些公司的应聘要求相对比较低,大多是只要你在面试过程中。再进一步,下面给出了这类目标公司的面试要求。

1 商业项目经验越长越好,但至少做过SSM或Spring Boot的项目。

2 数据库方面,需要会增删改查,最好知道单机版调优技巧,比如索引和执行计划。而且在这方面,需要有Spring用Mybatis整合数据库的经验,知道在mybatis的配置文件里编写增删改查乃至事务的技巧。

3 Java基础方面,掌握集合,文件操作,异常处理,面向对象,多线程等基础知识,其实这块很大程度上可以通过刷面试题达到要求。

4 还有一些是所谓的计算机方面基础知识,即数据结构,算法,操作系统,网络编程等技能。其中可能也就会多问些数据结构和算法的问题,其它问题大多也可以通过刷题来解决。

以上是技术方面的,当然还有其它工作态度方面的,比如人看上去比较老实,肯加班,学习能力强,沟通没问题等,但说实在的,在面试的这段较短时间内,很少因为这些因素刷掉人的,比如我问愿不愿意加班,听到的大多是愿意加班,问遇到你不熟悉的技术怎么办,大多数的回答都是尽快努力学习。

其实说实在的,一些面试中的加分项,比如以敏捷等方式实践项目的技巧,JVM性能调优,分布式组件基础,linux实践要点和分析与排查问题的能力,虽然对于初级开发不做要求,而且要达到精通的程度确实很难,但真的要准备面试时的说辞,其实并不难,你说了就比别人强,在本文里也会给出相关技巧。

2 把公司的面试要求对应到技术点上

目标明确了,也就可以对应地列出该掌握的技术点了,当然在实践中可能会有增减,但至少不会出现“花大量时间去学无需掌握技能”这种情况了,下面将由浅到深,给出各方面具体要学的技术点。

首先最基础的当然是Java语法,其中包括基础语法,集合,IO操作,异常处理,JDBC,多线程。对初级开发而言,面向对象思想和设计模式这块太抽象,而且如果没有一定项目的积淀很难灵活应用,所以大多数初级开发也就是“会说”而已,这块大家只要多背些题,同时再结合项目说下你用过的设计模式应该就可以了,这块无需用大力气。而且一定别去看Java界面开发的,比如Swing方面的技能,因为面试不问。对于Java虚拟机和垃圾回收流程方面,虽然抽象,但项目里会用到,所以不仅需要掌握理论,最好再结合项目准备亮点。

其次是数据库方面,你得会结合一种数据库,比如MySQL或SQL Server或Oracle等,会写增删改查,知道索引怎么用,知道该如何建表,并且还要知道group by, having, 连接查询和子查询等的技巧。而且实际项目里,一般是用代码操作数据库,所以你还得掌握用JDBC和mybatis等操作数据库的基本操作,说白了该知道如何做增删改查。当然了,如果你进一步知道执行计划,Redis,Mycat等的资深调优技能,这一定是加分项,但这对初级开发而言不做过多的要求。

最重要的是框架方面,当前java比较流行的是Spring Boot和SSM框架,对初级开发而言,只需要能照着现成例子做增删改插查的业务模块即可,比如现有个增加订单的方法,需要你照着这个写业务代码,做个删除订单的方法。也就是说,这块需要你了解基本的Spring相关配置文件,以及SSM或Spring Boot项目的开发流程,以及和数据库整合的方式。当然你如果进一步具备调试框架代码分析解决实际问题的能力这更好,但这块对初级开发而言,难度并不是高不可攀。

以上给出的其实是低配版的技能要求,也就是说只要你会增删改查,基本也就达到了进小

你可能感兴趣的:(java,面试,经验分享,程序人生,性能优化)