其他非英语母语国家在代码中使用母语命名的实践拾珠

2020-12-25 11:40:25 +08:00
 xuanwu

全文地址:其他非英语母语国家在代码中使用母语命名的实践拾珠

最近在一次持续数天的中文命名相关讨论中,对个人搜集的一些资料回顾了一遍。此文对非英语母语命名相关素材作一整理,暂时只有亚欧(语言)两部分。个人眼界有限,欢迎各位补充!

亚洲

Rust 选择支持非 ASCII 码标识符在 GitHub 引发的激辩中,有韩国开发者声援,但尚未看到韩语命名的实例。下面主要是日本的相关实践和研究。

早在 1992 年就有母语日文命名与英文命名标识符的可读性比较实验

各种日文命名相关的论文包括 IDE 辅助功能研究等等延续至今。其中 2018 年《ローマ字入力による日本語識別子入力補完プラグインの開発と評価》的摘要中提到日文命名标识符使代码对本国开发者的可读性提高的多份报告:

There are several reports that it is useful to write the identier names of variables and functions in Japanese as one way to increase the readability of source codes for Japanese programmers.

2018 年日本官方发布的小学编程教育指导,直接使用日文命名的语法和 API

在编程教程方面,2017 年出版的 JavaScript 入门译著《初めてのJavaScript 第 3 版 -- ES2015 以降の最新ウェブ開発》中使用了日语命名的例程如下:

此书作者在计算机领域深耕多年,对将原书中英文例程改为日文命名的缘由的阐述中提到(详见此文):

これからは、日本国内をターゲットにした開発では徐々に日本語識別子が使われることになるのでしょう。

经有道翻译:“今后,以日本国内为目标的开发将逐渐使用日语标识符。”

另外,早在 2003 年出版的日文 MySQL 书籍中,使用了母语例程:

CREATE TABLE 社員  (
    社員番号 INT NOT NULL,
    氏名 CHAR(20) NOT NULL,
    性別 ENUM(`男`,`女`) NOT NULL,
    部署コード INT NOT NULL,
    入社年度 year NOT NULL,
    MAIL CHAR(40) NOT NULL,
    INDEX (社員番号),
    INDEX (氏名)
);

V2EX 论坛上的这位在 2018 年也回忆了日本外包项目中的日语命名

欧洲

[余下部分见原文]

649 次点击
所在节点    分享发现
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/738845

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX