百科问答小站 logo
百科问答小站 font logo



自学Java最起码要学到什么程度? 第1页

  

user avatar   huang-xue-bo-77 网友的相关建议: 
      

找工作的万能公式:扎实的基础+符合的项目经验+(比赛的经历+博客或git的输出)

自学了6个月java的你,想要一展拳脚,想要通过找工作展翅高飞的梦想往往在面试的时候就会破灭掉:经过了3年半【佛系】的学习和6个月紧急的冲刺;你引以为傲的数据库知识,在第一次面试时就被面试管嘲笑;嘲笑你对储备过程的理解,并抛了句“你是计算机专业毕业的吗?”

你开始发现,你离一份工作的差距,远远不是一个紧急冲刺能够解决的。在这个计算机很卷的时代,在这个地域工资差距很大的年代,你可能把java基础知识学的很好,你依然被别人看成是j行业小白。

选择转行吗去考公务员?可是你清楚的知道,如果你现在退缩了,可能就就和计算机告别了——如果转行了,你可能就要回到家乡,甚至更偏远的地方;可是继续找开发类的工作,问题就解决吗?好像也不是,面对的可能是大城市高傲的房价。

这时的你开始抱怨:

“万恶的程序员制造工厂”,每半年就会像社会推出一大波毕业生。

“垃圾的学校”教的知识和社会用的完全和社会脱轨。

“牛逼轰轰的面试官”面试造火箭,入职拧螺丝。

你们以为我是在讲故事,对不起,这是我真实的找工作图鉴。那来看看我找工作的血泪史吧。

在开始黑历史之前,先做一下自我介绍。

我,一个普通到不能在普通的程序猿,学校和学历甚至比我的长相还要平凡,双非院校小硕。

读书期间主要用的语言是PHP和C++偏多。没研究过什么算法,因为数学限制了我的想象,也不想整天在用人家的算法把参数调来调去的。只想安安静静的写写代码,所以毕业想找一份java的工作。

于是开始了半年期的疯狂的java,每天早上看知识点,下午去刷题,程序员客栈等网站还有排名。我的目标就是干倒前几名。经过六个月的疯狂的java练习,于是乎满怀奔向美好工作的愿望开始了我人生中第一次找工作经历:

part1:

上学的某天,导师问我毕业后想去哪里。我说回安徽周边吧,合肥,南京都行。老师又问到什么不想去北京、上海呢?我说离家远,我还是个孩子。我想离家近一点,而且穷人家的孩子。房子也买不起啊。这时候,我好想知道点什么了,这不是老师要给我推荐工作了吗?

呵呵,我就顺势问道,老师您有啥建议呢?老师说去南京吧,我有同学在,帮你问问。于是赶快双手呈上我的简历,并且鞠躬对老师说谢谢老师,您辛苦啦。过了1周后,老师和我说,很可惜。人家说最低要求211,连个面试的机会都没给我。哎(心痛)

这时候我才知道是世界500强的某某航天****公司。

得到结论1,找工作要看学校,特别是好的公司。(来南京之后更有体会,有些公司虽然没写到非985、211勿扰。但是他们也是不会招的,还不如写上,浪费我辛苦整理的简历,时间不要钱啊)

part2:

老师也试过了不行就只能靠自己了,于是在招聘网站上如前程无忧、实习僧等网站注册了一波。咨询同学怎么投简历,大学同学告诉我要海投。然后通知面试后在选择去与不去。

没有经验又摆着高傲的架子,哼爷不才不海投呢。于是试验下的投了几家大厂,映像最深的是携程,因为上海那边我只投了这一家。1周后没有反应,就在这时,接到某南京某亚公司邀请面试。

起身前往南京,去了该公司。面试问了我一大丢通信和消息方面的东西,一脸蒙蔽。虽然读书时用了别人开源的消息通知转发机制,但是只是用了而已。没有去看人家的实现逻辑,最后面试官客气的和我说了一句,实习工资2500。我去,通知我来我也不来啊,2500交了房租吃饭都不够。

得到结论2,找工作其实人家关心点是你做过什么项目,符不符合人家公司的方向。

part3:

在南京这以前大学小伙伴的地方住了1周了,每天就在程序员客栈上刷着JAVA的基础题,期间杭州的某金融公司服务巨头公司(很顺的那个)联系过我希望我去他们公司,因为做PHP吗,项目经验又多。就被他们看中了,实习工资5K,当时还真有点想去哈哈。

就在这期间,收到某外企的面试通知,看到面试邀请的内容我就放弃了。要上机做算法题,ACM级别的,显然不是我强项,还是去写Android。

得到结论3,平常还是要多参加一些比赛啊。

反正经历了面试的捶打之后,最后经过一个月的恶补java基础找到了一份工作,也就是我的上家。

得到论文4,找工作基础知识要过关。


故事说完了,你们知道找工作的几个要素了吗?你们不会就在看热闹吧!给你们总结一下啊。

一、巩固的java基础知识

我建议你们不要管别的东西,就拿一本最基础的java知识点来学习,不要管什么设计模式,框架原理。先看基础点,就去买一本或者网上白嫖一个电子版的去看。最重要的是动起手来,把知识结合项目去学习理解实践。

不要看到这么多java知识点你就恐慌,你只是去找一个几K的工作用不是几十K的工作。

1、理解面向对象的编程思想

一定要有万物皆可盘的思想,哦不是万物接对象的思想。

避免习惯性的使用面向过程的编写代码的思路(这个比较符合初学者的习惯),按照思路来写方法,然后跟着你都想到的过程一步步的写下去。

