Ruby on Rails

GraphQL กับ Rails

graphql-ruby gem, types, queries, mutations, resolvers, N+1 queries, batching

20 คำถามสัมภาษณ์·
Senior
1

gem ใดที่ใช้กันมากที่สุดในการนำ GraphQL มาใช้ในแอปพลิเคชัน Rails?

คำตอบ

gem graphql-ruby (มักเรียกสั้น ๆ ว่า graphql) เป็นโซลูชันมาตรฐานสำหรับการนำ GraphQL มาใช้ใน Rails มันมอบ Ruby DSL ที่สื่อความหมายได้ดีสำหรับการกำหนด types, queries และ mutations รวมถึงการผสานรวมกับ Rails แบบ native ผ่าน routes และ controllers ดูแลรักษาอย่างต่อเนื่องโดย Robert Mosolgo และถูกใช้งานโดยบริษัทอย่าง GitHub และ Shopify ในระบบ production

2

จะกำหนด Object type ใน graphql-ruby เพื่อแทนโมเดล User ได้อย่างไร?

คำตอบ

Object type ใน graphql-ruby สืบทอดจาก Types::BaseObject และเปิดเผยฟิลด์ผ่านเมธอด field แต่ละฟิลด์ระบุชื่อ ชนิด GraphQL (String, Int, ID เป็นต้น) และความเป็น nullable ของมัน แนวทางแบบ declarative นี้ช่วยให้ควบคุมได้อย่างแม่นยำว่าข้อมูลใดของโมเดลถูกเปิดเผยผ่าน GraphQL API ทำให้มีการแยกที่ชัดเจนระหว่างโมเดล ActiveRecord กับการแสดงผลแบบ GraphQL ของมัน

3

ความแตกต่างหลักระหว่าง Query และ Mutation ใน GraphQL คืออะไร?

คำตอบ

Queries ใช้สำหรับอ่านข้อมูล (การดำเนินการแบบ GET) ในขณะที่ Mutations ใช้สำหรับแก้ไขข้อมูล (สร้าง อัปเดต ลบ) ตามแบบแผนของ GraphQL queries เป็น idempotent และสามารถทำงานแบบขนานได้ ในขณะที่ mutations จะทำงานตามลำดับเพื่อรับประกันลำดับของผลข้างเคียง การแยกแยะนี้เป็นพื้นฐานสำคัญสำหรับ GraphQL API ที่ออกแบบมาอย่างดี

4

จะประกาศฟิลด์ที่มี arguments ใน Query type ของ graphql-ruby ได้อย่างไร?

5

ปัญหาด้านประสิทธิภาพที่สำคัญใดที่มักเกิดขึ้นบ่อยกับ GraphQL และ association ของ ActiveRecord?

+17 คำถามสัมภาษณ์

หัวข้อสัมภาษณ์ Ruby on Rails อื่นๆ

พื้นฐาน Ruby

Junior
25 คำถาม

การเขียนโปรแกรมเชิงวัตถุใน Ruby

Junior
20 คำถาม

พื้นฐาน Rails

Junior
18 คำถาม

Routing & Controllers

Junior
22 คำถาม

พื้นฐาน ActiveRecord

Junior
25 คำถาม

Views และ ERB Templates

Junior
20 คำถาม

การเชื่อมโยงของ ActiveRecord

Mid-Level
24 คำถาม

การสอบถาม ActiveRecord ขั้นสูง

Mid-Level
28 คำถาม

ฟอร์ม Rails

Mid-Level
20 คำถาม

การยืนยันตัวตนและการอนุญาต

Mid-Level
22 คำถาม

Asset Pipeline สมัยใหม่และ frontend

Mid-Level
18 คำถาม

โหมด API ของ Rails

Mid-Level
20 คำถาม

การทดสอบด้วย RSpec

Mid-Level
24 คำถาม

ActiveJob & Background Jobs

Mid-Level
20 คำถาม

ActionCable & WebSockets

Mid-Level
18 คำถาม

ActionMailer

Mid-Level
18 คำถาม

ActiveStorage

Mid-Level
20 คำถาม

กลยุทธ์การ Caching

Mid-Level
20 คำถาม

การ Migration ขั้นสูง

Mid-Level
20 คำถาม

Rails Engines และแอปแบบโมดูลาร์

Senior
18 คำถาม

การเพิ่มประสิทธิภาพการทำงาน

Senior
26 คำถาม

Design Patterns ใน Rails

Senior
22 คำถาม

เมตาโปรแกรมมิงใน Ruby

Senior
20 คำถาม

ความปลอดภัยของ Rails

Senior
22 คำถาม

การดีพลอยและโปรดักชัน

Senior
20 คำถาม

Monitoring & Logging

Senior
20 คำถาม

กลยุทธ์การอัปเกรด Rails

Senior
18 คำถาม

เชี่ยวชาญ Ruby on Rails สำหรับการสัมภาษณ์ครั้งถัดไป

เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี