এগুলো হলো তিনটি operation type, যার প্রতিটি schema-এর একটি root type-এর সাথে সংযুক্ত:
এগুলো হলো তিনটি operation type, যার প্রতিটি schema-এর একটি root type-এর সাথে সংযুক্ত:
query GetPost { # read
post(id: "1") { title }
}
mutation AddComment { # write; returns the created object so the client updates its cache
addComment(postId: "1", text: "Nice!") {
id
text
}
}
subscription OnComment { # live: fires every time a comment is added
commentAdded(postId: "1") {
id
text
}
}
Mutation argument নেয় (প্রায়ই একটি input object) এবং প্রভাবিত data ফেরত দেওয়া উচিত যাতে client দ্বিতীয় request ছাড়াই refresh করতে পারে। ক্রমানুসারে চলার নিয়মটি গুরুত্বপূর্ণ: এক document-এ দুটি mutation — deposit তারপর withdraw — সবসময় ঐ ক্রমেই চলে, অথচ দুটি query field একসাথে (concurrently) resolve হতে পারে।
Interviewer-রা যাচাই করেন আপনি জানেন কিনা যে query সমান্তরাল ও side-effect-মুক্ত, আর mutation ক্রমানুসারে চলে, এবং subscription-এর জন্য একটি stateful transport (WebSocket/SSE) প্রয়োজন। Mutation থেকে updated data ফেরত দেওয়াই সেই ব্যবহারিক খুঁটিনাটি যা GraphQL বাস্তবে ব্যবহার করা মানুষকে কেবল পড়ে জানা মানুষের থেকে আলাদা করে।
বিস্তারিত উত্তরসহ IT ইন্টারভিউ প্রশ্নের একটি লাইব্রেরি — জুনিয়র থেকে সিনিয়র পর্যন্ত।
দান করুন