1. 首页 / 百科

匈牙利命名法为何被淘汰 匈牙利命名法和驼峰命名法好处

匈牙利命名法为何被淘汰 匈牙利命名法和驼峰命名法好处

2020年了,匈牙利命名法的遗毒还在危害人间,是时候彻底摒弃匈牙利命名法了,理由如下:

1.变量的类型由其含义决定。这是最重要的反对理由。比如money的类型就是money_t,比如object_size的类型就是size_t,事实上size_t是unsigned long的类型别名。类型编码进变量名,既多余,也无必要,且不能涵盖所有情况,画蛇添足。

2.缺乏一致可解释性。好的规则应该是一致性可解释的,它应该能够在它的问题集内一致性的应用规则,遵从规则只需无脑执行,Do not let me think,匈牙利不满足,它甚至不能胜任变量命名。

(a) 比如int的前缀到底是i还是n,char的前缀是c还是ch?那const呢?char* 是str?那const char* x[]呢?pcstra?太啰嗦了。

(b) C++的模板表示参数化类型,类型是不确定的,怎么加前缀?匈牙利在C语言是难以实施的,在C++是无法实施的。

(c) MS不仅为基本数据类型定义前缀,还为自定义类型定义前缀,比如h表示句柄,wnd表示窗口,re表示正则,fn表示函数,函数指针pfn?那如果再出现一堆概念,26个字母大概不够用吧。这么复杂的规则确定能记住?确定对项目有帮助?

2.修改类型困难。如果把变量类型编码进变量名,哪天short不够,改成int,岂不是要把所有s_var全改成i_var?而变量改类型也很常见吧。

3.冗余,有违精简原则。好的代码应该是清晰简短的,匈牙利命名法声称利于阅读代码,实际效果恰恰相反。

(a) 每次见到一个变量,比如puiindex,它远不如index明晰,我需要在脑海中先过滤掉pui这个无用的前缀,而实际上这个预处理过程完全多余。

(b) 第一次见到CFont这种类就觉得很奇怪,C是什么?Class首字母吗?为什么一个类型还要加个前缀?把本来通顺的词搞得那么别扭?

(c) 软件强调避免信息冗余,type name已经是一个完整的信息表达式,能准确无误的表达它的含义,在匈牙利命名中,就变成了type type_name; 很显然,type的信息冗余了。

4.业界主流观点反匈牙利。为什么这么说呢?Top开源项目和Top公司没有一个还在使用匈牙利命名法(找出一个算我输),包括STD C库,C++标准库STL没用,说句不好听的,主张匈牙利命名法可能是开源代码看的少。

5.匈牙利命名法是历史的产物,注定进历史的垃圾堆。就像GIT替代SVN一样,技术总在进步,匈牙利出现的时候,我猜想可能是为了弥补IDE的不足,但现在IDE已经进化到鼠标一放上去就能提示变量定义了。

6.MS已经公开宣称放弃匈牙利命名法,而且号召大家不再使用。这个已经足够说服力了,如果它真的那么有效,为什么MS抛弃它?(之前MS推崇经常被挺匈牙利派作为依据,尴尬)

为什么还有那么多人在坚持匈牙利呢?

我给出的答案是“惯性的力量”,而这种惯性是不知不觉的,但惯性阻碍进步,而优秀程序员最本质的要求就是好奇和开放,因循守旧,一昧按老规矩办,甚至失去思辨能力,值得警惕。

反匈牙利命名法又分温和派和激进派,无论是温和派还是激进派,核心观点都是反匈牙利。

有个大V在帖子中说:“感觉作者还是顾忌了大家的情绪,说了一些匈牙利的好话…”然后直言不讳的说挺匈牙利的是代码写的太少了,导致大家过于关注它的态度,而忽视了它的观点,但其实,观点才是重要的,我认为倒不一定是代码写的少,开源代码看的少几乎是一定的,文章中其他的说的都对。

