当前位置 : 首页> Java培训 > 不要在问你适不适合学Java开发

不要在问你适不适合学Java开发

时间:2021-04-25 21:48:02   已访问:844次
热门专业

我适合做Java开发吗?

我感觉自己语言组织的不怎么好,首先因为自己比较矛盾把,有些摇摆不定.

从头说一下把,我其实是一开始学了C入门,然后学了单片机,这些当时都当做爱好来学的,也没有很深入的学。 然后后面想学java去找一份关于编程的工作,做过几个小项目确实是有朋友在培训班的项目然后我也一起写的。。。其实仓管项目他也有用到很多知识,比如tomcat spring mysql还有jdbc jsp ajax这些感觉都有用到

感觉自己只注重编程的结果,导致自己基础理论很差这句话我感觉自己可以解释一下,这句话是形容自己当时在学的时候是这样一个心态,以为自己拿出一两个项目出来给别人看一看,就可以直接通过面试了,这个行为在我出去被毒打一番以后就知道很愚蠢可笑了。。。。

然后基础理论很差,这个的话像计算机的基础概念这些肯定是懂得,我感觉自己都会用,然后让我说出来我就只能说出个别的点,并不能把他说完说全差不多是这样子,但是我在写的时候不能说全能用上把,大概起码有百分之六七十是会用的。 第一份工作离开了有两个原因进去基本上就是写最基础的我在仓管上写的增删改查curd,没有让我参与真正的开发里去,而且他那里确实需要着这种人。。。所以虽然我干了接近一年基本上没什么进步反而有一些框架上的东西还忘记了,现在想想还是非常后悔的,因为当时面试屡屡碰壁,面试项目这一块让我自己讲解自己的项目这一块基本都过了,但是有一些笔试和纯概念的问题我都答不太上来,然后就比较急了吧感觉自己都学完了,项目也做了几个了(对当时的我还是很困难的)还找不到工作,然后面了一家肯要我工资也还可以的公司就抓紧进去了。。。

然后后面回老家了,有在老家和周边找过,(老家在乡镇没几个互联网公司)因为当时也不会开车,也没有什么公交能去市区的,市区的工作也不多,就没去市区找,而且就算去市区也要住在市区,我还不如直接呆在杭州。。。

最后虽然面中个近一点的,但是工资待遇什么都太差了,就没选择,还有一个理由是对方思考了一下决定还是找5年以上的全栈。。。。 后面渐渐的就放弃了,感觉在自己家这种不注重发展互联网的城市找一份java后端开发的工作太难了,然后学python主要也是因为兴趣把,写了个小的爬虫项目,然后我学python的时候也迷茫了不知道接下来该干什么了。。 我个人目前是在做少儿编程老师的,这种工作在我老家这边还是比较好找的,我也不知道为啥。想做回后端开发的理由有蛮多的,首先这份工作让我的生活不太规律。。。然后工资成长也是一方面把,我想做一份自己工作的时间久了经验累计下来了能有点成长的工作,然后也算是一份比较有挑战的工作把。 我比较犹豫的点就是想找一份不影响工作效率就可以不加班的公司多不多(项目上线前偶尔加班可以理解),还有就是我也不知道自己行不行,感觉自己没什么信心。。。。

从你的描述来看,语言组织还是挺凌乱的,对程序的表述也很摇摆,方向非常之不明确。

我重新组织一下:

你对编程有一定的热情,一开始学的是Java,做过几个仓管项目。

仓管项目没什么用,听上去像是培训班的项目……

第一份工作因为……只注重编程的结果,导致自己基础理论很差?

完全没看明白……你第一份工作到底是怎么了,基础理论差到底是怎么回事?

你说的基础理论和我理解的基础理论是不是一回事呢?

我理解的基础理论是算法+数据结构+计算机的一些基础概念(如IP、HTTP、SOCKet等)

但是如果是偏功能性开发的工作,其实对前两者的依赖并不大。而后者,如果你真的是对计算机编程很热爱的话,不应该一点概念都没,都是烂大街的东西,就算真的没有,网上一堆开源的项目和现成的方法,基本上不会对你的工作构成障碍。

所以我也没明白第一份工作到底是怎么了……最后是公司辞退你了?还是说你因为家里的原因,于是你主动辞退了这份工作,然后回老家去了?

回老家以后你自学了Python,可是前面你不是已经认识到基础差了么,为什么不深入去补习一下,为什么又学了个新的语言呢,这真不是哪个热门学哪个?

