البرمجة

GraphQL مقابل REST API

12 ديسمبر 202511 دقائق قراءة
GraphQL مقابل REST API

مقارنة بين GraphQL و REST وكيفية اختيار الأنسب لمشروعك.

ما هو GraphQL؟

GraphQL لغة استعلام للـ API. العميل يحدد بالضبط البيانات المطلوبة. حل Over-fetching وUnder-fetching.

مقارنة

// REST - طلبات متعددة
GET /users/1
GET /users/1/posts
GET /users/1/followers

// GraphQL - طلب واحد
query {
  user(id: 1) {
    name
    posts { title }
    followers { name }
  }
}

إعداد Apollo Server

const { ApolloServer, gql } = require('apollo-server');

const typeDefs = gql`
  type User {
    id: ID!
    name: String!
    email: String!
  }
  type Query {
    users: [User]
    user(id: ID!): User
  }
`;

const resolvers = {
  Query: {
    users: () => db.getUsers(),
    user: (_, { id }) => db.getUser(id)
  }
};

متى تختار ماذا؟

REST: APIs بسيطة، caching سهل. GraphQL: بيانات معقدة ومترابطة، تطبيقات موبايل.

الخلاصة

GraphQL ليس بديلاً لـ REST بل خيار مختلف. اختر بناءً على احتياجات مشروعك.

الوسوم

#GraphQL#REST#API#Backend#Apollo

مقالات ذات صلة