打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
编程:C/C 与其他语言之争——性能与场景

https://m.toutiao.com/is/kvXp1L5/ 



这是个每次都会吵翻天的话题,很多人喜欢争论,完了依然忿忿不平。通常结果是谁也没说服谁。C/C++、Java、Python、C#、Rust哪个语言最强?我从自己理解的角度来讲一下。

编程语言,根据设计、场景、目标等不同,其性能差异很大。这里我不做科普,网上重复的信息很多。

切记,性能只是选择的重要因素之一,但不是唯一。

狭义的讲,性能是程序运行的速度,资源耗费的多少。从这点讲C/C++是绝对的王者。这里不要抬杠去说汇编。C/C++的速度和内存使用率是最高的,而且程序员是可以灵活掌控的

但是,程序员可能灵活掌控这一点,既是优势,也是劣势! 优势,是你想怎么干,它都可以给你。劣势,就是你得很累,很多时候这并不是你的重点,但你也得付出不菲的精力。

而实际中,编程是为了解决问题。甚至很多时候,是快速解决问题(尤其是互联网行业)。至于,优雅不优雅、速度快不快、内存占用多不多、稳定不稳定,都不那么重要(这就是为何我国基本没有原生的重要基础组件)。

所以大量的“胶水”语言都诞生了。这里我把“胶水”一词宽泛化了。我把任何只注重功能和开发效率的应用场景,所使用的语言都概括为胶水语言。C/C++也能做胶水语言,但是它不适合,非常不适合(因为积木模块库里直接可用的非常有限)

对于老板和用户来说,他只关注功能和时间,和交付的宏观稳定性。专业点的用户,也最多关注下资源效率。

我认为,新的语言,都是为了解决这类各异的需求。你看看Java、go、C#、Rust、Python、Tcl、perl等等,哪个不是在某个或某些领域或某个公司应用较多?说明它们只是被需要的人用在需要的场景下而已。另外,这其中还有潜在的商业利益(看不明白,就不要讨论了)

所以撇开应用,谈语言,纯属扯淡哦。每个语言都有解决其他问题的能力,但是成本是不一样的,而且差异巨大。对“Hello,World”来说,还能有啥优劣之分哦?

就像C被那么多人看不起,可问题在我的本行嵌入式行业里,它的综合成本是最低的。OS的底层也是它,它的综合成本最低,收益最高。对于其他语言,比如Java、C#不是语言本身做不到,问题是它的那些高级属性也用不上,尤其还要重新设计工具链,没有这些用个毛啊!?

编程语言就是逻辑流程的载体,而已!想干什么,还需要底层的支持(功能模块、运行环境、工具链),丧失这些支持,它什么也不是。

把语言比个高低不重要。因为我这个行业,我只能用C/C++。而我学了C/C++,同时具备硬件知识和思维,我可以1周学会Java/C#/Python。反过来也是可以的,不过没有硬件和底层思维,你还是只能停留在“胶水”层面

C/C++可以调用任何一门其他语言;其他任何语言,都可以调用C/C++代码模块。但其他语言基本都不能自举,底层还是C/C++,而且一些功能模块都也是靠C/C++。

要比能力,C/C++肯定是老大,这点毫无疑问!但是不是最适合你的,还真不一定!适合你的,在你那就是老大。争论没有意义哦。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
python为何流行
各种编程语言大PK,纯干货
初学编程如何选择编程语言?
Python是人工智能的最佳选择吗?看看它的优势和局限
2020必学必备语言Python,来了解下他的优缺点
工业机器人用什么语言编程的?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服