JAVA的核心竞争力和技术壁垒

JAVA的核心竞争力和技术壁垒

唠一下个人浅显的看法

不知道有没有人像我一样,对于很多问题,都想得到一个最终答案;就像我玩金铲铲一样,通常都是按部就班的搞搞阵容,却很少想着去根据对战玩家的阵容去调整自己的阵容,所以时常就输的很惨。

于是我没事的时候,就回去百度和知乎搜索一下,Java的核心竞争力是什么?然后又搜了一下,JAVA有没有技术壁垒?

浏览了很多回答,发现很难形成统一的答案。

今天就随便尬聊一下自己的看法。

核心竞争力

所谓的核心竞争力,我个人认为,不只是指一门编程语言,或者一种技术。它应该一个人关于做事方面的整体能力。就如优秀的人,做很多事情都会很成功一样,所以这个核心竞争力必然是个人所有用的,且做任何事都可以通用的。这也是很多公司招聘时要看第一学历的原因,因为第一学历基本上就可以体现一个人能力的下限,和该有的基本素质。

  1. 对于技术的热爱所产生的自驱力。产生持续学习的能力。

    当你喜欢一样东西,你才会愿意花时间去学习。当你在做喜欢的工作时,你才有可能创造更多价值。

    对于大多数老铁来说,工作也仅仅是为了赚钱恰饭而已,只有很少的人才是真的喜欢自己的工作。当然这是有多方面的原因造成的,毕竟员工要恰饭,老板也要恰饭,所以很多时候,有些可能有兴趣的东西,我们也没有精力去培养,只是疲于应付工作,还如何能谈上喜欢。

    所以不管如何,没有自驱力,那司给的压力产生的外驱力也是一种力量,利用好这种力量,让自己变得更强是很有必要的。

  2. 学习知识和解决问题的动手能力。

    很多老铁都是动嘴能力强,当然也包括我,动手能力宛若菜鸡。工作中时常会有一些技术问题要解决,这个时候跟同事交流,就开始各种分析,各种猜测,然后各种回忆。最后可能不了了之,开始准备曲线救国了。

    个人感觉,上了这么多年的学,很少有人教导过我们如何去动手,如何培养自己的动手能力。这种情况下,遇到动手能力强的老铁,感觉更像是一种天赋能力。如果没有这种心思,以后也很难拥有这种能力了。

    但是,动手能力在写代码这一行业又是非常重要的能力。看十遍书,都不如动手写一遍代码。只有动手去做,去踩坑,才能真正理解和记忆一些技术问题,才能做到真正的学会。

    所谓的大佬都是有着非常强的解决问题的能力。

  3. 对于业务知识的理解能力。

    代码写的越多,越会觉得业务才是一个项目的重点。因为项目中的技术是为业务而生的,如果没有需要解决的问题,那么技术将无处可用,也就不会出现。所以很多编程语言和软件,都是为了解决实际的问题,有实际的业务才被创造出来的。

    正常一个系统中使用的技术是非常多的,都是为了更好的解决问题才会使用如此多的技术。所以对于业务的理解能力是非常重要的,这不仅是为了能把代码写好,也是为了整个项目后续的迭代开发打好基础。只有把业务理解透彻了,我们才能真正的用代码实现它。很多老司机写一些业务代码,一周的工期,要先思考3天,才开始动手,就是为了把业务思考理解透彻,防止把需求做歪了;只要思考清楚了,后续开发就只需要非常短的时间了;甚至开发完成后,只需要简单的修改,测试也测不出来几个bug的。

  4. 沟通交流能力,团队合作能力。

    沟通交流是工作中最基本的能力,如果这个能力用得好,比什么写代码要强一百倍。因为沟通交流能力高的人,情商基本上都不会差。假如同样是赚钱恰饭,情商高的人很容易跟老板混在一起,这可比写代码赚钱要快得多。

    团队合作能力是工作中很重要的能力,现在的系统都是很多人配合开发。如果不懂的团队配合,会很容易被这个团队所抛弃。

    工作中,一个小组的团队,组内的人性格各异,技术水平高低不同。但是只要团队管理的好,组员相互之间配合的好,依然是个很好的团队。

  5. 英语能力,重中之重

    在我工作这些年的认知中,我觉的英语应该说是除天赋之外,最重要的一种能力。

    当你可以阅读英文文档,进行正常的英语口语交流的时候,你将比别人多出几倍的机会,无论是找工作,涨薪资,还是扩宽自己的圈子,增加自己的人脉。比很多卷出来的证书要有用很多。

技术壁垒

JAVA是一门开源编程语言,所以说它有什么技术壁垒,搜索一下百度,发现竟然没有相关的关键字。

所以最后这个问题就变成了,编程有什么技术壁垒。

  1. Java基础语法,所有常用的类(基础)

    实话实说,不管是写了多久的Java代码。能有多少人真正认真学习过JDK的东西,然后把Java最基础的类都认真读一篇。

  2. Spring相关框架(框架)

    Spring的出现,让写Java代码简单到培训几个月就可以开始上手工作。所以也导致了培训机构众多,把行业卷成一片红海。

    但是就因为Spring相关的框架太简单,所以很多人都会用,但是却完全不懂的为什么。我觉得需要把这个框架深入的了解一下,真的学到一定程度,一定会对以后的工作和面试有很大的帮助。

  3. JVM(底层)

    这个就不多说了,如果可以,有能力学到很深,那就不愁吃喝了。

  4. Netty(网络框架)

    网络这块应该学好Netty,以后物联网这块不愁吃喝。

  5. Mysql(数据库)

    学好,不愁吃喝

  6. 其他

    Java开发者要学的东西太多了,而且很多东西都是在不断变化的。十年前工作中用的到框架或者技术,现在基本都被替换或者迭代掉了。但是无论如何变化,总有些核心是变不了的。

    数据结构,算法,设计模式之类的东西,都是必要学通的。否则会吃不上饭的

最后,以上都是自己的浅显简洁,毕竟眼界有限。

另外文字能力不太行,现在正在边写边学习边改中。就随便看看吧。

你可能感兴趣的:(书籍-人生,编程学习,学习,java,程序人生,职场和发展,学习方法)