`
mvmyok
  • 浏览: 4089 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

如果PHP是用英式英语编写的

阅读更多
PHP之父Rasmus Lerdorf在创造出PHP时,他并没有用格陵兰语或者丹麦语编写(尽管他有格陵兰和丹麦血统),这是非常明智的。虽然对他来说用英语编写,并没有用自己母语编写来得容易。由于他以前在加拿大待过,所以他选择了本地方言。不是法语,也不是不合纯正英语标准的方言,我们通常称其为“美式英语”。

从那以后,英国的PHP开发人员就对这件事情格外不满。Rasmus在想什么?更重要的是,我们要如何改变这个既成的事实?我们开发人员如何保证即使在数字时代,大英帝国的优良传统也能继续发扬光大?

一记耳光

$variable_name    最有必要更改就是要删除一些深受美国人喜欢的符号,并用一些更加精炼的符号代替,让PHP变得更加优雅。

£variable_name  开始吧

<?php echo 'Hello World!';  ?> 今天的英国程序员中,有多少人一开始接触到的就是“Hello World”这个典型的美国式程序,虽然简单但老套粗俗令人反感?一份更加冠冕正式的介绍将会促进大部分年轻的英国天才使用这种语言,从而为更广阔的用户群提供更加文雅的气氛。

<?php announce 'Good morrow, fellow subjects of the Crown.';  ?> 缩写词

没有东西比没必要的缩写词更加让英国人痛恨的。“缩写词”在伦敦的街道上闻所未闻,正如土生土长的英国文法家不肯自降身份去发送“c u soon traffic kthxbye”等各种信息,宁愿使用一些看起来更加文雅的词句代替:“亲爱的先生或女士。只要时间允许,我希望在一个小时之内,尽快到达。我向各位保证,你们的马匹会得到妥善安置。敬上。”(输入较慢,是的,但是不至于仓促)。

从另一方面来说,PHP里面包含很多毫无必要的缩写字和缩写字首字母。

str_replace()  is_int()  var_dump()  preg_match()  json_encode()  mysql_connect() 应该改成下面这样:

string_replace()  is_integer()  variable_dump()  perl_regular_expression_match()  javascript_object_notation_encode()  my_structured_query_language_connect() 校正:我已经更正了“preg_match”的扩充——感谢指出来的朋友。

口才

if ($condition) {      // Code here  } else {      // Code here  } 莎士比亚可不愿意看到他的母语被扭曲成这个怪物。简练在适当的场合很受欢迎——在一些偏僻的地方未必如此——但不是这里。“if … else”模块是PHP之中用得最多的条件代码,所以它在使用时必须是尽可能的安全无害。有很多选择可以取代,但是这个条件语句也许是最稳健的。

perchance (£condition) {      // Code here  } otherwise {      // Code here  } 上述模块同样适用于美国化的,只能说是笨重的,让人厌恶的switch … case概念,

switch ($variable) {      case $option1:          //Code here          break;      case $option2:          //Code here          break;      default:          //Code here          break;  } 像”switch”, “break” and “default”这样的关键字对读者来说很有难度并且缺乏联系。这种美式用法真是需要改进。(使用美式用法的人有一些有趣的想法,期望用i_might_be_partial_to()这样的语句来代替include()来显示他们天才的编程天赋):

what_about (£variable) {      perhaps £possibility:          //Code here          splendid;      perhaps £other_possibility:          //Code here          splendid;      on_the_off_chance:          //Code here          splendid;  } 拼写

imagecolorallocate()  serialize()  newt_centered_window()  connection_status() 在这点上,单词让我吃过不少亏。自重的绅士期待该如何看得懂这些“单词”。它削弱了任何人接受编程语言中单词的曲解含义的信念。这些“单词”和众多相似的错误,应该立即恢复到适当的形式。

imagecolourallocate()  serialise()  newt_centred_window()  connexion_status() 习惯

try {      // Code here  } catch (Exception $e) {      // Handle exception      die('Message');  } try … catch语句块是PHP缺乏特点的一个很好证明。新的PHP过于直接地允许使用该模块http://www.gw005.com ,缺乏应有的限制。另外,单词“die”很让人丧气。这个新模块,尽管更加冗长,但更为文雅和乐观。

would_you_mind {      // Code here  } actually_i_do_mind (Exception £e) {      // Politely move on      cheerio('Message');  } 类

在英国人的心里,没有什么东西跟类的概念一样重要和根深蒂固,而且,PHP当中的这一部分很少变动,除非是这里做出的重要更改。

class Republic {      public $a;      private $b;      protected $c;  }  $example = new Republic; 首先,流行的系统中并没有类层次存在的余地,这是无法接受的。所以我们首先应该赋予类的特定等级——上层,中层,工作层(upper, middle, working )——如果没有更高等级指令类的明确许可,类就无法使用一个更高级的类的方法(当然,即使它后来已经访问了更高级的类,但它并非更高级指令的正式成员,无法授予自身访问其他低级别指令类的更高级指令)。“public”和“private”,在英国人的类系统中是同义词(例如,学校制度命名),所以这些必须进行调整,“protected”的属性可见性也一样。单词“new”,虽然可行,但在类问题上需要有一个更加恰当的词来代替。

upper_class Empire {      state £a;      private £b;      hereditary £c;  }  £example = nouveau Empire; 日不落…

希望这些少数简单的变动能够提升PHP在众多编程语言之中的声誉和地位。它不再是蹩脚美国人的远亲。相反,它能重新回到作为脚本语言之王的英国人的怀抱中。

注:原文作者Dave是一位英国开发人员。

分享到:
评论

相关推荐

    php资料 参考手册等

    《PHP5学习(全英文).chm》则为英语学习者提供了原汁原味的PHP5教程,通过阅读英文原版资料,可以提升你的专业英语水平,更好地理解PHP的最新发展和技术细节。 针对PHP4的学习者,《PHP4 中文参考手册.chm》和《PHP4...

    php核心编程第三版.rar

    11. **PHP最新版本特性**:第三版可能包含了PHP5到PHP7的一些新特性,如类型声明、返回类型提示、空值合并运算符等。 通过阅读《PHP核心编程》第三版,你不仅能够增强对PHP的理解,还能提升自己的编程技巧,为构建...

    php培训心得5篇_php学习心得体会.pdf

    - 基础知识包括但不限于操作系统使用、HTML/CSS、JavaScript等前端语言的基本概念,这些是理解和编写PHP脚本的基础。 2. **实践与理论结合**: - 在PHP学习中,实践尤为重要。范文2中的黄老师强调了从实际应用...

    PHP参考手册(中英文均有)

    2. **流程控制**:包括条件语句(if、else、switch)、循环语句(for、while、do...while、foreach)、跳转语句(break、continue)等,这些都是编写逻辑代码的基础。 3. **函数**:PHP内置了大量的函数,用于处理...

    PHP Web应用开发入门体验手记.doc

    Web应用的开发流程包括脚本编写、静态网页仿站、UI设计、视图模块化、动态网页原生代码编写或使用模板框架。前端开发可以使用Firefox等工具扒取网页内容,或者使用DW+Ps、WebStorm、HBuilder等进行HTML5、CSS3、...

    PHP手册(中文版与英文版)

    在使用这两个手册时,用户可以快速查找特定函数的用法、参数、返回值以及示例,这对于编写代码和解决编程问题非常有帮助。此外,手册还提供了关于配置选项、扩展模块以及PHP与服务器、数据库集成的信息,对于优化...

    国外PHP动态第四期

    5. **持续集成/持续部署(CI/CD)**:解释了CI/CD的概念及其在软件开发生命周期中的作用,以及如何设置和维护CI/CD流程。 通过掌握这些基础知识,PHP开发者可以更好地构建健壮的应用程序,并提升个人技能水平。 ####...

    advanced php programming PHP 高级编程[E文]

    本书由经验丰富的软件开发者George Schlossnagle编写,旨在帮助读者深入理解PHP编程的核心概念和技术细节,并掌握构建高性能Web应用程序所需的高级技巧。 #### 三、核心知识点 **1. PHP 5简介** - **版本特性**: ...

    PHP基础教程.docx

    PHP的优势在于其简洁的学习曲线,与其他编程语言如Java和Perl相比,初学者可以更快地掌握基本概念并开始编写程序。PHP的语法结构与C、Perl、ASP和JSP相似,因此对这些语言有一定了解的人会发现PHP非常易上手。 对于...

    PHP中英文参考手册

    尽管中文手册对于理解PHP概念非常有帮助,但PHP英文手册则是官方文档,更新最为及时,涵盖了所有最新特性和改进。英文手册通常包含更多细节和示例,对于深入研究和了解PHP的底层机制,或者查阅最新的API函数,英文...

    PHP&MYSQL Head_First系列,最好的程序教材!

    - **威尔·哈里斯**(Will Harris),由Geek提供动力的数据库管理员:“Head First系列彻底改变了技术出版业,我相信这些新方法将成为未来的标准。” - **斯蒂芬妮·利塞**(Stephanie Liese),网页开发者:“阅读...

    Guide.to.PHP.Design.Patterns(PHP设计模式-中英双语)

    这本书不仅涵盖了设计模式的基本概念,还详细解释了如何在PHP环境中应用这些模式。 一、设计模式基础 设计模式是对在软件设计中经常出现的某些问题的典型解决方案的描述。它们不是具体的代码或库,而是描述在特定...

    Expert PHP 5 Tools

    - **PHP 5的新特性**:详细介绍PHP 5相对于前代版本的主要改进,包括面向对象编程的增强、类型提示等。 - **设计模式在PHP中的应用**:讲解如何将经典的设计模式应用于PHP项目中,提高代码的可维护性和复用性。 - **...

    最新WebShell管理工具增强版3.0

    这些脚本可以是PHP、ASP、JSP等服务器支持的语言编写,使得攻击者可以通过HTTP协议进行远程操作。然而,正向使用的WebShell工具则是为了帮助合法管理员进行合法的远程管理,例如查看服务器状态、执行系统命令、管理...

    mod flash news image rotator

    `zh-TW.mod_newsimagerotator.ini`、`zh-CN.mod_newsimagerotator.ini` 和 `en-GB.mod_newsimagerotator.ini` 文件是语言资源文件,分别对应繁体中文、简体中文和英式英语。这些文件存储了插件中的文本字符串,使得...

    商业编程-源码-AzDGDatingLite v2.1.1 中文语言包.zip

    首先,"源码"是指程序的原始代码,程序员用编程语言编写的未经过编译或解释的文本文件。对于AzDGDatingLite,源码是整个系统的核心,它揭示了软件的内部工作原理,允许开发者进行定制、修改和扩展。源码的开放性意味...

Global site tag (gtag.js) - Google Analytics