मैं एक गैर-आवेदनकारी अनुप्रयोग पर विकास शुरू कर रहा हूं जिसके लिए हम ग्राफQL पर विचार कर रहे हैं। हमारी स्कीमा के शुरुआती मसौदे पर काम करते समय, मैं नामकरण सम्मेलनों को स्थापित करने की कोशिश कर थोड़ा लकवा बन गया हूं जो उत्पाद परिपक्व होने के पैमाने पर स्केल करेगा।कुछ ग्राफिकल स्कीमा नामकरण सर्वोत्तम प्रथाओं क्या हैं?
यह आम तौर पर उपयोगी/मुहावरेदार नाम पर नाम "इंटरफेस" रखने के लिए है: मैं वास्तव में, जो एक स्कीमा बढ़ने और में चलाने के लिए था या सफलतापूर्वक से परहेज किया है मृत समाप्त होता है या विसंगतियों किसी से कुछ जानकारी की सराहना करेंगे एक इंटरफ़ेस का? उदाहरण के लिए,
Profile
याProfileInterface
एक बड़े ऐप में बेहतर होगा?interface ProfileInterface { # fields here... } type UserProfile implements ProfileInterface { # implemented fields here... }
क्या एकल-enum मानों को "स्थिरांक" के रूप में निर्दिष्ट करना आम है?
enum GeoJSONFeatureTypeConstant { feature } interface GeoJSONFeatureInterface { id: ID type: GeoJSONFeatureTypeConstant! geometry: GeoJSONGeometryInterface! properties: GeoJSONProperties }
यह सब या कुछ भी नहीं
scalar
याtype
रूपobject
रों घोषित करने के लिए सबसे अच्छा अभ्यास है, और जहां लाइन दोनों के बीच तैयार की गई है? एकPoint
प्रकार की कल्पना करें जिसे आमतौर पर सरणी[x,y]
के रूप में दर्शाया जाएगा; जो अधिक मूर्खतापूर्ण होगा?scalar Point type Point { x: Float y: Float }
- किसी भी अन्य सर्वोत्तम प्रथाओं विशेष रूप से GraphQL में सम्मेलनों या प्रकार घोषणाओं है कि अनुभव के बिना पता करने के लिए मुश्किल होगा नामकरण से संबंधित।
अग्रिम धन्यवाद!
यह सवाल गति मैं इसे पसंद किया है | प्राप्त नहीं हुआ है, इसलिए मुझे लगता है मैं उन्हें खोजने के रूप में उपयोगी टुकड़े, जो एक तरह के एक जवाब में विकसित हो सकता है पोस्ट करने के लिए जा रहा हूँ।
अंत पर इनपुट के साथ इनपुट प्रकार का नामकरण एक उपयोगी सम्मेलन, है क्योंकि आप अक्सर दोनों एक इनपुट प्रकार और एक आउटपुट प्रकार है कि एक भी वैचारिक वस्तु के लिए थोड़े अलग हैं चाहते हैं।
http://graphql.org/graphql-js/mutations-and-input-types/
ये बहुत अच्छे हैं, और आपका लिंक सही है। धन्यवाद। –