ホームページ  >  記事  >  バックエンド開発  >  PSR6 合理性の議論

PSR6 合理性の議論

WBOY
WBOYオリジナル
2016-08-08 09:06:50947ブラウズ

今実装を書こうとしていますPSR-6

私が実装していたとき

は、キャッシュ項目の有効期限を取得する方法がなく、キャッシュ ストレージにデータを正しく書き込む方法もありませんでした。 CacheItemPoolInterface接口时,对于save方法感到困惑,save方法只接收一个CacheItemInterface类型的参数,但是CacheItemInterface这个接口却没有提供类似getExpireTime的方法,这就导致CacheItemPoolInterface

symfony/cache php-cache/cache tedious/Stash など、いくつかのよく知られた

実装を見てきましたが、これらの実装バージョンは、save メソッドを実装する際にはあまり洗練されていません。 PSR-6实现,例如 symfony/cache php-cache/cache tedious/Stash 然而这些实现版本在实现save

例えば

symfony/cache リーリー

これ

save方法只有传入SymfonyComponentCacheCacheItem类型的参数才可以,传入其他类型都会返回false

現状では、キャッシュを使用するクラス ライブラリを作成したい場合は、psr/cache だけでなく、特定の

実装を依存関係として指定する必要があります。一方、ログ インターフェイス PSR-3 を見ると、ログ機能を必要とするクラス ライブラリを作成したい場合は、psr/log を導入するだけで済みます。特別な実装は必要ありません。 PSR-6实现作为依赖,而不仅仅是psr/cache。而反观PSR-3这个日志接口,要写一个需要日志功能的类库,只需要引入psr/log

私の意見では、

CacheItemInterface インターフェイスは必要ありません。save メソッドを save($key, $value, $) に変更するだけで済みます。 expire_at)以上です。 <code>PSR-6并不需要CacheItemInterface这个接口,只需要把save方法修改成save($key, $value, $expire_at)

packagist でキャッシュを検索し、また doctrine/cache sonata-project/cache illuminate/cacheなどの他のよく知られたキャッシュ ライブラリを検索しました。 >など、彼らはそれに従うことを選択したわけではありません

、それはこのような考慮のためであるはずですdoctrine/cache sonata-project/cache illuminate/cache等,都没有选择遵循PSR-6

返信内容:

今実装を書こうとしています

PSR-6私が実装していたとき

は、キャッシュ項目の有効期限を取得する方法がなく、キャッシュ ストレージにデータを正しく書き込む方法もありませんでした。

CacheItemPoolInterface接口时,对于save方法感到困惑,save方法只接收一个CacheItemInterface类型的参数,但是CacheItemInterface这个接口却没有提供类似getExpireTime的方法,这就导致CacheItemPoolInterfacesymfony/cache php-cache/cache tedious/Stash など、いくつかのよく知られた

実装を見てきましたが、これらの実装バージョンは、save メソッドを実装する際にはあまり洗練されていません。

PSR-6实现,例如 symfony/cache php-cache/cache tedious/Stash 然而这些实现版本在实现save例えば

リーリー symfony/cacheこれ

save方法只有传入SymfonyComponentCacheCacheItem类型的参数才可以,传入其他类型都会返回false現状では、キャッシュを使用するクラス ライブラリを作成したい場合は、psr/cache だけでなく、特定の

実装を依存関係として指定する必要があります。一方、ログ インターフェイス PSR-3 を見ると、ログ機能を必要とするクラス ライブラリを作成したい場合は、psr/log を導入するだけで済みます。特別な実装は必要ありません。

PSR-6实现作为依赖,而不仅仅是psr/cache。而反观PSR-3这个日志接口,要写一个需要日志功能的类库,只需要引入psr/log私の意見では、

CacheItemInterface インターフェイスは必要ありません。save メソッドを save($key, $value, $) に変更するだけで済みます。 expire_at)以上です。 <p> <code>PSR-6并不需要CacheItemInterface这个接口,只需要把save方法修改成save($key, $value, $expire_at)packagist でキャッシュを検索し、また doctrine/cache sonata-project/cache illuminate/cacheなどの他のよく知られたキャッシュ ライブラリを検索しました。 >など、彼らはそれに従うことを選択したわけではありません

、それはこのような考慮のためであるはずです

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。