关于 PSR-6 和 PSR-16 的问题

2017-05-31 16:01:40 +08:00
 lml12377

既然 PSR-6 早早的被 accepted 之后,为什么还要通过 PSR-16 ?既然通过了 16 这种更 "Simple" 的缓存操作途径,为啥不把 PSR-6 废弃掉。。。

PSR: http://www.php-fig.org/psr/

Symfony Cache 实现: https://github.com/symfony/cache

Symfony PSR-6 和 PSR-16 互转: https://symfony.com/doc/current/components/cache/psr6_psr16_adapters.html

其实我个人感觉把单条记录抽象为 Item 也是件不错的事情,可以针对这个对象做一些事情,比如 get() 在获取到值之后 return 之前,可以 trigger Event 来做一些 filter 操作等等。

所以,我们在实现的时候是都实现,还是有针对性的选择一项实现?

2592 次点击
所在节点    PHP
10 条回复
tabris17
2017-05-31 16:03:29 +08:00
抽象出一个 Item 对象操作起来多一步,不方便呗
lml12377
2017-05-31 16:07:11 +08:00
@tabris17 只是感觉 fig 作为标准组织,本来就是来做制定标准和“统一”这件事情的,虽然我们应该包容多元,这一个 Cache 分两个标准总感觉路子有点野。。。
minbaby
2017-05-31 16:27:07 +08:00
讲道理 psr-6 更 oo 一点,psr-16 更 php 一点
lml12377
2017-05-31 16:42:32 +08:00
@minbaby 确实~
jhdxr
2017-05-31 17:04:32 +08:00
psr 6 定的太细了,库实现的时候几乎没什么自己发挥的余地,而且有些场景并不需要那么高要求的 cache。话说我记得当年因为这个,php-fig 还退了一批人来着。。。
lml12377
2017-05-31 17:47:43 +08:00
@jhdxr 这段历史还真不知道。。
cxbig
2017-05-31 21:42:54 +08:00
也许 Deprecated 只是时间问题,就像 PSR-0 一样。
lml12377
2017-06-01 15:32:56 +08:00
@cxbig 说不定真有可能
cxbig
2017-06-01 16:49:40 +08:00
@lml12377 可能不会被干掉,我问过一个大佬,这两个应该会并存,一个是复杂的实现,一个是简易实现。
他的回复如下:
PSR-6 solves this problem already, but in a rather formal and verbose way for what the most simple use cases need. This simpler approach aims to build a standardized streamlined interface for common cases. It is independent of PSR-6 but has been designed to make compatibility with PSR-6 as straightforward as possible.
lml12377
2017-06-01 17:11:19 +08:00
@cxbig 嗯,这段话在 PSR-16 的 Introduction 也写了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364960

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX