InputMethodKitとTCAを使ったmacOS上で動作するIMEの開発 by Tatsumi0000

iOSDC Japan 2024
採択
2024/08/23 17:40〜
Track A
ルーキーズLT(5分)

InputMethodKitとTCAを使ったmacOS上で動作するIMEの開発

Tatsumi0000

macOS上で動作するIMEを、Appleが公式で提供するInputMethodKitを利用して開発しました。

InputMethodKitでは主に、IMKInputController、IMKCandidates、IMKServerの3つのクラスを使って開発します。実際に開発をする中で、特にロジックが集中するIMKInputControllerのコードが肥大化していき、コードの見通しが悪くなるという問題に直面しました。

そこで、この問題を解決するためにThe Composable Architecture(TCA)を導入しました。

本セッションでは、これらの開発体験をもとに、InputMethodKitでよく使う項目に対しての解説と、UIKit/SwiftUIを使用していないコードに対してどのようにTCAを適用するかを中心に発表します。