这不,我实习那年就被嘲讽了,写了一个功能,结果大佬来和我说,你为什么要基于面向过程开发功能。我擦心酸啊,对不起对象啊。

2、学习基本的数据类型

整形类

浮点型

字符型

布尔型

3、学习变量有、常量的一些定义

java中的变量、常量定义、变量赋值、命名规则

4顺序执行、条件分支、循环分支

5、掌握一些基础的运算符。

6、掌握一些经常使用的容器、会区分他们之间的区别(比如List和set)

7、配置好自己电脑的环境下载一个编译器如idea或者eclipse练习。

掌握了基础知识之后,你会感觉你很空虚,就跟你学习了武功的心法一样,但是不知道如何去运用它,这时你就需要把知识点用到项目中,再去巩固知识点,不要光看书,重要的事情说三遍,如果你赶紧基础知识学的比较无聊,现在有很多网课可以学习,比如下方的小卡片你可以点击看一下:

二、增加自己的项目经验

除了我上面提供的卡片之外,项目可以来源你的平时的学习和生活中。很多企业都是看你的项目经验符合不符合他们公司的技术栈,如果符合可能才会给你面试机会,当然校招除外。

其主要来源于:

1、毕业论文

其实你的毕业论文就是一个很好的项目,你既可以完成你的毕业设计,又能丰富你的简历,一举两的事情。最后你还不用担心你的毕业论文被卡,毕不了业。当时我最后回去准备毕业论文,从开始写到最后结稿也就用了不到10天。当然离不开老师和学弟们的帮助,这里要感谢他们。

为什么我会写的这么快呢?因为我有东西啊,我出去实习之前就把毕业论文里面要做的东西给完成了,最后就剩下把产出转化为纸字版本。

2、与老师沟通寻求其他老师的帮助

如果你的老师没有项目,你可以和他商量,让他介绍你去有项目的老师那帮忙学习。我上学的时候就经常帮助其他老师完成课题,有些是挂名的,有些是真做的。这样的机会不要放过,然后尽快熟悉项目的整个流程,并且安心的做某一块东西。

因为面试的时候,人家不仅要问你要做过什么,更重要的是你在这个项目中做了什么。

3、参加学校组织的一些项目

比如学校的官网需要升级,你就可以报名参加,这也是一次增加经验的机会。

4、git,csdn等平台

现在的网上学习资料这么多,csdn,git上就有很多人家开发好的项目,你不妨找一个感兴趣的拿过来,学习模仿然后改变其代码,变成自己的项目。最关键的是要

注:项目多固然是好事,最重要的还是需要你理解项目所用到的技术。建议你们多了解你们用到技术的实现原理,有能力的可以深入到源码中,因为面试的时候面试官可能会问你怎么实现的。

三、提升自己的硬件,大学生的唯一方法就是去考个好学校的研究生。

找工作要看学校,特别是好的公司。(来南京之后更有体会,有些公司虽然没写到非985、211勿扰。但是他们也是不会招的,还不如写上,浪费我辛苦整理的简历,时间不要钱啊)

不想考研的,可以Pass这一条了,想考研的小伙伴请看:


四、在校期间可以多参加一些比较,学习一些算法。

可以在学校的时候多参加一些计算机的比赛,比赛可以让你了解一些算法,面试的时候你说过得过什么奖之类的也是一种优势啊。

五、有总结写博客或更新自己git上的习惯

我有个小伙伴因为喜欢定期更新我们自己的项目到git上,当时获得了去阿里实习的机会。写博客是一个总结学习知识的机会,还可以供以后检阅。我个人就喜欢把自己开发的代码抽时间整理一下,然后建立一个新的项目当成我自己的代码储备仓库。建议你们也能养成定期总结的习惯。

如果你能完成了以上几点我相信你找个几K或者10几K的工作应该不成什么问题。当然几十K可能我们还达不到要求。

宁愿跑起来被拌倒无数次,也不愿规规矩矩走一辈子。就算跌倒也要豪迈的笑。如果在给我一次机会让我面对那个问我是不是计算机专业的面试官,我会立马起生拿走简历,并对他说句,祝他早日秃发。是不是经常在家受气才会导致内分泌失调,有病就去看病。

最后的最后,不要忘了点击我的小卡片,高效的学习java


我很庆幸你能看到最后,我是H.专业写BUG,一个被写BUG耽误的段子手,如果你喜欢我的回答,不妨双击666点个赞标记一下,供你下次观看。

老板来点粉丝吧,退点牛肉给你。感兴趣的可以关注我哦。




  

相关话题

  如何看待网上关于「阿里P7程序员、资深架构师不知 jvm、红黑树」一事的争议? 
  java中的==和equals有什么区别? 
  代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分? 
  自学 Java 怎么入门? 
  Kotlin 作为 Android 开发语言相比传统 Java 有什么优势? 
  为什么全网甚至全中国找不到一个能轻松,清晰,简洁明了把java编程讲清楚的人? 
  多线程下载一个大文件的速度更快的真正原因是什么? 
  为什么 Java 只有值传递,但 C# 既有值传递,又有引用传递,这种语言设计有哪些好处? 
  为什么 Java 会有 JVM,其它语言怎么没有对应的 VM? 
  为什么java中声明多用Map,List而不是具体实现类型? 

前一个讨论
怎样看待大学里的学长学姐在路上推销笔这一行为?
下一个讨论
上了研究生,大家都是独来独往吗?





© 2024-12-23 - tinynew.org. All Rights Reserved.
© 2024-12-23 - tinynew.org. 保留所有权利