其实单Java一块想学好了就非常难,而且掌握好基本可以通杀大部分的业务。

你用Python做过几个简单的小项目,什么项目我也不知道,是1+1=2的这种hello world,还是写了个爬虫项目?

现阶段你很迷茫,我写到这也替你觉得迷茫,因为没什么明确的方向,也没看出来你到底想干嘛啊!

Java的话,Spring全家桶现在是招聘需求上必备的内容,基本上要你深入了解Spring的那套原理机制,Spring的注入怎么实现的,Spring的一套流程什么的,你要么看视频要么买书,要么自己去解读Spring的源码,至少这一块能在别人面试的时候不被难问,哪怕是硬背都要背下来。

关于Spring的内容现在也是烂大街的东西,针对面试,Spring这方面的内容攻略非常多,只有你不想学的,没有你学不到的。

MyBatis+MySQL是数据库技术的大头,MyBatis的运行机制,如何注入解析XML最后拼接成读取数据库的代码,其中的原理和流程你可以深入了解下去。

这几块对Java语言的基础是有一定要求的,起码你要很熟练的了解反射和代理的机制才行。

MySQL那是另一块技术栈,和编程语言关系不大,是一套专门的SQL技术语言,至少要了解的是MySQL语句的用法,常规的优化,百万千万级别数据下的设计,索引的原理(涉及到数据结构B+树吧),还有MySQL的性能调优和常用的一些命令参数,日志查看,事务处理等等。

不要求你全部精通,至少能说出个所以然来,不会显得你一窍不通即可。

Orcale大多数情况不会来要求你有多掌握,特别是中小型公司,用Orcale的凤毛麟角,真到这个级别的公司,也不会让你去掌握Orcale了,有专门的DBA,并不用刻意去深入。

tomcat的话现在已经和SpringBoot整合了吧,都是微服务方面的知识,针对微服务,又是一块很大的内容。而jdbc的话,现在问得最多的应该还是数据库连接池方面的知识内容。

而后你说到的jsp,这个实际工作中已经很少会碰到了。目前的技术栈都是前后端分离开发,你说的后面那几个什么jquery ajax js,三个放在一块说,估计你对这块理解的也不是特别深。

因为前后端分离,所以你关注后端开发就可以。除非你立志要做前端开发,不然后面可以不用去了解。除非是某些公司需要你做全栈工程师,让你前后端全部吃下。

即使真的让你做全栈,你这些前端的技术都是老技术,现在的前端是基于对原生JavaScript的精通下,采用Vue全家桶结合Css样式进行开发的一种模式,那就是另外的一个话题。

不要小看前端,现在前端的待遇并不差,而且也是开发中很重要的一个环节。

你说都有项目的实战经验,恐怕要泼个冷水,这些经验都没有什么用处,谈不上实战,后面你又说了真实的工作经验都没怎么用到这些,这就要打个问号了。

因为真实的工作经验都没用到,那又谈什么实战经验呢?实战经验都是要在工作当中实打实用过的,写代码的人都知道,在工作中经常会碰到一些很妖怪的问题,明明应该是这样的,偏偏这样就行不通,即使是书上或是网上人家写的经验,都不一定适用在你身上,甚至有的时候你直接用了别人的一段对方可以正常运行的代码,到你这就报错了,所以需要不断摸索,才能有更多更深刻的领悟和理解,这才叫实战经验。

你一会儿Java,一会儿Python,一会JavaScript,不知道的还以为你就是一个全栈工程师,可能是都了解一些,但看下来都比较肤浅。

然后你去公司面试,人家一会问你会不会PHP,一会问你会不会.net,一会又问你会不会Go?你这简历是怎么投的……一般要招的岗位技术要求都会写明白的吧。

为什么过去以后问的开发语言就变了?画风一下子相差这么大?很费解,一种情况就是你找的公司太傻比了,连想招什么样的人都搞不清楚;一种就是你投简历太盲目了,不会是碰到招程序员的就丢过去了吧,不过如果是后者,那面你的公司还是太傻比了,没有认真分析过你的简历就找你去面试。

最后,你的标题又点出了你问题的核心,就是你还是打算要做一个Java程序员?

唔,反正你的描述里面没有看出来你适合做一个Java程序员。你自己得根据现在外面对Java程序员的技术要求,好好整理一下思绪。


推荐内容