
Capacities解説- オブジェクトについて
こんにちは。ますだと申します。
今日は、Capacitiesというアプリの、「オブジェクト」という概念について解説していきたいと思います。
(Capacitiesのリンク、タイトル未設定なのどうにかしてほしい)
オブジェクトはCapacitiesの大きな特徴ですが、馴染みのない言葉であるだけにどのようなものなのかイメージしづらいかもしれません。
そこで、今回はできるだけ具体的な内容を交えてイメージしやすいように説明してみました。
よければ最後まで読んでいただき、 Capacitiesに興味を持っていただけると幸いです。
オブジェクトとは
オブジェクトはCapacitiesの基本的な単位です。Capacitiesはアプリ内に保存するものを全て「オブジェクト」として扱います。オブジェクトはオブジェクトタイプ(オブジェクトの種類)を持ち、オブジェクトはそれに必要な情報として、オブジェクトタイプごとに異なるプロパティを持っています。
具体的な説明
この説明ではあまりにも分かりづらいので、もう少し噛み砕いて説明したいと思います。そのためにはまず、一旦Capacitiesから離れて、現実世界でのことを考えてみましょう。
例えば、学校の美術の課題で「印象派の特徴と代表的な画家たち、そして後世への影響」についてレポートを提出する必要があるとします。こんなとき、僕なら以下のような形でノートをいくつかのセクションに分けます。
印象派についての概要
年代
それが起こった場所
画風、特徴
代表的な画家たち
クロード・モネ
エドゥアール・マネ
オーギュスト・ルノワール
エドガー・ドガ
etc...
後世に与えた影響
影響を受けた画家
フィンセント・ファン・ゴッホ
ポール・セザンヌ
ポール・ゴーギャン
パブロ・ピカソ
ジョルジュ・ブラック
与えた影響について自分なりの考察を書く
そして、これらの各項目について調査し、思考を深め自分なりの考えをまとめて一本のレポートに落とし込んでいきます。
このとき、いくつか共通した必要情報がある種類の事柄が繰り返し登場していることにお気づきでしょうか。例えば、上の箇条書きの中で、画家たちは「人」という大きなカテゴリに分類することができそうです。そして、「人」のカテゴリには以下のような情報が含まれるでしょう。
名前
生没年
場所(出生地、主な活動場所)
職業
etc...
このような特定の繰り返しパターンを持つ情報が現れた際に役に立つのが「オブジェクト」です。

オブジェクトの作り方
まずは、オブジェクトの種類(これをオブジェクトタイプを言います)を設定します。今回の場合は、画家たちをまとめたいので、「人」のオブジェクトタイプを作成します。「人」オブジェクトタイプはすでにCapacitiesがあらかじめ作成している基本的なものとして登録されているので、それを使います。

オブジェクトタイプを作成したら、オブジェクトを作っていきます。オブジェクトタイプの画面から新しく作成することもできますが、もっと簡単なのは、今いるページの中で + を入力し、続けて作成したいオブジェクトタイプの名前を入力してEnterキーを押すことです。タイトルが未記入のオブジェクトの画面が表示されるので、必要な情報を記入していきましょう。ここで作成したオブジェクトは、元のページでリンクのついた文字列として表示されています。リンクをクリックすると、作成したオブジェクトを見ることができます。

オブジェクトにすると何がいいか
画家の情報をこれ以降参照しないことがわかっているなら、特段オブジェクトに変換する必要はないかもしれません。一方で、オブジェクトにすると、後々同じデータを使いたくなった時、@ や[[]] で簡単に呼び出すことができます。呼び出したオブジェクトはリンクとしてコンテンツに紐付き、そのリンクを辿って呼び出したオブジェクトに移動することも容易に可能になります。
オブジェクトタイプを作成すると、後々同じような情報で音楽家についても書きたくなった時にもその作成したオブジェクトタイプを活用することができます。
また、オブジェクトを別のページでリンクすると、リンクされたオブジェクトはバックリンクを作成し、オブジェクトのページ内でこれまでどこにリンクされたかを一覧することができます。
つまり、ファイルやフォルダ構造の時のように、必要な情報をどこに置くべきか考えたり、過去に保存した情報を探し回ったりすることなく、必要な時に素早く呼び出し、今の考えに結びつけることができるのです。

まとめ
まとめると、オブジェクトとは、
同じ型を持つ情報のひとまとまり
+コマンドで新しいものを作成でき、@や[[]]で既存のものを呼び出すことができる
リンクと組み合わせることで、情報につながりを素早く持たせられる
という特徴を持っています。これはある種の連想ゲームのようなものであり、実際の人間の脳の働きに似ています。なので、Capacitiesでは異なる知識を結びつけて新しい考えを作り出したり、過去の情報を元に今の事柄について考えることが容易になるのです。
今回は、Cacapacitiesの「オブジェクト」という概念について説明しました。少しでも、Capacitiesを触る人の助けになれば幸いです。
現在Capacitiesのドキュメントの日本語化を進めています。まだ一部のみ翻訳が完了しておりませんが、チュートリアル部分を読むだけでかなりCapacitiesについて理解を深められると思いますので、よければご覧ください。
また、Capacitiesの非公式日本語コミュニティを運営しております。まだまだコンテンツは少ないですが、よければ一緒に盛り上げてくださると幸いです。ご参加お待ちしております。
ここまで読んでくださり、ありがとうございました。