关于变量的命名,是很容易引发程序员论战的话题。而对于变量命名中的链接方式,蛇形命名法为什么在Python中是常推荐的。
对于单个字符或者单词(a、A、cat),当它们被用作变量名时,大致有全小写、全大写和首字母大小写这几种情况。编程语言中出现这些情况时,它们基本上跟英语的表达习惯是相同的。
但是,编程语言为了令变量名表达出更丰富的含义,通常需要使用多个单词或符号。英语习惯使用空格来间隔开单词,然而这种用法在编程语言中会带来一些麻烦,所以程序员们就创造出了另外的方法:
蛇形命名法(snake case)、驼峰命名法(camel case)、匈牙利命名法(HN case)、帕斯卡命名法(Pascal case)、嵴柱命名法(spinal case)、自由命名法(studly caps)、驼峰蛇形命名法。
总体而言,这些命名法都是要克服单词间的空格,从而把不同单词串连起来,终达到创造出一种新的“单词”的效果。
下面的思维导图,大略区分了这几种命名法:
如果按照受众量与知名程度排名,毫无疑问排前两位的是驼峰命名法和蛇形命名法。
简单比较一下它们的优缺点:
可读性:蛇形命名法用下划线拉大词距,更清楚易读;驼峰命名法的变量名紧凑,节省行宽;
易写性:驼峰命名法以大小写为区分,不引入额外的标识符;蛇形命名法统一小写,输入相对方便;
明义性:对于某些缩写成的专有名词,例如HTTP、RGB、DNS等等,一般习惯全用大写表示,但是如果严格遵循这两种命名法的话,须得只留首字母大写或者全小写,这样对原意都会造成一些“破坏”,有时候甚至让人感觉到别扭。如果保留全大写,IDE可能识别不准,反而会出现波浪提示。
由此可见,它们各有优缺点,但哪一方都不具有压倒性。我个人稍微偏好于蛇形命名法,但是在需要用驼峰命名的时候(比如写 Java 时),也能无障碍切换。
需要指出的是,Python 也推荐使用驼峰式命名,那是在类名、Type 变量、异常 exception 名这些情况。而在包名、模块名、方法名和普通变量名等情况,则是推荐用蛇形命名(lower_case_with_underscores)。
那么,为什么 Python 会推荐用蛇形命名法呢?
大的原因是历史原因。蛇形命名方式起源于1960 年代,那时它甚至还没有特定的名称。Python从C语言中借鉴过来后,给它起名为“lower_case_with_underscores”,即带下划线的小写命名。
直到21世纪初的几年,在Intel和Ruby社区中,才有人开始以“snake_case”即蛇形命名来称唿它。
现今有不少编程语言在某些场景下会推荐使用蛇形命名法,而Python则是其中早这么做的之一,并且是使用场景多的语言之一。
维基百科上统计了一份清单,可以看出Python对它的偏好:
其次,还有一个比较重要的原因,那就是 Python 对下划线“_”的独特偏爱。
比如类似于 _xx、__xx、xx_、__xx__ 等等的写法就随处可见,甚至还有孤零零一个下划线 _ 作为变量的特殊情况。这样看来,下划线作为单词间的连接,恰恰是这种传统习惯的一部分。
- 报考条件
- 报名时间
- 报名费用
- 考试科目
- 考试时间
-
GARP对于FRM报考条件的规定:
What qualifications do I need to register for the FRM Program?
There are no educational or professional prerequisites needed toregister.
翻译为:报名FRM考试没有任何学历或专业的先决条件。
可以理解为,报名FRM考试没有任何的学历和专业的要求,只要是你想考,都可以报名的。查看完整内容 -
2024年5月FRM考试报名时间为:
早鸟价报名阶段:2023年12月1日-2024年1月31日。
标准价报名阶段:2024年2月1日-2024年3月31日。2024年8月FRM考试报名时间为:
早鸟价报名阶段:2024年3月1日-2024年4月30日。
标准价报名阶段:2024年5月1日-2024年6月30日。2024年11月FRM考试报名时间为:
早鸟价报名时间:2024年5月1日-2024年7月31日。
标准价报名时间:2024年8月1日-2024年9月30日。查看完整内容 -
2023年GARP协会对FRM的各级考试报名的费用作出了修改:将原先早报阶段考试费从$550上涨至$600,标准阶段考试费从$750上涨至$800。费用分为:
注册费:$ 400 USD;
考试费:$ 600 USD(第一阶段)or $ 800 USD(第二阶段);
场地费:$ 40 USD(大陆考生每次参加FRM考试都需缴纳场地费);
数据费:$ 10 USD(只收取一次);
首次注册的考生费用为(注册费 + 考试费 + 场地费 + 数据费)= $1050 or $1250 USD。
非首次注册的考生费用为(考试费 + 场地费) = $640 or $840 USD。查看完整内容 -
FRM考试共两级,FRM一级四门科目,FRM二级六门科目;具体科目及占比如下:
FRM一级(共四门科目)
1、Foundations of Risk Management风险管理基础(大约占20%)
2、Quantitative Analysis数量分析(大约占20%)
3、Valuation and Risk Models估值与风险建模(大约占30%)
4、Financial Markets and Products金融市场与金融产品(大约占30%)
FRM二级(共六门科目)
1、Market Risk Measurement and Management市场风险管理与测量(大约占20%)
2、Credit Risk Measurement and Management信用风险管理与测量(大约占20%)
3、Operational and Integrated Risk Management操作及综合风险管理(大约占20%)
4、Liquidity and Treasury Risk Measurement and Management 流动性风险管理(大约占15%)
5、Risk Management and Investment Management投资风险管理(大约占15%)
6、Current Issues in Financial Markets金融市场前沿话题(大约占10%)查看完整内容 -
2024年FRM考试时间安排如下:
FRM一级考试:
2024年5月4日-5月17日;
2024年8月3日(周六)上午;
2024年11月2日-11月15日。FRM二级考试:
2024年5月18日-5月24日;
2024年8月3月(周六)下午;
2024年11月16日-11月22日。查看完整内容
-
中文名
金融风险管理师
-
持证人数
25000(中国)
-
外文名
FRM(Financial Risk Manager)
-
考试等级
FRM考试共分为两级考试
-
考试时间
5月、8月、11月
-
报名时间
5月考试(12月1日-3月31日)
8月考试(3月1日-6月30日)
11月考试(5月1日-9月30日)