网易首页 > 网易科技 > 网易学院 > 编程开发系 > 正文

并非偏见 也驳“驳'C语言已经死了'”

0
分享至

>> 有偏见的永远只是个体,而不是群体。作者加了后面那句,无疑证明有偏见的不是C/C++程序员,而正是他自己。

错了,真理是站在少数人这边的,当一种变革将发生的时候,带有偏见往往是大众是传统力量。

>> 这段话更加荒谬了。没见过优秀的C/C++代码? C++标准库(STL)如此优雅。况且,有那么多经典的C/C++开源作品,以及无意之中泄漏的Windows NT核心源码,哪一样不是绝世之作?我为作者浅陋感到难过。

STL的代码并不优雅,缺乏functional programming机制支持的C++对于实现algorithm非常的牵强,比方我要find(v.begin(), v.end(), compare);的时候(v是一个自定义的结构),我必须在函数外面写一个比较函数,如果要带一些上下文的话还得写一个functor类,非常的丑陋不堪,实用性大打折扣。而FP系的语言来说,可以非常自然的写一个匿名函数。STL里所标榜的容器,算法等概念,在FP里早就原生支持了,而且要优雅的多。至于NT代码这个我没看过不好说,但是据说代码里有不少当初程序员留下来的抱怨BUG及设计失误的话。

