12

تجربتك مع Polymer ورأيك فيه وفي Web Components

سمعت منذ أكثر من سنة عن Polymer ولكن لم أعره اهتماما كبيرا لأني لم أجد نفسي استعمله بعد، كما أنّه بدى معقدا في البداية

مؤخرا بينما كنت أبحث عن عناصر UI لاستخدامها صادفت عناصر Polymer والتي هي مبنية على material design وقد أعجبتني كثيرا، المشكلة أنّه لا يمكنك استخدامها خارج Polymer

لذا بدأت أفكر في 3 حلول، إما محاولة تقليدها لتعمل بشكل طبيعي وتوفر نفس الخواص الأصلية ولكن هذا سيتطلب بعض الوقت وقد لا يعطي نفس النتائج ولكن لاضرر لدي في القيام بذلك

الحل الثاني كان محاولة التعديل على الملفات وتعديلها بحيث تعمل لوحدها، أيّ UI فحسب بدون خواص Polymer هذا طبعا سيأخذ وقتا كبيرا جدا

الحل الثالث، وهو في الأغلب ما يقوله الجميع (لماذا لا تستخدم polymer كاملة فحسب) المشكلة هي في حجمها الكبير الذي يصل إلى 180kb (متضمنة polyfill للمتصفحات، وبحجم 60kb مضغوظة [Gzipped])

قد أستعين بهذا الحل في الأغلب، ولكن لا أريد أن أشعر كأني مخدوع وأرسل للمستخدم 60kb وأنا لا أستفيد سوى من جزء بسيط منها، لذا أفكر في استخدام كامل مميزاتها، لذا أحاول أن أفكر كيف سأقوم بهذا بالتحديد

أطرح هذا الموضوع لأسمع عن آرائك بشأن هذه المكتبة، وفي حال استخدمتموها من قبل، وكيف كانت التجربة، وهل أفادتكم حقا

وأيضا رأيك بشكل عام في Web components وماهي الأشكال التي ينفع استخدامها فيها، والأشكال التي يجدر بك فقط نسخ الكود فحسب


التعليق السابق

بارك الله فيك مواضيعك اكثر من رائعة وانت من يستحق اسم مصمم مواقع بجد وليس كل من هب ودب ويسمي نفسه مصمم مواقع وهو يستعمل كل شيء جاهز ولا يفهم معنى حساب كل جزء بالملي .

من نظري الشخصي يجب لا يكون حجم اي صفحة اكثر من 100 KB , انا حاليا اقوم بتصميم موقع يتم تحميل ملفات CSS وال Jquery في اول مرة فقط ثم يفتح باقي الصفحات داخل IFrame ومن ثم ترث الصفحات ملفات CSS و ال Jquery من الصفحة Parent مما يجعل التصفح اسرع بكثير بنظري بالاضافة .

لدي طلب اخير اخ نذير اتمنى ان ترش طرق الضغط للملفات (minified و gzipped) هل يوجد طرق معينة للضغط ام الاستضافة هي من يقوم بهذا الامر وشكراً جزيل الشكر لك .

شكرا لك أخي.

بالنسبة لضغط الملفات، فأول واحدة وهي minified تستطيع أن تقوم بها بنفسك عبر تمرير الملف سكربت لضغط الملفات أو أي موقع أونلاين يقوم بهذا [1] أما الطريقة الثانية فتتم عبر المخدم. عادة يكون الأمر مفعلا افتراضيا في المخدمات وإن لم يكن فتستطيع تفعليه لوحدك عبر ملف .htaccess (في مخدم أباتشي مثلا) هنا يوجد شرح كامل للخاصية وطريقة لإضافتها في كل من أباتشي و nginx حتى تغطي كامل الاحتمالات [2]

[1]

[2]