为什么事件处理程序的后缀是“handler”?为什么不给它们加上“句柄”前缀呢?

Dav*_*ver 5 naming-conventions

我注意到,在事件处理程序中添加后缀“handler”是很常见的(至少在 ECMAScript 中):clickHandler, fooBarHandler, etc\xe2\x80\xa6 但我一直认为用“handle”作为前缀更有意义handleClickhandleFooBar, ETC。

\n\n

使用前缀表示法,方法更容易直观地解析(很容易区分处理程序和其他事物),可以通过编辑器的文本完成更快地查找(或忽略),并且它们遵循方法应该是动词(handleClick是是动词,clickHandler是名词)。

\n\n

那么,为什么后缀表示法如此常见呢?是否有一些我没有注意到的隐藏好处?

\n

Jon*_*nam 2

传统的 Flash 命名约定使用“on”作为前缀,而不是“Handler”作为后缀。有些人喜欢动词方法名称,有些人喜欢名词方法名称。onMouseClick 这个名字更多的是一个副词,mouseClickHandler 是一个听起来像类名的名词,而handleMouseClick 是一个动词。

我通常使用“Handler”后缀来遵循Adob​​e Flex 编码约定,但“on”前缀要短得多,并且具有(已经提到的)排序优势。如果您在 Flex Builder 中,按下 Ctrl-O,它将弹出一个快捷菜单,只需输入“on”即可显示文件中的每个处理程序。