1

我的模型很少,我已经在每个沙盒项目中实施了一段时间,这让我开始思考。少数几个具有恒定实现的模型之间有什么区别?我自己的库,理论上会包含相同的文件。

问题#1:少数模型对象和库中的相同对象之间的执行时间和页面加载有什么区别吗?

问题 #2:为什么我应该使用库而不是少数模型(反之亦然)?

问题#3:如果这两者没有任何区别,我应该创建自己的库只是为了更容易实现作曲家还是某种带有模型的自定义沙箱 git rep 是更好的选择?

4

2 回答 2

2
  1. 它不是或可以忽略不计。您的课程必须始终包括在内。它们是否包含在 composer autoload 或 nette RobotLoader 中并不重要。
  2. 如果特定功能可以帮助其他人,您可以通过创建库来帮助他人。如果它对您的应用程序过于具体,请直接在应用程序中使用 libs 目录或其他内容,如果需要,您可以在以后更轻松地更改功能。
  3. 我会说两者。创建和维护沙箱比许多项目共享的 lib 容易得多。例如,使用 lib,您需要保持向后兼容性。此外,如果您有许多不相关的类,那么从它们创建一个库也没有多大意义。Reather 创建了更多实现特定功能的库。例如,将包含您的 LogModel 的日志记录类。但在你开始之前,如果已经没有你需要的 lib,请尝试搜索 packagegist。对于日志记录,Monolog 可能很有用。你的日历类是图书馆的好人选。
于 2016-08-19T22:24:32.173 回答
1

即使我不完全了解您的情况,我也会尽力回答:

1)不是真的,它是类自动加载,无论它位于何处

2) 当您发现某些类具有共同含义时,我建议将代码移至库,可以将其抽象到某个目录,例如

  • 文件管理器
  • 图像调整器
  • 访问控制列表
  • 内容管理系统
  • ...

3)如果您的代码稳定且一致(= 在应用程序中没有更改),我会选择打包。如果您必须自定义它,我会为每个应用程序保留它。

这一切都取决于您的特定课程。最好的办法是查看整个项目和您遇到的问题。

于 2016-08-19T22:27:45.893 回答