>> 内存管理是程序设计中最经典的话题。GC无疑是内存管理一个伟大的变革,但是我只是把它看作内存管理的一个解决方案,而认为不是唯一的解决方案。比GC更加优雅的方案不见得没有。我比较倾向于在特定的情况下选择合适的内存管理方案,而不是没有任何选择的余地,而这正是C/C++的伟大之处。 所有那些GC语言(如Java、C#等)均把这个解决方案强加给程序员,这一定程度上来说减轻了程序员的负担,但是也同时约束了程序员的主观能动性。"分配内存和释放内存在C语言中都是很慢的"?不知道作者从哪里获得的结论。

实话说我也不喜欢GC,没有GC的C也可以工作的很好,但是对于FP系的语言来说没有GC是无法正确工作的,所以我还是得接受GC这个东西。当然我更喜欢的是将两者互相结合的方式。

>> C/C++语言本身确实没有太多MultiThead的支持,这种情况在C++0x出来后可望改变。但是,请记住C/C++永远倾向于你使用成熟的库来解决问题。

C/C++不能适应未来多核时代的发展,这个会是它没落的最大原因。库不能真正的解决问题,我们需要的是在语言层面的进一步发展。

>> 指针是C/C++过于灵活的体现。使用指针的代码可以写得很丑陋,但一样可以很优雅。——这一点上用何种语言不会有区别。我相信,可以写出优雅的Java代码,那么也一定可以写出同样优雅的C/C++代码。而反之则未必(因为有些C++某些范式是Java所不能支持的)。C/C++语言中的选择太多,这的确是令人困惑的,但不见得是劣势。我对C/C++程序员的建议是,多了解和使用C++标准库,而不是过于纠缠指针相关的细节。

>> 算法优化是程序设计的关键。但是通常情况下,所有语言(包括C/C++)的程序员研究的是关键路径的优化。研究*p++是不是比p[i]快?我相信这是标准库的实现者要考虑的事情。所不同的是,C/C++程序员也可以和标准库的作者一样去考虑这些细节,而其他语言的程序员被剥夺了这个权利。

说到优化,话题就多了。我曾经向C#的Dictionary中插入了1亿条整数(从1万多个文本文件中读入),结果发现程序运行了整整一个下午仍然没有完成。而我改用C++的std::map,20分钟就搞定了。再试试对50万条自定义的结构体数据进行排序,我相信你和我一样,会深深喜欢上C++的的高效而优雅。

多年以前程序员们还在C程序里面内联汇编以实现代码级的优化,但是如今已经没有人这么做了,因为CPU越来越复杂了,大多数情况编译器做的比手工的要好。现如今的java/.NET的JIT引擎也已经能够达到非常高的优化水平,在性能上C代码的优势已经越来越不明显了。对于未来而言代码级的优化也已经不再是重点,哪个语言可以适应多核的发展,谁就将成为性能的王者。

>> 新生的语言,必然会在吸收旧的语言上基础上进行改进。看一个语言的生命力,并不在于看它某些地方存在的不足。事物会发展,并趋于完善。相信C++0x出来后,C/C++语言又将获得新的生命力。单看Java、C#等几个新一代的语言,其中有如此多的C++烙印,就证明了C/C++的影响是巨大的。动不动说一门语言死了,是一种浅薄。

说一门语言死了,不是说完全消失,而是退出主流开发语言行列,逐渐的被边缘化,这些年鼓吹C/C++的人已经越来越少了,在很多开发领域C/C++的地位已经被JAVA、.net、脚本语言等所取代。C++0x出不出来已经不重要了,倒是C++/CLI的出现带给C++一些新意,不过虽然我很欣赏C++/CLI,但是它不会成为主流。在多核到来的时候目前编程语言还没做好准备,未来我们要面临的不是2核4核而是百核千核这样的规模,这不光要在算法领域继续发展,编程语言也要来一次重大的变革才能适应这种发展,至于方向在哪里,FP系的语言或许会给你带来一些启示。

相关文章链接:

C语言已经死了,5个需要忘却它的理由

C语言已经过时?编程界再掀“垃圾”论

相关推荐
热点推荐
48岁超模“海妈”乘游艇,和31岁丈夫腻得难分,4个青春期娃也在

48岁超模“海妈”乘游艇,和31岁丈夫腻得难分,4个青春期娃也在

译言
2021-08-02 05:26:00
已经为时已晚?拉各斯之殇:非洲千万人口的城市,正在“沉没”!

已经为时已晚?拉各斯之殇:非洲千万人口的城市,正在“沉没”!

星辰大海路上的种花家
2021-08-03 00:00:12
看了娜扎这照片,我不想找女朋友了

看了娜扎这照片,我不想找女朋友了

观愚乐圈
2021-08-02 08:58:35
人们错估了英女王!这才是其不剥夺哈里头衔、晾着他们的深层原因

人们错估了英女王!这才是其不剥夺哈里头衔、晾着他们的深层原因

DailyFlora
2021-08-02 19:00:39
吴亦凡粉丝喊话:不放人就换国籍!央视怒批粉丝已走火入魔

吴亦凡粉丝喊话:不放人就换国籍!央视怒批粉丝已走火入魔

88社长
2021-08-02 00:13:36
奥运十一日:0个夺金点?恐怕是的,肖若腾桥本二上演番战!

奥运十一日:0个夺金点?恐怕是的,肖若腾桥本二上演番战!

体坛猪八戒
2021-08-02 21:45:48
刚刚,半导体突然崩了!三大千亿大白马暴跌!又一踩雷股跌停!

刚刚,半导体突然崩了!三大千亿大白马暴跌!又一踩雷股跌停!

和讯网
2021-08-02 13:28:26
这5种不当的性生活方式,很危险!有些人还天天做

这5种不当的性生活方式,很危险!有些人还天天做

健康公开课
2021-07-27 01:31:34
特斯拉大型储能电站连烧4天!澳洲政府最心痛:7.5亿投资或打水漂

特斯拉大型储能电站连烧4天!澳洲政府最心痛:7.5亿投资或打水漂

金十数据
2021-08-02 19:34:44
奥运会游泳运动员为什么都要剃体毛?真的不是为了美观

奥运会游泳运动员为什么都要剃体毛?真的不是为了美观

钟铭聊科学
2021-07-31 13:23:14
苏炳添:9秒83是超水平发挥,若最后10米不跑僵成绩可能是9秒7几

苏炳添:9秒83是超水平发挥,若最后10米不跑僵成绩可能是9秒7几

体育赛事名场面
2021-08-02 06:38:47
“台风宝宝”正在孕育!广东多地已发预警

“台风宝宝”正在孕育!广东多地已发预警

羊城派
2021-08-02 22:24:23
港媒:在非洲,中国和美国的角色已完全颠倒过来

港媒:在非洲,中国和美国的角色已完全颠倒过来

环球网资讯
2021-08-02 06:05:25
接连翻车!小S称宝岛运动员是国手,蔡依林鬼鬼同样引发质疑

接连翻车!小S称宝岛运动员是国手,蔡依林鬼鬼同样引发质疑

萌神木木
2021-08-02 12:06:15
来自公元5000年的时间旅行者声称拥有世界末日的照片证据

来自公元5000年的时间旅行者声称拥有世界末日的照片证据

爱尔兰华人圈
2021-07-29 06:00:01
曾老在15年曾经预言20到21的重大事件,如今一一实现

曾老在15年曾经预言20到21的重大事件,如今一一实现

记忆收藏家
2021-08-02 14:39:46
吴亦凡被抓,LV、宝格丽、欧莱雅将索赔几个亿?错,门儿都没有!

吴亦凡被抓,LV、宝格丽、欧莱雅将索赔几个亿?错,门儿都没有!

紫财经
2021-08-01 20:06:52
郎平确认将离队!赛后透露东京奥运会失利原因,朱婷受伤不是关键

郎平确认将离队!赛后透露东京奥运会失利原因,朱婷受伤不是关键

黑马观点
2021-08-02 22:44:17
炮轰奥运的北野武有多“野”:在女优大腿签名、约女孩只需3顿饭

炮轰奥运的北野武有多“野”:在女优大腿签名、约女孩只需3顿饭

汉周读书
2021-08-02 09:11:13
豪气,奖励国乒7套房,王楠夫妇需要为此花多少钱?

豪气,奖励国乒7套房,王楠夫妇需要为此花多少钱?

东球弟
2021-08-02 11:36:38
2021-08-03 03:38:44

科技要闻

抢锂!传统汽车制造商"组团"冲击特斯拉

头条要闻

王莉霞成全国唯一的“60后”女性省级政府党组书记

头条要闻

王莉霞成全国唯一的“60后”女性省级政府党组书记

体育要闻

雯雯的表演赛!又猛又萌 00后的碾压

娱乐要闻

“京圈女王”徐静蕾的瓜

财经要闻

汽车要闻

途铠的轿跑版? 大众欧洲发布Taigo全新SUV

态度原创

艺术
家居
房产
公开课
军事航空

艺术要闻

金陵五大家—行遍万里路 江山入画来

家居要闻

李嘉诚斥资在广东建别墅区 190平豪宅仅卖400万

房产要闻

重磅!广州黄埔区取消人才住房政策

公开课

试吃宁夏夜市:美国人第一次吃羊头差点吐了?

军事要闻

央视曝光:轰-6J挂4枚鹰击-12超音速反舰导弹

×