代码之家  ›  专栏  ›  技术社区  ›  fuz

为什么函数/var名称中仍然不喜欢非ascii字符?

  •  2
  • fuz  · 技术社区  · 14 年前

    当我看到一个为一些学生编写的小程序时,我经常看到这样的内容:(haskell,德语):

    ueber = "What the haeck!"
    

    über = "What the häck!"
    

    由于许多现代语言都规定允许通过UTF-8在声明名称中使用非标准字符,那么在项目中避免使用这些字符有什么特殊的原因吗?当然,只有那些能够输入这些字符的人(比如一组德国学生)或者这只是历史原因?

    a-zA-Z_0-9 如果你在国际上开发了一个应用程序,那么在一个“本地”项目中有没有理由避免这种情况?

    2 回复  |  直到 9 年前
        1
  •  3
  •   Pekka    14 年前

    在一个项目中避免使用这些字符有什么特别的原因吗?当然,只有那些能够输入这些字符的人才能使用这些字符

    这当然是主要原因。我们想到的其他原因是,许多开发工具、搜索函数、编辑器、解析器、文档管理器、代码搜索引擎等都不希望在代码中使用非ASCII输入。

    而且,你永远不知道你的代码有一天会被用到哪里!最小的无辜的学校项目可以成长为一个很好的开源工具,在全球各地使用的一天。在这种情况下,ASCII 最小的公分母,至少目前如此。

        2
  •  1
  •   MSalters    14 年前

    我不得不参与一个由法国开发商发起的项目。当更多的人加入这个项目时,他们不得不花相当多的时间把他们的节目翻译成英语。提前教你的德国学生这一课,他们不仅可以与他人分享他们的代码,而且不再需要一个 über ueber 也可以是变量。

    顺便说一句,是一个字母字符。 + - 是非字母数字的,我要说的是,很明显为什么它们在函数名中不受欢迎。