2011-11-07 8 views
7

हम जीडब्ल्यूटी के साथ एक बड़ा उद्यम आवेदन (मॉड्यूल के दर्जनों) का निर्माण कर रहे हैं और यह तय करने की आवश्यकता है कि क्लाइंटबंडल का उपयोग करना है या नहीं। मैं उत्सुक था कि इस तरह के उपयोग के मामले में सौदा निर्माताओं और सौदा ब्रेकर के रूप में स्टैक ओवरफ्लो जीडब्ल्यूटी समुदाय के विचारों को पेशेवर/विपक्ष क्या है।क्लाइंटबंडल का उपयोग बड़े एंटरप्राइज़ एप्लिकेशन में करें?

जहाँ तक हम यह वर्तमान को देखने के रूप में:

पेशेवरों

  • सभी छवियों/सीएसएस फ़ाइलों को अप क्योंकि ऊपर की
  • क्लाइंट लोड तेजी से डाउनलोड करने के लिए सर्वर संसाधनों ले समाप्त हो जाते (यानी इनलाइन छवि यूआरएल)
  • सीएसएस नाम obfuscated हैं, तो नामस्थान टकराव समाप्त कर रहे हैं
  • सीएसएस ऑटो है matically अनुकूलित/सत्यापित
  • अप्रयुक्त सीएसएस वर्गों (ऊपर) समाप्त हो जाते
  • जावा वर्ग के नाम के संदर्भ refactorable सीएसएस इंटरफेस के साथ बदल दिया जाता है
  • UiBinder वर्ग के नाम के संदर्भ refactorable सीएसएस इंटरफेस के साथ बदल दिया जाता है
  • कोई और अधिक बड़ी " main.css "विफल रहता है के रूप में संसाधनों मॉड्यूल बंडल विशिष्ट हैं

विपक्ष

  • रखरखाव सीएसएस के लिए या तो
  • अधिक कदम (जोड़ने वर्ग) की तरह बुनियादी सीएसएस काम के लिए आवश्यक
  • सभी devs सुलझा मोड में पढ़ने योग्य नहीं है, या डिबग मोड में अत्यंत वर्बोज़ हो जाता है पता होना चाहिए जावा, सीएसएस, एचटीएमएल का बारिकी से
  • CSS3 और अन्य नियमों (यानी @ फॉन्ट-फेस) GWT द्वारा समर्थित नहीं हैं मूल रूप
  • वृद्धि संकलन बार

धन्यवाद!

उत्तर

8

मैं m-gwt में क्लाइंट बंडल का भारी उपयोग कर रहा हूं।

एक चीज जो मुझे परेशान कर रही थी वह उन डिवाइसों के लिए स्टाइल था जो देव मोड नहीं थे। तो स्टाइल का मतलब पूरे ऐप को फिर से तैयार करना हो सकता है।

अधिकतर सभी CSS3 नियमों का उपयोग क्लाइंटबंडल में शाब्दिक कार्य का उपयोग करके किया जा सकता है, ताकि यह ठीक हो। @media प्रश्नों के साथ यह थोड़ा चालक हो जाता है। आप सीएसएस को एक सरल पाठ के रूप में एक सरल पाठ के रूप में इंजेक्ट कर सकते हैं, लेकिन इसकी तरह बदसूरत है।

आप कई gwt मॉड्यूल के बारे में बात कर रहे हैं जब एक से अधिक clientbundles का उपयोग कर ताकि आप अभी भी विभाजन अंक उपयोग कर सकते हैं नियंत्रण में डाउनलोड फ़ाइल आकार रखने के लिए विचार करते हैं,

मैं का इस्तेमाल किया है (कितना बड़ा अपने .js फ़ाइलें प्राप्त के आधार पर) क्लाइंटबंडल कई बड़े gwt ऐप्स में और मेरे लिए संकलन समय की जांच और पुन: उपयोग करने के लिए समर्थन करता है जो अभी भी क्लाइंट बंडलों में मौजूद छोटे quirks को धड़कता है।

+0

धन्यवाद डैनियल! वह मेरी आशा भी थी। वर्तमान में पेशेवर विपक्ष से अधिक लगते हैं। मुझे आशा है कि हर किसी के पास आपके जैसा ही अनुभव होगा और बहुत सारे विपक्ष नहीं हैं। –

2

सिर्फ दो अतिरिक्त नोट्स:

  • एक utility GWT में उपलब्ध जो अपने आप आपके CSSResources के लिए इंटरफेस बनाने की अनुमति देता है
  • यह सच है कि डिबगिंग शैलियों क्योंकि समझ से परे का एक छोटा सा बोझिल हो सकता है नाम। मुझे सीधे ब्राउज़र में देव मोड में शैलियों को बदलने के लिए फायरबग का उपयोग करके अच्छी सफलता मिली और जब मैं संतुष्ट हूं तो मैं उन्हें अपने जीडब्ल्यूटी ऐप में बदलता हूं।
+0

धन्यवाद टाइमू। मैंने पाया कि उपयोगिता और यह काफी आसान है। शायद अगर यह उन इंटरफेस बनाने के लिए पूरी तरह से स्वचालित हो सकता है और उन यूआई.एक्सएमएल फाइलों को दोबारा इस्तेमाल कर सकता है ... तो हमारे यूआई लोगों को कक्षा परिवर्तन के लिए आधा दर्जन फाइलों को संपादित करने की आवश्यकता नहीं होगी। –

संबंधित मुद्दे