سؤال

لدي مشروع يقوم فيه عميلي بطلب مني استخدام Portlets 1.0 Spec و WebSphere Portal Server 6.0. لم أعمل مع الملاطات من قبل ولكن ما سمعت به دائما كندا سيئا. ما هي الأسباب إلى جانب الواضح عن استخدامها؟ إن لم تكن أسباب، ما هي الحجج التي يمكنني استخدامها لتجنبها؟

هل كانت مفيدة؟

المحلول

تذكرني المشاكل التي لدي معها مع نفس المشكلات مثل EJBS-

  • تطلب منك المداخل كتابة رمز خاص لا يمكن استضافتها فقط وتشغيلها في خادم خاص؛
  • يحتوي كل بائع خادم المدخل على امتدادات مخصصة / تكوينات / قدرات إضافية لذلك فهي ليست تافهة لتغيير بائعي الخادم؛
  • يبدو أن المداخل مجمع للغاية لتغطية الوظائف التي لا تحتاجها 90٪ من الأشخاص الذين يريدون استخدامها

أود أن أقترح شيئا مثل Google Gactgets. كما السبات إلى Portlet's EJB -

  • JavaScript Framework - يمكن كتابة قطع جانب الخادم بأي لغة، مستضافة على أي خادم.
  • أبسط لاستخدامها
  • الكثير من خوادم البوابة تدعمها، وهي أكثر قابلية للسيارة عبر البائعين لأنها ليست معقدة، وهي ليست مواصفات للبائعين لتنفيذ (وتمتد)

نصائح أخرى

نظرا لأن شخصا لديه العديد من الوظائف (بما في ذلك صحتي الحالية) وضع مدخلات جافا، أود أن أقول لا تستخدمها.

إليك المشكلة:

إذا كنت ترغب فقط في استخدام الوظيفة الموجودة مسبقا للمدخل، فأنت تختارها، ثم استخدم بوابة.

إذا كان استخدامك للمدخلات فقط لبناء لوحة معلومات صغيرة، خفيفة، في المقام الأول للقراءة فقط للقراءة القائمة على الويب حيث يمكنك إلقاء نظرة سريعة على معلومات متباينة، فلا بأس بذلك.

ولكن إذا كنت (أو أكثر احتمالا لأعلى شخص ما على مخطط ORG) يفكر في المداخل كوسيلة لوضع مجموعة من تطبيقات الويب المختلفة على صفحة ولديها كل شيء "مجرد عمل"، ثم تتجه إلى عالم من الأذى وبعد البلاط هي جزر وظائف ذاتية محظورة للغاية، وليس تطبيقات الويب في المربعات الصغيرة على الصفحة.

لقد اتخذ كل واحد من الوظائف القائمة على المدخر هذا الخطأ، ولا يوجد ضوء في نهاية النفق. كمطور مدخل، إليك قائمة صغيرة من الأشياء التي اعتدت عليها في القيام به في تطبيقات الويب العادية، والتي لا يمكنك القيام بها بشكل موثوق في المداخل:

  • توليد عناوين URL إلى صفحات أخرى. ستحتاج إلى وسيلة خاصة بخصوصي للقيام بذلك، نظرا لأن Portlet API يتيح لك فقط إنشاء عناوين URL تستهدف المدخل الذي ولدتهم.
  • اقرأ وتعيين رؤوس HTTP أو تعيين رمز استجابة HTTP (لذلك لا توجد إعادة توجيه أو تخزين مؤقت HTTP، لأنك لا تملك الصفحة سيتم وضع صفحاتك
  • الاضطرار إلى مساحة الاسم جميع المعرفات في الصفحة التي تم إنشاؤها. هذا يعني سمات معرف HTML وأسماء لوظائف JavaScript. نظرا لأن مساحة الاسم يجب تحديدها في وقت التشغيل لضمان التفرد، فلا يمكنك إقامة وظائف JavaScript هذه موجودة في ملف مخزن مؤقت للمتصفح منفصل يجب أن تكون في جسم الاستجابة لمدخلك.

تشعر المداخل كما لو كانت مصممة لدولة تطوير الويب كما كانت في منتصف إلى أواخر التسعينيات (ما قبل اجاكس). لكنهم غير مناسبين لبيئات تطوير الويب اليوم (AJAX، تطبيقات الويب الغنية بالأحرار، إلخ) التي تفترض أن لديك سيطرة كاملة على دورة الطلب / الاستجابة.

الملاطات جذابة للعمل بسبب وعد المرونة، أنت تسمح للعملاء بالقرص وإعادة ترتيب مكونات على الصفحة، وإذا كنت تخدم المحتوى في المقام الأول، فهي وسيلة فعالة للقيام بذلك.

في مباني الرأي، تكون بوابات الرأي مناسبة تماما للمداخلات التجميعية إما محتوى نقي، مستقل وظيفيا أو ذات الصلة ببساطة (على سبيل المثال عند اختيار عنصر من قائمة في مدخل واحد، يمكنك تحديث آخر لإظهار التفاصيل). يمكن للمستندات أيضا تمكين إعادة استخدامها، لأنه يمكنك تكوينها في صفحات / مواقع متعددة إلى حد ما ببساطة.

حيث يمكن أن تبدأ المشاكل هي عندما تحاول تحلل وظائف أعمال معقدة بخطوات وتفاعلات متعددة. في هذا السيناريو، يوجد تحديد حبيبتي المداخل أكثر من الفن من العلوم، ويجب إعطاء النظر بعناية للتفاعلات بين المداخل.

تحتاج أيضا إلى النظر في مرونة واجهة المستخدم. إذا كان لديك مجموعة من أدوات بناء المدخلات، فاحدد عملك أن يكون من الواضح أنهم يمكنهم إعادة ترتيب هذه الكتل، ولكن نقل العناصر بين المداخل تتضمن إعادة كتابة. على سبيل المثال، نقل زر إرسال من مدخل واحد إلى أسفل الصفحة غير تافهة.

باختصار ذلك، أعتقد أن ذلك يعتمد على ما تحاول القيام به وما مقدار إعادة استخدامك لتوقع المكونات. قد يكون الأمر أبسط إدارة إعادة استخدامه من خلال إنشاء مكونات تقنية تقوم ببناءها في صفحات، أو قد تكون هذه الملاذات مثالية لعملك. لا توجد إجابة صحيحة، تحتاج فقط إلى النظر بعناية في ما تحاول تحقيقه. إذا قررت على المدخلات، فأنت بحاجة إلى احتضان دورة الحياة الكاملة، وتجنب أي إغراء للعمل من حولهم، يمكنك أن تجد نفسك بسرعة في مكان سيء مع كل النفقات العامة وقيود المداخل، دون أن تكون قادرا على تحقيق المزايا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top