freks blog

about

GraphQLのメンタルモデル

created: 2024-09-12
おすすめ記事: 出会ってよかったプログラマー本

Shopify appをつくっていて、GraphQLを使っていて使い方がRESTで使う時と違ったので整理

Thinking in Graphs | GraphQL にある

Business Logic Layer

のようにGraphQLはRootコンポーネント(一番上)でデータを取る思想のようです

Lee Byron - Exploring GraphQL at react-europe 2015 | YouTube が参考になります

React(JSX) + GraphQLで考えてみると

{
  me {
    name
    age
    profilePicture {
      url
    }
    events {
      title
      date
    }
  }
}

とかのQueryを投げてデータを受け取れば

function Me({ name, age }) {
  return (
    <div>
      <h1>{name}</h1>
      <p>{age}</p>
    </div>
  );
}

function ProfilePicture({ url }) {
  return <img src={url} />;
}

function Event({ title, date }) {
  return (
    <div>
      <h2>{title}</h2>
      <p>{date}</p>
    </div>
  );
}

のようにコンポーネントを作ってデータを表示できると考えるとよさそうです

RESTだと ProfilePicture コンポーネントでAPI叩いてデータ取ったりもできますが、やらない思想だと思います

まとめ

まだ、あまり自信ないところです
GraphQLさわってはいましたが、ちゃんとドキュメントを読んだ方がよさそうです

PR

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

このリンクは、アフィリエイトリンクです


Amazonのアソシエイトとして、blog.freks.jp は適格販売により収入を得ています。
This site is managed by freks