{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

哪种编程语言的优点较多?

LuDongWeiLuDongWei 回答9 收藏1
收藏问题

9条回答

Ethan815

Ethan815

回答于2022-06-22 18:42

目前世界上的编程语言有几百种(大概600种),常见的编程语言集中在几十种,几乎每一种编程语言都有其特定的应用场景和优点,下面对TIOBE最新语言排行榜上的编程语言做一个简单的描述。

Java语言的主要优点集中在性能稳定、扩展性强和生态体系健全等方面,Java语言有比较广泛的使用范围,包括Web开发、大数据开发、Android开发和各种后端开发都有大量的Java解决方案。

C语言是编程语言界的常青树,C语言的特点在于执行效率高和生态体系健全,C语言主要从事操作系统开发、服务容器开发和嵌入式开发领域。另外,C语言属于面向过程的编程语言,学习难度并不高。C++语言是C语言的面向对象版本,在效率上继承了C语言的特点,在图形处理等多媒体领域有广泛的应用。

Python语言的特点是语法简单,有丰富的库支持,所以采用Python开发往往具有较高的开发效率。Python语言目前在Web开发、大数据开发、人工智能开发、嵌入式开发领域有广泛的应用。

VB是一门比较老的编程语言了,VB的应用场景主要集中在微软的开发平台上,能开发应用程序,也可以开发一些软件工具,VB有大量的历史遗留项目。优点是开发方便而且控件非常丰富,集成化开发环境是VB的优势之一。C#同样出自微软,C#的应用场景同样比较广泛,移动端和服务端都可以采用C#。

JavaScript目前的使用范围比较广泛,JS是前端开发的重要内容之一,特点是灵活且功能强大,目前JS正伴随着Nodejs从前端走向后端。

PHP是传统Web开发的重要解决方案之一,PHP语言的优点是语法结构简单且清晰,开发周期短,扩展性也比较强大。目前在Web开发领域,PHP是非常主流的开发方案。

OC和Swift是iOS平台下的编程语言,特点是封装性比较好,从发展趋势来看,Swift要更好一些。

Go语言是近几年发展非常迅速的编程语言之一,主要特点是并发性能比较强大且语法简单,未来Go语言的发展前景还是比较值得期待的。Go语言在大数据、云计算等领域的应用空间比较大。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续在我们写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网方面的问题,也可以咨询我,谢谢!

评论0 赞同0
  •  加载中...
leonardofed

leonardofed

回答于2022-06-22 18:42

要说编程语言的“优点”,答案恐怕很主观,难以在实际生产中的得到较好的答案,只能说因项目而异。

我个人主观的答案偏向C++,因为较之C语言,它拥有足够高级的抽象工具,而与多数其他高级的编程语言相比,他又可以完成全领域的开发工作。汇编语言将机器指令(数字代码)用助记词的方式加以封装,让人们可以很方便的在冯诺依曼的架构内编程,从数字代码中解放出来。C语言非常完美地将汇编语言与机器特性以函数加以封装,让我们从一条条单一的汇编指令中解放出来,使得人可以更高效地编写更复杂的软件,这得益于C自顶向下的函数式(过程式)编程。

继C之后,人们用C和汇编开发了许许多多的高级语言和脚本语言。C++是其中最为成功的一种,定位于解决所有汇编或C能解决的问题,但是提供了更高级的抽象和编程范式,除了C的面向过程范式,还可以用类和继承来完成面向对象的编程范式,也可以用泛型和模板来实现元编程范式和静态函数式编程,而最近的标准方案将会引入反射机制以支持动态编程范式,也会对引入更多的机制来支持多核多线程,以及对垃圾回收的基本语言支持也已经在很多编译器中可用。如果说这些是优点,那C++无疑优点众多。其中历史最悠久的一个有点可能是与C的兼容性。

但是物极必反,C++既要强大,又要让开发者觉着它很容易学用。其强大洽洽对很多人来说成为难以掌握的缺点。而且元编程的编译速度极为低下,导致很多现代的大型C++的编译速度极为缓慢(这点得益于现代处理器和内存的发展得以“改观”)。加上C++对程序符号的的改编,使其二进制格式在一定程度上难以调试和识别(这点在很多现代开发工具中已经不是很明显的问题了),而且C++的编译结果通常都会比C大很多(这点对现代机器来说不是问题,实际生产中也几乎很难遇到了)。所以虽然C++引入了很多特性,还是有很多人坚持使用C,以及用一种变通的方式在C语言里实践面向对象和动态编程等等。

除了C++,还有很多用C实现的高级语言,比如Lisp是历史悠久的函数式语言,其历史恐怕不会比C++晚,但是Lisp的编程范式与面向过程自顶向下设计范式天壤之别,以至于它很难流行起来!况且Lisp是以解释语言的形式诞生。后来的一个变体Elisp被用于Emacs的扩展语言,为黑客世界和互联网发展导入强大的编辑工具。

同样是面向过程的Basic也拥有悠久的历史,曾经被微软作为战略开发语言,并在微软的推动下,发展至今成为了Visual Basic,VB Script以及VBA,还有后面.Net的CLI变种还有。在Windows系统中VBS依旧是系统默认脚本语言,也曾经在IE中作为默认语言。但是因其与微软的渊源,互联网并没有接纳VBS,反而使用了JavaScript作为互联网的默认语言,至今演变成为ECMA Script(叫这么奇怪的名字是因为Java是专利语言)。

Java曾经被主流的黑客判死刑,因为其专利的缘故,很多项目拒绝用Java。后来Sun积极参与开源社区,声明其专利不会影响用Java编写的客户程序,而且Sun也将Java编译器和虚拟机免费给开源社区使用,做了很多贡献,才有了Java在互联网的延续。JavaScript和早期的Java Applet就是其为浏览器做的很多创新。最后这些都没有成为主流,除了JavaScript可以摆脱专利的束缚,Java的很多技术都逐渐被互联网淘汰。甲骨文收购Sun之后,与谷歌的Java倾权官司证明了互联网发展抛弃封闭和专利的合理性。所有不符合互联网文化的技术最终都不会成为主流。

谷歌也在不断地努力去Java,哪怕是在开发的时候已经做了很多规避技术,也难以摆脱甲骨文的噩梦。甚至其新系统Fuchisa的研发也有其中一部分原因,因为Android的诞生与Java成了命运共同体,虽然谷歌开发了Kotlin,也恐怕很难完全摆脱Java。

在苹果的领域,C的另一个变种Object C是其主战武器。虽然为苹果的系统开发程序也可以用C和C++,但是完全不用ObjC恐怕是不行的。ObjC顾名思义,是在C的基础之上加入了面向对象的开发方法。对于乔布斯那样的格局来说,拥有属于自己生态的专属开发语言是很重要的,不然iOS也难免落得Android那样成功之时受制于人。其实C++完全可以支持乔布斯的iOS生态,甚至更优秀,但是C++标准组织恐怕是不会受苹果的制约的,这大概是ObjC被发明用于支撑苹果开发生态的原因。我想乔布斯是正确的,后来C++标准极为缓慢的推进,可见其正确性。

……

回头看题主的问题,那种语言才是最优的?答案是没有,你回头看看这些语言的发展历史,和诞生的原因,很容易理解,每种语言都有各种各样的优点和缺点。但是最为开发者你可以有自己的偏好。比如我个人偏好C++,以及后来的Go。

希望以上可以帮到你。

评论0 赞同0
  •  加载中...
yck

yck

回答于2022-06-22 18:42

计算机语言,差不多都有自己擅长的领域。除了生孩子外啥都是长项的语言暂时还没有。开个玩笑。

比如,汇编语言,在开发单片机、写底层软件时效率可以很高,编译出的可执行程序体积也很小。但是,移值性、编写速度、程序的可读性都不好。

再举一例,BASIC,代码好写好改,甚至微软的OFFICE套件中VBA也是基础模块,熟悉了VBA,能能连接SQLSERVER数据库干太多太多事情,我曾经用Basic语言写了一个从ERP数据库中查询物料中的原材料,并生成CREO用的材料库的程序,编译后可执行文件只有39K,独立运行不要动态库,... 但是,因为编译器的原因,想用它开发网站,就纯属自找麻烦。它绝对不如PHP自由方便。

PHP?写中小型网站,甚至大型网站的服务器端,配合apache 和 linux,很棒的。可用它写桌面程序?别玩了,会很痛苦,弄不好得亲自写接口程序去!

根据想干什么活选合适的工具才对。那么问题来了,能想做哪方面的工作?


评论0 赞同0
  •  加载中...
wzyplus

wzyplus

回答于2022-06-22 18:42

PHP是世界上最好的语言。

评论0 赞同0
  •  加载中...
Olivia

Olivia

回答于2022-06-22 18:42

这种问题要看什么芯片,如果那天有谋个构造代替甚至淘汰X86.ARM ,编程就会发生重大改变,往优势方面去。

目前主流的还是x86与ARM ,所以C 汇编,JAVA 比较实用只是暂时,所以优点就高很多,超高精度编程软件你们没有人用过,你们也用不到而且使用数量不到万人,这种编程软件可以调控电流达到很低,可以说只有0.001飞秒,所以说你们用不到,你们会说不实用,当你们更深入微观世界时候你就会发现,C JAVA 都是菜鸟编程。

评论0 赞同0
  •  加载中...
smartlion

smartlion

回答于2022-06-22 18:42

编程语言种类众多,目前世界上的编程语言有几百种(大概600种),每一种都有自己的优点,要看你使用的场景,才能进行判断哪种是最为符合你的需求的。小编今天就简单的介绍几种比较常见的编程语言!

Python

要说当下最火的编程语言,Python绝对可以占据一席。“人生苦短,我用 Python”,网络上也是各种宣传。Python是非常简单的一种编程语言,极大的降低了编程门槛,已成为全球大中小学编程入门课程的首选教学语言,更是人工智能领域首选的编程语言。在大数据领域,Python同样可以胜任,比如使用 Python进行数据的爬取操作等等。

Python可以用在web开发、爬虫、游戏、人工智能、物联网等方方面面,Python目前呈上升趋势,未来发展前景很好,但是目前从就业角度来说,多带带的Python岗位还是少一些,大多数是要求有Java等开发能力,在其岗位要求的基础上要求同时掌握Python。

Java

Java相当于人类语言中的英语,可以说是掌握Java,走遍天下都不怕。作为一门基于面向对象的跨平台开发语言,功能强大且简单易用。在 TIOBE语言排行榜常年蝉联第一,在全球占有极大的市场份额。

经过20多年的发展,形成了完善的社区生态,多用于B/S架构的企业级项目开发,目前国内一线公司都有使用Java在进行项目建设。Java的就业面非常广,Java开发在各大招聘网站中的招聘量也是最多的,除了Java本身对应的岗位,企业也非常喜欢有Java背景的前端开发、移动端开发、测试、产品等等,可以说有了Java的技能傍身,你想往各个岗位去转都会容易一点,职业规划发展更为广阔。

PHP

PHP是一种通用开源脚本语言,主要适用于Web开发领域。在前几年的时间,互联网逐渐兴起,大家有很多“建网站”的需求,由于PHP的相对轻量级,能够快速进行Web开发,所以非常火热。但随着这几年互联网的逐渐成熟和提升,项目体系和要求越来越高,PHP的热度已经下降,目前对应的主要还是Web开发,但是就业需求相比Java已经少很多。

C

古老的编程语言之一,几乎所有系统兼容,很适合操作系统和嵌入式系统,一般使用C语言进行操作系统底层开发、物联网软硬件开发。学习难度大,就业岗位相对来说会少一些,对人员要求较高,同时就业面相对来说较窄。

JavaScript

一种主流的web编程脚本语言,一般用来在客户端浏览器中执行,但目前由于异步编程思想的深入,JS结合node应用越来越广泛,不仅可以做web前端,也可以做后端开发,还可以和移动端开发配合使用实现跨平台开发,比如:小程序开发。可以说 JavaScript属于前端开发必备技能,前端开发的很多框架都以此为基础,所以JS未来的前景也是非常不错的, GitHub上排名第。

还有很多的编程语言,小编这里就不一一赘述了,如果想要学习的话,在进行选择的候,可以看一下这个语言应用的领域是不是你所想要进入的;如果想要靠着学会编程语言找工作的话,那么更要看看它的的招聘情况,再做出选择。如果你还是在选择编程语言上存在疑问,不知道选哪个,或者选择之后不知道如何入手学习,可以在评论区评论,或者私聊小编,小编很乐于为大家答疑解惑哟~

评论0 赞同0
  •  加载中...
glumes

glumes

回答于2022-06-22 18:42

试图向一个觉得青菜好吃的人证明青菜并不好吃是毫无意义的事情,反过来也是一样。值得讨论的是关于青菜的客观事实,比如是否容易栽培,含有什么营养,等等。当然,在这之前最好先去了解一下青菜,尝一尝青菜的味道。

评论0 赞同0
  •  加载中...
Snailclimb

Snailclimb

回答于2022-06-22 18:42

问今日我们的管理者和工程实践者

评论0 赞同0
  •  加载中...
Cheng_Gang

Cheng_Gang

回答于2022-06-22 18:42

没有十全十美的语言,每种语言都有其年代特性,为了解决当时的问题而产生,问题问题持续不断,语言也在不断发展。

语言学习并不会耗费太多时间,学编程,做程序,就是要保持持续学习的态度和能力。

评论0 赞同0
  •  加载中...

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<