生活知识百科

为什么现在很多人都去学JAVA,而不学C语言了呢?

2023-08-08 14:04:22 条浏览

我举个简单例子,不对请指正

这个和人类语言发展一样的

甲骨文和象形文字是人类沟通最基础的语言和人类最直接理解层面的

但是我们不需要再学,就是因为现代语言更加模块化,功能话,通用话,这样就可以辅助人类更高效实现沟通和创造

毕竟语言的终极目标是辅助




百战程序员IT问题专业解答

1.这两种语言的应用场景不同。

Java普遍应用于在网站后台开发、中间件开发等场景中,相对来说这一类的开发需求较大。例如电商常用的微信系列(公众号、小程序)的后台,基本用Java开发的话很方便,成本也低好维护。而c语言普遍应用于嵌入式开发、硬件开发场景中。例如plc编程、机器人等,这一类开发需求量也大,但是门槛高,且程序不多变,对一套硬件系统写好软件以后基本就不做大改动了。而且软件相对硬件来说需求量大,因为软件是虚拟产品,多变,硬件是看得见摸得着的,物理结构基本不变。

2.Java生态圈大,c语言受众面小。

学会Java以后,再学点前端知识,基本可以全栈开发了,而只学c语言,想要做真正的开发还要学c++,比如做win窗体开发还要学qt、做游戏开发要学c++等。




我觉得java目前因为企业用的比较多,需要的岗位也多,因此需要大批量的程序员。而c语言其实是比较注重底层原理的,因此比java要难一些。这也造成了学习c语言的人相比较java要少很多。




Java开发出来的东西,可以很好的在linux上运行,而linux是免费的,互联网时代,Java在后台服务端开发上面基本上就是一统天下的。而且有十分成熟的技术让java的程序在廉价的x86服务器上分布式的部署,而代码几乎完全不用修改。




如今互联网时代,网站已俨然成为企业和个人不可或缺的“电子名片”,软件开发工程师的薪资福利一直是行业领先地位。目前,中国网民数量已达到6.68亿,规模全球第一,网站总数达413.7万余个,伴随着“互联网+”行动计划的实施,使得传统企业纷纷向互联网转型,这必将引发企业对软件开发工程师的严重需求。据有关数据显示,目前,我国对软件人才的需求已达80万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。其中,尤以JAVA、PHP、HTML5与CSS3开发、Asp.net开发人才最为缺乏。




c语言和c++的优势在于底层对CPU和硬件的控制上,特别是nio,异步io的处理效率上。所以前朝底层的程序员往往需要c或是c++,但是jdk1.6之后把这一块也补全了,后面越来越多的底层系统也是用Java开发,c和c加加的应用面越来越窄了。所以大数据的一些平台的底层也是用Java开发的,所以学好了Java,才是王道,至于学校里要求学习c,那就学会完成考试,建议还是把精力放在Java这种主流的技术之上。可以去优就业学习了解java课程




社会需求

21世纪是互联网的世纪,电商,博客,问答,各种互联网应用层出不穷,数据量的增长速度,更是几何形增长,而JAVA正是服务器和大数据生态开发的重要组成部分。因为社会对于这方面的职业需求强烈,需求岗位数量多,所以对于个人来说这代表这就业机会的增加,不需要像公务员那样千人争一岗的激烈竞争,还能快速的体会到互联网红利填充腰包的感觉。另一方面,对于企业来说,企业不会希望因为某个人离职,导致应用无法继续开发,基于JAVA语言的特性,JAVA中有这各种各样的约束,代码格式相对规范,就算某个人离职了也能快速招人填补岗位的空缺,因为这种良性的社会需求,导致学习JAVA的人多了起来。

培训机构宣传

JAVA学习的人多,很大程度上有培训机构的功劳,三个月学习月薪一万八,四个月极速培训大数据,等等宣传语。让不明真相的小白觉得JAVA十分火热,在从众心理作祟下,大部分人们选择了JAVA,然后培训机构挣了钱,转而继续加倍宣传JAVA,收获更多的资本后,和企业个人需求关系一样,这样的循环导致入行的人越来越多,不过培训机构规模越大产出越快,导致社会上初级JAVA过多的情况出现。

看不见的部分

JAVA更多的属于应用层开发,比方手机app,服务器端开发,电视app等看得见听得到的应用,导致我们忽视了c语言的存在。看看你身边的天猫精灵,智能开关,这些底层硬件大部分还是都是基于c语言开发的,我们往往忽视了这些小硬件,还有就是网上的博客,宣传比较也少,导致我们以为学习c语言的少。下面是一张互联网编程语言排行图。可以看出目前c语言和JAVA仅仅相差百分之一。可见c语言只是相对JAVA比较少。相比其他语言还是老大哥的地位。




国内JAVA市场占有率高,随之带来更多的JAVA岗位,更容易找到工作。




1.这两种语言的应用场景不同。

Java普遍应用于在网站后台开发、中间件开发等场景中,相对来说这一类的开发需求较大。例如电商常用的微信系列(公众号、小程序)的后台,基本用Java开发的话很方便,成本也低好维护。而c语言普遍应用于嵌入式开发、硬件开发场景中。例如plc编程、机器人等,这一类开发需求量也大,但是门槛高,且程序不多变,对一套硬件系统写好软件以后基本就不做大改动了。而且软件相对硬件来说需求量大,因为软件是虚拟产品,多变,硬件是看得见摸得着的,物理结构基本不变。

2.Java生态圈大,c语言受众面小。

学会Java以后,再学点前端知识,基本可以全栈开发了,而只学c语言,想要做真正的开发还要学c++,比如做win窗体开发还要学qt、做游戏开发要学c++等。




我个人理解,主要是如下几个原因

市场需求差异。行业差异,C语言主要是三个应用方向

做windows系统应用开发,但目前随着需求很少,嵌入式开发需求旺盛,除了电子信息相关专业的人员明确知晓,C语言可以在linux,单片机行业占绝对地位,而目前绝大部分的电子产品都需要用各类控制芯片,再加上医疗行业,人工智能,5G,物联大数据等领域蓬勃发展,嵌入式软件开发需求绝对不差,

IOS的开发,IOS系统的APP是用object-C开发的,因为比较小众,从事这个语言开发的人比较少,但工资也比较高。

java的应用方向

Java编程可以用来做安卓app开发,目前安卓手机普及,几乎人手一部,很多年轻人都知道,安卓的APP主要是用安卓开发,而目前应用app的种类繁多,需求各种各样,所以对于安卓java的需求很旺盛,而且工作待遇相对于其他的岗位还是非常不错的。

JAVA编程可以做服务器方面开发,结合xml或json与数据库进行交互,现在各种大数据,如医疗大数据,云大数据等等,需求也是不错的

JAVA可以进行电脑端应用程序开发。目前用java开发应用的需求比用C语言开发PC端的需求多。

学习难度的差异

嵌入式开发是目前C语言需求的主要方向,但这个职业方向,除了需要C语言编程本身的知识,还需要一部分硬件知识,或者linux相关知识,所以需要掌握的知识点多,对于很多人学习而言,跨度较大。

java的开发需求,是纯软件开发,虽然有很多知识点,但都是软件相关,不注重硬件相关知识。

其实JAVA需求和C语言需求都比较旺盛,但JAVA语言因为安卓系统而被很多人知晓而出名,C语言名声不显,很多人都不知道学习C语言能用来干嘛,所以更不会去花钱培训了。




温馨提示