Kotlin sealed classを用いた、ユーザーターゲティングDSL(専用言語)と実環境で秒間1,000万評価を行う処理系の事例紹介 by Kazuki Matsuda, 松田一樹

Kotlin Fest 2024
採択
ショート(20分)
Kotlin言語・プログラミング 中級者

Kotlin sealed classを用いた、ユーザーターゲティングDSL(専用言語)と実環境で秒間1,000万評価を行う処理系の事例紹介

kazuki_matsuda Kazuki Matsuda, 松田一樹 kazuki_matsuda
11

サービスの体験をパーソナライズし、興味のあるコンテンツを楽しんで貰うためには、
各種クリエイティブ(バナー・ポップアップ等)のターゲティング(by 年代、性別、OS、etc)が欠かせません。

最初は個別に実装する事が多いですが、露出面nとターゲティング条件mが増えた場合、O(n x m) の実装・メンテナンスコストがかかってしまい、共通化が必要となります。

今回の発表は、新規作成された共通化Platform上における課題:『マーケターを初めとする全社員が、ユーザーの条件やその AND/OR/NOT の任意の組み合わせによるターゲティングを可能とする』を、
Kotlin で実装した YAML ベースのユーザーターゲティングDSL(独自言語)とその処理系によって解決した事例の紹介となります。

安定的な拡張を行うためにKotlinの型が果たす役割についても取り上げます。