PHP的不足之处 但是这同时也是这个语言的问题所在。你经常会发现很多使用PHP编写出的代码错误百出,但这些代码往往却被人们互相拷贝,却没有人去认真分析研究它们。这些代码通常是由那些习惯互相借鉴拷贝代码的程序员所编写,这些代码质量低劣的原因是这些程序员通常不习惯问为什么,不喜欢弄清楚原理,只管拿来就用。 在我第一次想深入了解这个语言的时候,我希望看到一些关于文件锁定的示例,结果尽管看到了非常多,但却没有一个是正确的。正如事实已经证明的那样,PHP 主要是与数据库搭配使用,数据库来处理所有一致性问题,因此多数人只关心从数据库中存取数据,而不用再去必须考虑底层的问题。但是这个语言不仅仅可以处理与数据库交互的上层问题,同样也可以实现与文件系统之间交互的底层问题。我的感觉是,在PHP社区中多数人只关心如何得到一个好的结果,而没有多少人关心它的真正实现原理,因此才出现了这种错误的倾向。 后来推出了PHP 5,与以前版本相比有了不小改进,但是它主要是增加了一些从C++和Java中提取出来的功能,但是人们只是到处找来一些新功能,但却没有仔细的分析每一个增加的功能,及其对这个语言的影响。 相比之下,根据我对Python语言多年的观察,在过去10多年中它增加的每一个新功能都经过反复的分析和推敲。时间将会证明谁对谁错,或者PHP社区将会知道如何来处理这些功能,但是我对此深表怀疑。 在最近一段时间里,我一直使用PHP来实现我新建立的站点。之所以选择它的关键是,我只用它来进行一些简单的开发。举个例子来说,PHP让你可以解决非常弱智的HTML问题,例如你不能在HTML中包含文件的问题。PHP可以轻松做到这一点,而且可以让我轻松的在整个站点之间实现我的设计,而且有时候我们只需要实现一些小东西并将其嵌入在页面中,PHP实现起这些东西来非常简单。 但是,我发现随着要完成的任务复杂度的提高,更好的选择是选择使用Python,因此PHP更适于处理简单的任务。 Python的内核非常精简,功能非常丰富,它提供了一个良好的程序构建基础。综合了C和C++二者的优点,只要采用合适的结构和方式,便可对 Python程序进行无限的扩充。当然,它也有自己的不足之处,例如有的朋友抱怨Python对规则表达式的支持不如PHP中强大。 |