こんにちは。コミュニケーションアプリ「LINE」のモバイルクライアントを開発している石川です。 この記事は、毎週木曜の定期連載 “Weekly Report” 共有の第 19 回です。Weekly Report については、第 1 回の記事を参照してください。 チャイルドロック メッセージのデータモデルとして、MessageData という抽象クラスがあるとします。メッセージにはいくつかの種類があり、その種類を MessageData の子クラスを定義することで表現しているとしましょう。 ここで、MessageData の子クラス T のリスト List<T> を画面に表示するため、以下のような抽象クラス MessageListPresenter<T : MessageData> が定義されたとします。ただし、メッセージの表示ロジックはその種類で変わるため、MessageListPrese