首页 »PHP教程 » 用 PHP 开发健壮的代码: 编写可重用函数 第 3 部分 »正文
用 PHP 开发健壮的代码: 编写可重用函数 第 3 部分
来源: 发布时间:星期一, 2009年1月12日 浏览:26次 评论:0
在本系列文章(有关如何在实际情况下开发有效 ![](/icons/64857de.gif) PHP 代码) ![](/icons/64857de.gif) 第 3 部分中 ![](/icons/64857dou.gif) Amol Hatwar 讨论了如何构建最有效 ![](/icons/64857de.gif) 功能型 ![](/icons/64857hanshu.gif) ![](/icons/64857dou.gif) 使用这些 ![](/icons/64857hanshu.gif) 不会牺牲太多性能或可管理性 ![](/icons/64857dou2.gif) 作者重点阐述了如何编写可重用 ![](/icons/64857hanshu.gif) ![](/icons/64857dou.gif) 并介绍了如何避免和该任务相关 ![](/icons/64857de.gif) ![](/icons/64857yi.gif) 些最常见问题 ![](/icons/64857dou2.gif) 欢迎回来 ![](/icons/64857dou2.gif) 在本系列文章 ![](/icons/64857de.gif) 第 1 部分中 ![](/icons/64857dou.gif) 我讨论了 ![](/icons/64857yi.gif) 些基本 ![](/icons/64857de.gif) PHP 设计规则 ![](/icons/64857dou.gif) 并介绍了如何编写安全、简单、和平台无关且快速 ![](/icons/64857de.gif) 代码 ![](/icons/64857dou2.gif) 在第 2 部分中 ![](/icons/64857dou.gif) 我介绍了变量 ![](/icons/64857dou.gif) 并讨论了它们在 PHP 编码中 ![](/icons/64857de.gif) 使用方法 — 好 ![](/icons/64857de.gif) 和坏 ![](/icons/64857de.gif) 实战 ![](/icons/64857dou2.gif) 在本文中 ![](/icons/64857dou.gif) 您将了解如何在 PHP 中明智地使用 ![](/icons/64857hanshu.gif) ![](/icons/64857dou2.gif) 在每 ![](/icons/64857yi.gif) 种高级编程语言中 ![](/icons/64857dou.gif) ![](/icons/64857chengxu.gif) 员都可以定义 ![](/icons/64857hanshu.gif) ![](/icons/64857dou.gif) PHP 也不例外 ![](/icons/64857dou2.gif) 唯 ![](/icons/64857yi.gif) ![](/icons/64857de.gif) 区别在于 ![](/icons/64857dou.gif) 您不必担心 ![](/icons/64857hanshu.gif) ![](/icons/64857de.gif) 返回类型 ![](/icons/64857dou2.gif) 深入研究 ![](/icons/64857hanshu.gif) 可用于: 将几行代码封装成 ![](/icons/64857yi.gif) 条语句 ![](/icons/64857dou2.gif) 简化代码 ![](/icons/64857dou2.gif) 最重要 ![](/icons/64857de.gif) 是 ![](/icons/64857dou.gif) 将应用 ![](/icons/64857chengxu.gif) 作为更小 ![](/icons/64857de.gif) 应用 ![](/icons/64857chengxu.gif) 相互协调 ![](/icons/64857de.gif) 产物 对于从编译语言(如 C/C ![](/icons/64857jiajia.gif) )转到 PHP ![](/icons/64857de.gif) 开发人员来说 ![](/icons/64857dou.gif) PHP ![](/icons/64857de.gif) 性能级别是令人吃惊 ![](/icons/64857de.gif) ![](/icons/64857dou2.gif) 在使用 CPU 和内存资源方面 ![](/icons/64857dou.gif) 用户定义 ![](/icons/64857de.gif) ![](/icons/64857hanshu.gif) 非常昂贵 ![](/icons/64857dou2.gif) 这主要是 ![](/icons/64857yinwei.gif) PHP 是解释型和松散类型 ![](/icons/64857de.gif) ![](/icons/64857dou2.gif) 包装和否 有些开发人员仅仅 ![](/icons/64857yinwei.gif) 不喜欢 ![](/icons/64857hanshu.gif) ![](/icons/64857de.gif) 名称就把他们使用 ![](/icons/64857de.gif) 每个 ![](/icons/64857hanshu.gif) 都包装起来 ![](/icons/64857dou.gif) 而另 ![](/icons/64857yi.gif) 些开发人员却根本不喜欢使用包装 ![](/icons/64857dou2.gif) 包装现有 ![](/icons/64857de.gif) PHP ![](/icons/64857hanshu.gif) 而不添加或补充现有 ![](/icons/64857de.gif) 功能 ![](/icons/64857dou.gif) 是完全不能接受 ![](/icons/64857de.gif) ![](/icons/64857dou2.gif) 除了会增加大小和执行时间外 ![](/icons/64857dou.gif) 这样 ![](/icons/64857de.gif) 重命名 ![](/icons/64857hanshu.gif) 有时可能会带来管理上 ![](/icons/64857de.gif) 恶梦 ![](/icons/64857dou2.gif) 代码中 ![](/icons/64857de.gif) 内联 ![](/icons/64857hanshu.gif) 会导致莫名其妙 ![](/icons/64857de.gif) 代码 ![](/icons/64857dou.gif) 甚至是更大 ![](/icons/64857de.gif) 管理灾难 ![](/icons/64857dou2.gif) 这样做 ![](/icons/64857de.gif) 唯 ![](/icons/64857yi.gif) 好处可能就是得到 ![](/icons/64857yi.gif) 个更快 ![](/icons/64857de.gif) 代码 ![](/icons/64857dou2.gif) 更明智 ![](/icons/64857de.gif) 思路方法是 ![](/icons/64857dou.gif) 仅在需要多次使用代码 ![](/icons/64857dou.gif) 并且对于您希望实现 ![](/icons/64857de.gif) 任务没有可用 ![](/icons/64857de.gif) 内置 PHP ![](/icons/64857hanshu.gif) 时才定义 ![](/icons/64857hanshu.gif) ![](/icons/64857dou2.gif) 您可以选择重命名或仅当需要时才有限制地使用 ![](/icons/64857dou2.gif)
图 1中 ![](/icons/64857de.gif) 图表粗略地显示了可管理性和速度和使用 ![](/icons/64857de.gif) ![](/icons/64857hanshu.gif) 数量的间 ![](/icons/64857de.gif) 相互关系 ![](/icons/64857dou2.gif) (在此我没标明单位 ![](/icons/64857dou.gif) ![](/icons/64857yinwei.gif) 数字取决于个体和团队(Team) ![](/icons/64857de.gif) 能力;这 ![](/icons/64857yi.gif) 关系是重要 ![](/icons/64857de.gif) 可视数据 ![](/icons/64857dou2.gif) ) 图 1. 可管理性/速度 Vs. ![](/icons/64857hanshu.gif) 数量 ![](http://www.crazycoder.cn/WebFiles/20091/8fa80d1c-89fb-4ad7-8c53-83e55ccd6f20.g<img src='/icons/64857if.gif' />) $my_func ![](/icons/64857kh.gif) ; ?> 当您想省事时 ![](/icons/64857dou.gif) 也可以使用该思路方法编写几条 switch- ![](/icons/64857case.gif) 语句 ![](/icons/64857dou.gif) 以评估要使用哪个 ![](/icons/64857hanshu.gif) ![](/icons/64857dou2.gif) 只需设置变量并使用它作为 ![](/icons/64857hanshu.gif) ![](/icons/64857dou2.gif) 尽管这里我们故意设置了变量 ![](/icons/64857dou.gif) 但是请记住 ![](/icons/64857dou.gif) 可以动态完成该工作 ![](/icons/64857dou.gif) 而这才显示了该技术 ![](/icons/64857de.gif) 功能是多么强大 ![](/icons/64857dou2.gif) 结束语 在本文中 ![](/icons/64857dou.gif) 我们阐述了如何设计和编写优质 ![](/icons/64857hanshu.gif) ![](/icons/64857dou2.gif) 我们演示了如何使模块和脚本集相互配合 ![](/icons/64857dou.gif) 以制作更大 ![](/icons/64857de.gif) 应用 ![](/icons/64857chengxu.gif) ![](/icons/64857dou.gif) 我们还研究了可以减少编码工作并生成极佳代码 ![](/icons/64857de.gif) 技术 ![](/icons/64857dou2.gif) 在下 ![](/icons/64857yi.gif) 篇文章中 ![](/icons/64857dou.gif) 我们将介绍说明 PHP 中 ![](/icons/64857de.gif) 类和对象 ![](/icons/64857dou.gif) 以当前 ![](/icons/64857de.gif) 技能为基础来进行构建 ![](/icons/64857dou.gif) 并且仔细研究 ![](/icons/64857yi.gif) 些执行高速缓存Cache和数据库抽象 ![](/icons/64857de.gif) 代码
相关文章
读者评论
发表评论
|
|