“牛排制作系列一”的版本间的差异
来自Blueidea
(牛排 PHP) |
fengtongxue(讨论 | 贡献) 小 |
||
(未显示另一用户的1个中间版本) | |||
第1行: | 第1行: | ||
我非常贪吃的,不知道大家怎样,在西餐中,我的最爱那当然是牛排了。 | 我非常贪吃的,不知道大家怎样,在西餐中,我的最爱那当然是牛排了。 | ||
− | + | 最近,我在学习做牛排,这样可以省不少钱 :P | |
好了,不和大家多扯题外话了,下面切入正题。 | 好了,不和大家多扯题外话了,下面切入正题。 | ||
第16行: | 第16行: | ||
为什么? | 为什么? | ||
这个问题问得很好。 | 这个问题问得很好。 | ||
− | + | 如果是一个小型网站,如个人网站,你可以面向过程的很简单地完成,因为这样刚好符合PHP的特性。 | |
但是如果有一个非常大的网站需要一个团队维护,而你刚好是这个团队的一员的话,那么我建议你使用面向对象,而且是PHP5的面向对象。 | 但是如果有一个非常大的网站需要一个团队维护,而你刚好是这个团队的一员的话,那么我建议你使用面向对象,而且是PHP5的面向对象。 | ||
− | + | 优秀的面向对象的程序可以让你的程序活得更长一些,而且方便代码的重用。 | |
为什么说活的更长些呢? | 为什么说活的更长些呢? | ||
因为当你的代码到了一定的应用的时候,需要得到扩充,但是你又发现目前的结构不方便扩充,那么你就得考虑代码重写了。 | 因为当你的代码到了一定的应用的时候,需要得到扩充,但是你又发现目前的结构不方便扩充,那么你就得考虑代码重写了。 | ||
第39行: | 第39行: | ||
<nowiki>原著 Snake.Zero (cenocentury at gmail dot com) 发布于 蓝色理想维基百科[wiki.blueidea.com] 未经允许严禁转载</nowiki> | <nowiki>原著 Snake.Zero (cenocentury at gmail dot com) 发布于 蓝色理想维基百科[wiki.blueidea.com] 未经允许严禁转载</nowiki> | ||
+ | [[category:PHP]] |
2008-03-17T20:41:44的最后版本
我非常贪吃的,不知道大家怎样,在西餐中,我的最爱那当然是牛排了。 最近,我在学习做牛排,这样可以省不少钱 :P 好了,不和大家多扯题外话了,下面切入正题。
当然,牛排也分很多种,从肉质上来说,它分为菲力FILLET、肉眼RIB-EYE、西冷SIRLOIN、丁骨(或叫T骨)T-BONE。 什么?你说你是个PHP程序员,很好,那么看看,你很可能这样来写吧。 然后 $kind 可能是fillet,rib-eye,sirloin或者t-bone。对吧?
<?php class beefsteak { var $kind; }
当然,这也是非常常用的面向对象方法之一。 但是,现在这篇文章我是希望你能够换另外一种思路来思考问题。我们是要把简单的东西复杂化。 为什么? 这个问题问得很好。 如果是一个小型网站,如个人网站,你可以面向过程的很简单地完成,因为这样刚好符合PHP的特性。 但是如果有一个非常大的网站需要一个团队维护,而你刚好是这个团队的一员的话,那么我建议你使用面向对象,而且是PHP5的面向对象。 优秀的面向对象的程序可以让你的程序活得更长一些,而且方便代码的重用。 为什么说活的更长些呢? 因为当你的代码到了一定的应用的时候,需要得到扩充,但是你又发现目前的结构不方便扩充,那么你就得考虑代码重写了。 要如何减少这种代码的反复重写?那就是一开始就顶下一个好的程序结构。 首先是它的核心。 来看下面这段代码:
<?php abstract class beefsteak { } class fillet extends beefsteak{ }
这里定义了一个抽象类beefsteak,而flillet继承它。
原著 Snake.Zero (cenocentury at gmail dot com) 发布于 蓝色理想维基百科[wiki.blueidea.com] 未经允许严禁转载