アプリ内で扱う本質的なオブジェクトは1つであるべき
public.icon
チーム内で話したことのメモ。
機能追加を続けると破綻するの1パターンとして、アプリ内で扱うオブジェクトが増えすぎるというのがある。オブジェクトという呼び方はOOUIでの呼び方を借りた。ここでの意味はユーザーが触れる対象の概念のこと。クラスと読んだほうがいいのかな。
イデアかも。
壁に写った像が複数重なると何か分からない
どんどんオブジェクトを増やすとどうなるか
ユーザビリティが悪くなる
検証の結果やKPIに影響する変数が増えてしまい、何が悪いのか何が良かったのか見えづらくなる
開発スピードが落ちる
メンテナンスするコードが増える
スマホUIにおいて関係ないオブジェクトが複数あるとアプリランチャー(OS)を作らないといけなくなる
本質的なオブジェクトが一つ(メインオブジェクト)のアプリはユーザービリティが良い
Instagram
フィード投稿、Reel、ストーリーズ、ショッピングなど機能が散らかってるように見える
しかし本質のオブジェクトは"投稿"の一つだけ
データの形によってビューを切り替えてるだけ(実際の実装は置いといて概念的には)
ただ、DMだけは別になってるので正確には2つ
Spotify
本質的なオブジェクトは"音声"
ポッドキャストか音楽かでビューを切り替えている
オブジェクト自体は音声以外にも"曲のまとまり(アルバムやプレイリスト)"や"ユーザー"などがあるが、どれもオブジェクトのプロパティから派生したもの
本質的なオブジェクトが沢山あるアプリ(=スーパーアプリ)は設計が難しい
LINE
オブジェクトが沢山あるアプリの代表格
既にLINEはスーパーアプリの領域
本質的なオブジェクト
メッセージ
ニュース記事
タイムライン投稿
LINEPay残高
etc...
たくさんの概念が一つのアプリに詰め込まれているのでユーザビリティが悪くなりがち
「スタンプってどこから買うんだっけ...」
「LINEPayの残高追加ってどこからするんだっけ...」
「この検索窓って何が検索できるんだろう...」
ここまでクラスが増えてくるとOSのアプリランチャーの役割を担わなければいけなくなる
https://gyazo.com/19d6d7a535fa9e5b61aff2f8acfe6382
出典:LINE
実現するにはこれを分かった人が経営の意思決定レイヤーに居る必要がある...
「商売はシンプルにやるべき。シンプルであればあるほど強く、柔軟で、スケーラブル」
「シード期だし、もっとシンプルに仮説検証しよう」
「複雑なこと、複数のことをやるのをやめよう」
しか言ってない、朝一リモート会議。複雑は悪
— 有安 伸宏 / 起業家・エンジェル投資家 (@ariyasu) April 27, 2021
抽象化すればどんどん扱えるものが増えていく。どこまで抽象化するか?
初期フェーズでは具体的なメインオブジェクトで運用する。
グロースしてきたらメインオブジェクトを抽象的にして扱えるモノの範囲を広げる
例:Instagram
初期のメインオブジェクト:写真
最近:ユーザー投稿
例:Spotify
初期:音楽
最近:音声
写真とか音声みたいにデータっぽいオブジェクトじゃなくても良い
例:YAMAP
オブジェクト:山
#UI