【问题标题】:Repository pattern with Laravel 5Laravel 5 的存储库模式
【发布时间】:2016-12-13 14:54:39
【问题描述】:

我在 app/Repositories 中创建了几个 Repositories 类,例如 SeriesRepositoryCommentRepository 等。我这样做的想法是抽象数据库调用,因此我可以使用 Eloquent 或查询构建器,甚至可以使用原始 SQL,而无需更改代码中数千个位置的查询。

由于我将这个项目作为开源发布,我决定为每个存储库添加一个接口。这样,任何可能使用该项目的人都可以创建自己的特定存储库版本并实现接口。这是矫枉过正吗?这只是过度设计吗?我应该跳过接口吗?

【问题讨论】:

    标签: php design-patterns laravel-5 repository-pattern


    【解决方案1】:

    作为最佳做法,建议为接口编写代码,特别是针对可扩展项目。您可能有兴趣查看以下 Laravel 存储库包,了解已完成的大部分工作并以您需要的方式进行抽象:https://github.com/rinvex/repository

    它是一个简单、直观和智能的 Active Repository 实现,具有极其灵活和细粒度的 Laravel 缓存系统,用于抽象数据层,使应用程序更易于维护。下图简要说明了它的工作原理:

    【讨论】:

    • 这条评论完美地解释了它。非常感谢小费和很棒的包裹。我一定会用的。
    猜你喜欢
    • 2014-03-05
    • 2014-03-15
    • 2014-09-19
    • 2015-01-22
    • 1970-01-01
    • 2017-04-09
    • 2016-02-11
    • 1970-01-01
    • 2016-02-12
    相关资源
    最近更新 更多