見るべきは今年のWWDCではない? 技術的負債解消のヒント
──技術的な負債の解消について、課題はありましたか?
佐藤:元々RestKitという高機能なライブラリーがあり、初期バージョンから使っていました。それがObjective-Cで書かれていたのですが、Swift化を進めていく中でObjective-Cに依存する部分が残っているとSwiftのメリットを最大限生かせないので、結構前からSwiftの内製ライブラリに置き換えていきました。また、RestKitはあまりメンテされてないこともリスクに感じていました。
なのでRestKit脱却の必要性は感じていたのですが、あらゆるところで使われていたのでなかなか進められず、そこで業務委託という形で入社前の市川に手伝ってもらいました。
市川:ユーザーさんの予定にも影響があるので、とても慎重に作業していました。ユーザーさんやデータの数が多く、影響範囲が広いので。
荒木:ユーザーさんのなかには月に数百から千件もの予定を抱えている人もいます。次第にデータが蓄積して「重い」と苦情があり、現在表示している画面だけ描画する処理に変えるなど改善してきました。
──となると、Appleの発信内容に注目ですね! 直近だとWWDCもありましたが、注目しているところはありますか?
佐藤:やはりSwift 6となりConcurrently周辺でパラダイムシフトが起きていることです。Appleも段階的に移行できるようにしているので、なるべく追従できるようにと考えています。
荒木:個人的には新しいテストフレームワーク「Swift Testing」が気になっています。簡潔に書けるようになるので、今後は主流になるかと思います。あと今年はVision Proがすごく話題でした。TimeTreeはARアプリではありませんが、最低限動くようにして、Vision Proの理解も深めていこうと考えています。iPadなど互換モードで動く他のデバイスもキャッチアップする必要があると肝に銘じています。
──WWDCはライブで見ていますか?
佐藤:キーノートをライブで見る人はSlackチャンネルで盛り上がっていたりします。翌日のエンジニア向けセッション「Platforms State of the Union」はiOSチームみんなで見ています。
荒木:ブレイクアウトセッションだとみんなで同じものをみるのではなくNotionで「見たリスト」を作り、サマリーを作成したり、朝会で共有したりします。
佐藤:最新のWWDCウォッチも大事ですが、最新機能は最新OSでしか動かないので、逆に数年前にリリースされた最低サポートバージョンから利用できる機能も重要です。しかし数年前だとみんな覚えていないので、市川が主導してiOS16の新機能を持ち回りで共有しています。いい取り組みだと思います。