Skip to content

リファクタリング: GENERATE_AUDIO関数を切り出して共通化する #2130

@Hiroshiba

Description

@Hiroshiba

内容

音声ファイル(とlabファイル+txtファイル)を書き出す経路は3つあるのですが、そのうち2つは共通化されている一方で残り1つは共通化されていません。
なので重複コードがいくつかあります。
その重複コード部分をなくして一本化するのがこのリファクタリングの目的です。

Pros 良くなる点

コーディングしやすくなる

実現方法

書き出し経路3つは次の関数です。

それぞれ上から順に、1つ保存、全部保存、つなげて書き出しと対応しています。
上2つは共通化されていますが、3つ目はつなげる部分があって独立してしまっています。

共通化の方法としては、別途ファイルを作るだけの関数GENERATE_AUDIOを用意し、あとは3つの関数がその関数を叩いてから保存や接続処理を実行すればいいのかなと。
多分GENERATE_AUDIOの型はこんな感じがいいはず?

  GENERATE_AUDIO: {
    action(payload: { audioKey: AudioKey }): Result<
      {
        audio: Blob;
        lab: string;
        text: string;
      },
      "engine"
    >;
  };

(Result型を使っています)

その他

初心者歓迎タスクラベルをつけています!
関数切り出しするだけですが、Vuexが絡んで少しだけ難しい感じになってます。
質問等あれば何でも聞いてください!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions