-
Notifications
You must be signed in to change notification settings - Fork 206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
整理: _speaker_info()
を MetasStore
へ移植
#1261
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ちょっと相談です!
今までMetas
というのが特にドキュメントなどで範囲指定されておらず、キャラの名前とかスタイル名とか程度の文字情報だけ持ってた形でした。
このPRでアイコン等のリソース情報も抱える形になるのですが、その方針が良いか若干迷ってます!
・・・とはいえ名前くらいかもです。Metaというと文字列やobjectという印象があるくらいなので。
イメージとしては真のCharacterInfoになる感じでしょうか。
あるいはCharacterResource・・・?かCharacterMetaResource・・・?
(イメージ湧いてないだけでどれが良さそうか自分でもわかってない感じです)
1つのクラスが概略情報と詳細情報( ご指摘の通り、Metas というフワフワ概念名が違和感の原因と感じます。 @Hiroshiba |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!!
おそらく @sabonerune さんのリソースURLのPRはこちらの変更に追従しないとかもです。
たぶんMetasStore
(あとあとはCharacterManager?)にresource_managerを渡す感じになるのかなと!
うっ・・・ すみません。。 |
@Hiroshiba |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!!
いくつかこちらで変えさせていただきます!
内容
概要:
_speaker_info()
をMetasStore
へ移植してリファクタリング_speaker_info()
は話者情報取得の様々な処理をおこなっている。これは現在 router 下で定義されているが、本来は router でなくドメインで処理されるべきである。実際、
_speaker_info()
には移植の FIXME がすでに付与されている。話者関連ドメインは
Metas
に集約されており、ここが移植先としてふさわしい。このような背景から、
_speaker_info()
をMetasStore
へ移植してリファクタリングすることを提案します。Review 向け情報
root_dir
廃止と仕様変更本 PR での router
root_dir
引数廃止は事実上仕様変更ではない。以下詳細。MetasStore()
は初期化時にroot_dir / "speaker_info"
を話者ディレクトリとして引数で受け取っている。一方、移植前の段階では router が引数として
root_dir
を受け取り、これを_speaker_info()
定義内から参照してroot_dir / "speaker_info"
パスを生成していた。形式的には
MetasStore
のroot_dir
と router 引数のroot_dir
を個別に設定できる。しかし実際はMetasStore()
も router もgenerate_app()
内でのみ利用されており、同じroot_dir
を利用している。すなわちroot_dir
は事実上共通である。本PR では
_speaker_info
をMetasStore
内に移植する際、_speaker_info()
内の routerroot_dir
参照を廃止してMetasStore
init 側のroot_dir
値を使っている。これは形式的には仕様変更だが、上記の通り、実質的には仕様変更ではない。ゆえに router 引数廃止は無問題である。
関連 Issue
speaker_info
ディレクトリをresources/
へ移動 #1339