首页  >  问答  >  正文

php - 某个功能可以用函数实现,有必要再去使用类去实现吗

我用的是 PHP ,我现在写的项目里面的大多数的功能都封装到函数中了,需要的用时候,就 require ,再去传参调用函数,不知道这样会不会不好,难道还要用类去实现吗?

以segmentfault网站首页为例子(首页显示一些问题),如果要让我写的话(使用MVC),我会先写一个专门获取问题的函数 function getQuestion( 参数 ) , 然后再在 首页model(类) 中 require 这个函数 , 然后再传参调用这个函数,获取到数据后,再给View 去渲染 。
我总感觉 “require 这个函数然后去调用获取数据” 这样写不好 , 但是不知道应该怎样写才算好,希望大家指教指教

滿天的星座滿天的星座2698 天前757

全部回复(10)我来回复

  • 大家讲道理

    大家讲道理2017-05-31 10:35:09

    其实都可以不妨碍,但是你要问一种最优解,标准方案的话,那么就使用实现吧。

    可能你现在对很多概念还不理解,理解模糊,那么先按照被人推崇的做法做,等过一阵子在看。

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-31 10:35:09

    面向对象的几个特性:封装、继承、多态,如果你的需求抽象出来有其中的特性,就应该考虑用oop。

    回复
    0
  • PHP中文网

    PHP中文网2017-05-31 10:35:09

    你这问题就等于在问面向对象和面向过程哪个好,这个问题已经争论了很多年,如今也有人说面向函数,每个人都有自己喜欢的方式

    我的见解是具体情况具体分析,面向对象易复用,易扩展,易维护,但是面向过程性能比面向对象高,如果项目中相同逻辑模块或者重复代码较多,推荐使用面向对象,如果项目结构不复杂而又追求性能,那么比较推荐面向过程。其实一个项目中这两种方式完全可以结合使用。看具体需求

    http://m.blog.csdn.net/articl...

    回复
    0
  • PHPz

    PHPz2017-05-31 10:35:09

    大型项目尽量使用类实现,而小型项目通过函数更加简便

    需要重用的尽量通过类实现

    通过类的好处是,代码写多了,模块化之后再写新项目会很轻松

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-31 10:35:09

    真正的面向对象,必须要有:

    • 有状态 (stateful)

    • 用消息来通信 (message passing)

    否则请考虑 函数式 或 过程式。

    把 类 当作 命名空间 也是可以的,比如一个 类 里全是 静态方法。
    require 本身就是 命名空间 的一种实现,所以不需要。

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-31 10:35:09

    可以看看这篇
    面向对象与设计模式 /a/11...

    回复
    0
  • 漂亮男人

    漂亮男人2017-05-31 10:35:09

    毫无疑问,使用 OO 编程。

    PHP项目发展到7这个版本,已经很OO了,没必要开历史的倒车啊。

    追求性能? 别逗了,web应用的性能瓶颈一般不在这个地方。

    你说的require这个问题,你用composer + namespace就可以了。

    建议你学习一下symfony,laravel这样的框架代码,不要再闭门造车了。

    回复
    0
  • 黄舟

    黄舟2017-05-31 10:35:09

    设计模式是不限于实现方式的,只是一种思想,按照个人喜好即可。
    我本人喜欢用一个静态类(类里面全部是静态方法)处理这种场景

    回复
    0
  • 某草草

    某草草2017-05-31 10:35:09

    怎么方便怎么来

    回复
    0
  • 巴扎黑

    巴扎黑2017-05-31 10:35:09

    看着自己的项目来吧,不要一个项目什么都用,统一跟着项目走。

    回复
    0
  • 取消回复