相关推荐

  • 用什么软件可以辨认字体 10款文字类型识别软件

    用什么软件可以辨认字体 10款文字类型识别软件

    用什么软件可以辨认字体 10款文字类型识别软件,文字,识别软件,类型,用什么软件,字体,扫描,识别,文件,今天小编为大家带来的是字体识别软件免费下载2022,字体识别功能给大家的生活和工作带来了不少的便捷,比如一张图片上的文字,那我们就可以用字体识别功能,既方便又省时间,那接下来,小编就为大家介绍有哪些字体识别软件是免费的。 1、《扫描识别王》 这是一款文件扫描、文字识别、拍图识字、图片转文字、PDF内容编辑等等,在这个软件中都可以完成,深受用户好评的掌中扫描仪,...

  • 最容易涨粉的短视频 5种很容易上热门的短视频类型

    最容易涨粉的短视频 5种很容易上热门的短视频类型

    最容易涨粉的短视频 5种很容易上热门的短视频类型,视频,类型,潮流,共鸣,搞笑,性短,搞笑类,分享,短视频是当下非常火的行业,随着5G时代带来,短视频创业彻底火了。想要在抖音等短视频平台赚钱,一定离不开涨粉这件事情,涨粉有多难,做过的人肯定深有体会。当然,如果视频类型选好了,涨粉就会简单很多。那最容易涨粉的短视频是什么样的?下面就给大家分享5个种类。 类型一:搞笑短视频 搞笑类的短视频有很多种,比如将一个小段子通过真人表演拍摄出来,或者找一些搞笑视频素材,通过九锤...

  • 抖音怎么设置自己想看的类型 抖音设置管理观看内容方

    抖音怎么设置自己想看的类型 抖音设置管理观看内容方

    抖音怎么设置自己想看的类型 抖音设置管理观看内容方法,抖音,类型,设置管理,方法,怎么设置,想看,点击,调节,抖音设置管理观看内容方法 1、点击右上角三条杠 2、点击使用管理助手 3、点击内容管理 4、点击管理更多内容 5、就可以调节就可以调节自己喜欢的类型了...

  • 环境变量怎么设置 win设置环境变量教程

    环境变量怎么设置 win设置环境变量教程

    环境变量怎么设置 win设置环境变量教程,环境变量,设置,教程,怎么设置,点击,界面,编辑,添加,win10系统环境变量可以按照下列步骤设置。 1、首先将“此电脑”快捷方式添加到桌面上,添加方法是:在桌面空白处右键选“个性化”,然后在“主题”下找到“桌面图标设置”,选中“此电脑”,右键选择“属性”。 2、点击左侧“高级系统设置”。 3、接着点击“高级”下的“环境变量”。 4、然后就会看到以下界面,界面上方显示的是某个用户的环境变量,下方显示的是系统的环境变量,系统...

  • 养老院一般多少钱一月 不同类型的养老院收费参考

    养老院一般多少钱一月 不同类型的养老院收费参考

    养老院一般多少钱一月 不同类型的养老院收费参考,护理,费用,老人,机构,元到,床位费,院一,情况,当今社会,养老机构的种类让人眼花缭乱,根据性质的不同收费价格也大不相同。那么,养老院一般是怎样收费的呢? 养老院收费标准一般分为:房间费、床位费、伙食费、护理费、医疗费、暖气空调费、押金等。 一、一般养老院 一般养老院收费标准价格在4000元到8000元不等,床位费在1000至3000左右。首先要看老人的身体情况,完全不能自理的老人收费会比较多;不同的地区养老机构收费...

  • 环境变量怎么设置 手把手教你设置Windows系统变量

    环境变量怎么设置 手把手教你设置Windows系统变量

    环境变量怎么设置 手把手教你设置Windows系统变量,环境变量,设置,变量,编辑,系统变量,怎么设置,窗口,选择,对于电脑应用程序的运行问题来说,环境变量起到极其重要的作用。有时候在安装某些软件时,就需要自己手动设置环境变量,这里也为大家说明如何设置环境变量吧。系统:win10专业版电脑:惠普 F734AU1、首先在电脑上打开运行窗口,接着在窗口内输入sysdm.cpl然后回车。2、在系统属性界面内选择高级,然后点击环境变量。3、在这里我们可以看到所显示的变量,...

  • 最容易涨粉的短视频素材 分享5种容易上热门的短视频类

    最容易涨粉的短视频素材 分享5种容易上热门的短视频类

    最容易涨粉的短视频素材 分享5种容易上热门的短视频类型,视频,类型,分享,选择,热门,视频素材,共鸣,潮流,什么内容的短视频可以吸引粉丝?分享五种类型短视频,供你选择 短视频的制作其实并不难,主要难点还是在于短视频的内容选题、引流等。那么今天我们就一起来着重的了解一下看什么内容的短视频可以吸引粉丝,这里简单的分享五种类型的短视频,大家可以参考选择,自己擅长做什么,就可以选择哪一个类型的短视频尝试做做看。 类型一:搞笑短视频。 搞笑类的短视频有很多种,比如将一个小段...

  • 史记属于哪一类历史 史记属于什么类型

    史记属于哪一类历史 史记属于什么类型

    史记属于哪一类历史(史记属于什么类型),史记,哪一类,类型,说起司马迁的《史记》,相信大多数人都知道,更是对他在遭受宫刑之后,还能写出如此鸿篇巨制,感到叹息和惊讶。鲁迅先生更是把他的这部书,称之为“史家之绝唱,无韵之离骚”。那么,《史记》到底是一部什么类型的史书呢?在中国历史上,为什么有如此高的地位?鲁迅先生为什么给予了如此高的评价?下面我们就一起来了解一下。《史记》是什么类型的史书?《史记》是一...

  • 青春类型的电影 有什么好的青春类型的电影?

    青春类型的电影 有什么好的青春类型的电影?

    青春类型的电影 有什么好的青春类型的电影?,有什么,类型,青春,网友提问:有什么好的青春类型的电影?优质回答:最经典的我认为应该非《阿甘正传》莫属,青春、励志该片获得第六十七届奥斯卡金像奖最佳影片奖。大陆的有《何以笙箫默》、《少年班》、《山楂树之恋》、《青春派》、《那些年,我们一起追过的女孩》、《致我们终将逝去的青春》、《等待只为与你相遇》、《匆匆那年》、《同桌的你》还有《左耳》等等很多影片。其他...

  • 村上春树主要写什么类型的小说 村上春树的短篇小说集

    村上春树主要写什么类型的小说 村上春树的短篇小说集

    村上春树主要写什么类型的小说(村上春树的短篇小说集有哪些),小说,是怎样,村上春树,网友提问:40年出版15部长篇小说,部部经典,村上春树是怎样写作的?优质回答:谈到写作需要哪些准备时,他建议:“想当小说家的人首先大概要多读书。……让身体穿过更多的故事,邂逅大量的好文章,偶尔也邂逅一些不太好的文章。这才是至关重要的作业。其次是养成事无巨细,仔细观察眼前看到的事物和现象的习惯。……并且深思细想、反复...

  • 猜一猜:奶茶店员属于以下哪种职业类型 蚂蚁新村今日答

    猜一猜:奶茶店员属于以下哪种职业类型 蚂蚁新村今日答

    猜一猜:奶茶店员属于以下哪种职业类型 蚂蚁新村今日答案最新10月28日,奶茶,店员,调饮师,点击查看【蚂蚁新村今日答案最新2022年(今日已更新)】问题猜一猜:奶茶店员属于以下哪种职业类型?答案:调饮师解析:做奶茶的人职位一般叫做奶茶店调茶师、奶茶店服务员、奶茶店助、奶茶制作员、奶茶厨师、奶茶制作学徒、奶茶制作师、奶茶品鉴师、奶茶店营业员。今年,茶饮店店员有望正式拥有姓名了!近日,人社部网站发了“...

  • 统计图有哪些类型 数据统计图有哪几种

    统计图有哪些类型 数据统计图有哪几种

    统计图有哪些类型(数据统计图有哪几种),几种,类型,统计图,统计图的特点条形统计图的特点:从图中能清楚地看出各种数量的多少,便于比较。折线统计图的特点:不但能看出各种数量的多少,而且还能够清楚地表示出数量增减变化的情况。扇形统计图的特点:表示各部分和总数之间,以及部分与部分之间的关系。简单来说,就是条形统计图能反映一组数据的大小或多少,折线统计图能描述一组数据的变化趋势,扇形统计图能描述一组数据占...

  • 能够制造蜂蜡的是哪种类型的蜜蜂蚂蚁庄园 能够制造蜂

    能够制造蜂蜡的是哪种类型的蜜蜂蚂蚁庄园 能够制造蜂

    能够制造蜂蜡的是哪种类型的蜜蜂蚂蚁庄园 能够制造蜂蜡的是哪一种类型的蜂蜜,答案,蜂蜡,金陵,新村小课堂:能够制造蜂蜡的是什么类型的蜜蜂?  正确答案:工蜂  答案解析:蜂蜡,又称黄蜡、蜜蜡。蜂蜡是由蜂群内适龄工蜂腹部的4对蜡腺分泌出来的一种脂肪性物质。在蜂群中,工蜂利用自己分泌的蜡来修筑巢脾、子房封盖和饲料房封盖。蚂蚁庄园:古典名著《红楼梦》中,著名的“金陵十二钗”指的是?  今日答案:十二位女子...

  • 骆驼驼峰里储存的是什么 骆驼的驼峰是用来储存水分的

    骆驼驼峰里储存的是什么 骆驼的驼峰是用来储存水分的

    骆驼驼峰里储存的是什么(骆驼的驼峰是用来储存水分的吗?),的是,驼峰,骆驼,骆驼驼峰里储存的是什么骆驼素有“沙漠之舟”的称号,它们能在沙漠以及酷暑和严寒等恶劣环境下良好地生存。在人们印象中,骆驼的驼峰可以储存生活所需的大量水分,但事实真是如此吗?专家表示,骆驼的驼峰是用来储存脂肪的。据生活科学(Live Science)网站报导,骆驼的驼峰并非用来储存水分,而是脂肪,这可以在食物和水都缺乏的干季让...

  • 西游记中唐僧的气质类型是   试分析西游记中唐僧师徒

    西游记中唐僧的气质类型是 试分析西游记中唐僧师徒

    西游记中唐僧的气质类型是 试分析西游记中唐僧师徒四人的气质类型,唐僧,气质类型,西游记,网友提问:《西游记》唐僧师徒在现代心理学中分别属于哪四种气质类型?优质回答:孙:胆汁质猪八戒:多血质沙和尚:黏液质唐玄奘:抑郁质其他网友回答《西游记》之所以成为中国四大古典名著之一。就是因为对人物刻画的惟妙惟肖,包括人物的表情、动作、心理都堪称典范。下面从心理方面进行剖析一下。心理学气质类型分为四种:胆汁质...

  • 今日头条发什么类型文章看的人多 头条上写文章的收入

    今日头条发什么类型文章看的人多 头条上写文章的收入

    今日头条发什么类型文章看的人多(头条上写文章的收入),人多,头条,文章,网友提问:在今日头条写文章的人,都是什么水平?优质回答:今日在头条写文章的人,什么水平的都有(高水平、中水平、低水平)。我来头条,第一是来学习的。今年四月初进头条以来,增长了很多知识。从一开始的不敢写,到现在的不写手痒,这就是进步。我不会咬文嚼字,想什么就写什么,就写一些通俗易懂的白话文,把自己的观点写明白就行了。第二,眼界开...

  • 生日蛋糕什么类型的最好 哪一种生日蛋糕最好吃

    生日蛋糕什么类型的最好 哪一种生日蛋糕最好吃

    生日蛋糕什么类型的最好 哪一种生日蛋糕最好吃,好吃,最好,生日蛋糕,网友提问:生日蛋糕都有什么类型?哪种最好吃?优质回答:生日蛋糕的类型有很多。因为是生日蛋糕的,每个人喜欢的风格都不一样,所以店家都会有很多类型。如果太过于单一,你们顾客会寥寥无几。只有类型繁多,才可以吸引顾客的眼球。终于哪一种好吃一个也是根据个人喜欢。比如有的人喜欢吃水果蛋糕,那么他肯定选择水果蛋糕。还有人比较喜欢吃奶油,那么他会...

  • 做什么类型的自媒体比较好 自媒体哪个类型好一点

    做什么类型的自媒体比较好 自媒体哪个类型好一点

    做什么类型的自媒体比较好(自媒体哪个类型好一点),做什么,媒体,类型,网友提问:自媒体中什么类型的最好做?优质回答:每个板块都有大咖出现,也有炮灰陨灭,所以选择1.是要根据自身的爱好,专业,特长去选,而不是人云亦云。2.坚持,坚持学习。3.不走第一步,永远没有路。迈出去后再找路,你会发现条条大道有发展。其他网友回答我是一名影视8年从业者,两年前开始研究自媒体,一年前开始研究自媒体通过我这一年的了解...

  • 玉镯的种类 翡翠手镯的类型有哪些?揭秘翡翠手镯的10种

    玉镯的种类 翡翠手镯的类型有哪些?揭秘翡翠手镯的10种

    玉镯的种类(翡翠手镯的类型有哪些?揭秘翡翠手镯的10种样式!),手镯,玉镯,翡翠,玉镯的种类 张玉堂已为逾40万位玉石爱好者服务 张玉堂翡翠推荐搜索贵妃镯美人镯竹镯收藏翡翠手镯品种丰富,色彩多样,自古以来,手镯就是女性最为青睐的首饰之一,女性戴翡翠手镯总能体现出十足的韵味和气质。古代的女子喜爱手镯,不仅是日常的装扮之物,也是寄情之物。因此也有了“何以致契阔?绕腕双跳脱”这样的说法。其中,翡翠中的玉...

  • 初次养狗需要注意什么 新手第一次养狗应该养什么类型

    初次养狗需要注意什么 新手第一次养狗应该养什么类型

    初次养狗需要注意什么(新手第一次养狗应该养什么类型的狗?),养狗,有什么,需要注意,网友提问:初次养狗,有什么必备知识?优质回答:第一,要有心理准备,未来你需要照顾它,每天需要不少的时间和耐心。第二,做好疫苗和驱虫。幼犬到家只有之后,健康的状态下做好疫苗,驱虫。中间间隔一周以上。第三,做好事物搭配,保证狗狗对营养成分的需求。第四,给它一个安全的窝,它会比较有安全感,对性格上的帮助非常大。第五,多接...