نظام السلاسل الذكي (B-SmartSeries)
الوثيقة المرجعية – الانتقال من نظام الفلترة بالكلمات إلى نظام الفلترة بالليبل
أولًا: فلسفة النظام
تم تصميم نظام السلاسل في مدونة «فروق» ليكون نظامًا مستقلاً لإدارة آلاف المقالات وربطها ضمن سلاسل معرفية دون الحاجة إلى قواعد بيانات خارجية أو إضافات خاصة.
يعتمد النظام على مبدأ بسيط:
السلسلة ليست صفحة ثابتة.
السلسلة عبارة عن مجموعة مقالات يتم تجميعها آليًا وفق قواعد محددة.
وبذلك تصبح إضافة مقال جديد إلى أي سلسلة عملية تلقائية، دون تعديل صفحة السلسلة نفسها.
ثانيًا: الإصدار الأول (V1)
نظام الفلترة بالكلمات المفتاحية
كان الإصدار الأول يعتمد على استخراج السلسلة من عنوان المقال.
مثال:
حرب الخليج: عندما اجتاح العراق الكويت
أو
الرأسمالية: البنوك الإسلامية: كيف تتعامل البنوك
كانت الصفحة المركزية تقوم بالآتي:
تحميل دفعات من جميع مقالات المدونة.
قراءة عنوان كل مقال.
استخراج الجزء الأول من العنوان.
مقارنته بالكلمة المفتاحية الخاصة بالسلسلة.
الاحتفاظ بالمقالات المطابقة فقط.
إعادة بناء السلسلة بالكامل.
مميزات الإصدار الأول
لا يعتمد على الليبل.
يعمل حتى لو لم تكن المقالات مصنفة.
مرن في بداية المشروع.
عيوب الإصدار الأول
يقرأ جميع المقالات.
يزداد بطؤه مع نمو المدونة.
يعتمد على وجود اسم السلسلة داخل عنوان كل مقال.
يحتاج إلى تكرار اسم السلسلة في كل عنوان.
يستهلك وقتًا في الفلترة أكثر من عرض البيانات.
ثالثًا: ظهور نظام الليبل
أثناء تطوير مكتبة طباعة السلاسل تم إنشاء ليبل مستقل لكل سلسلة.
مثال:
سلسلة_سوريا
سلسلة_اليمن
سلسلة_الرأسمالية
وكان الهدف في البداية هو:
تجميع مقالات السلسلة وتحويلها إلى كتاب PDF.
لكن التجربة أثبتت أن جلب المقالات بواسطة الليبل أسرع بكثير من الفلترة التقليدية.
ومن هنا جاءت فكرة تحويل الليبل إلى المصدر الرسمي لبيانات السلسلة.
رابعًا: الإصدار الثاني (V2)
نظام الجلب المباشر بالليبل
أصبح النظام يعمل وفق التسلسل التالي:
مفتاح السلسلة
↓
سلسلة_اسم السلسلة
↓
ليبل بلوجر
↓
جلب مقالات الليبل فقط
↓
عرض السلسلة
بدلاً من:
جلب جميع المقالات
↓
فلترة العناوين
↓
استخراج السلسلة
↓
عرض النتائج
خامسًا: بنية النظام الجديد
كل سلسلة تمتلك ليبلًا رسميًا.
مثال:
سوريا
↓
سلسلة_سوريا
الرأسمالية
↓
سلسلة_الرأسمالية
ولا يحتاج النظام إلى قراءة آلاف المقالات، بل ينتقل مباشرة إلى الليبل المطلوب.
سادسًا: نظام العناوين
يدعم النظام نوعين من العناوين حفاظًا على التوافق مع المقالات القديمة.
النظام القديم
طبقة واحدة
حرب الخليج: عندما اجتاح العراق الكويت
طبقتان
الرأسمالية: البنوك الإسلامية: كيف تتعامل البنوك
النظام الجديد
طبقة واحدة
عندما اجتاح العراق الكويت
طبقتان
البنوك الإسلامية: كيف تتعامل البنوك
يقوم النظام تلقائيًا بحذف اسم السلسلة القديم إذا كان مطابقًا لليبل.
لذلك لا توجد حاجة لتعديل آلاف المقالات السابقة.
سابعًا: طبقات السلاسل
الطبقة الواحدة
يعتمد الليبل على اسم السلسلة.
مثال:
سلسلة_حرب الخليج
وتعرض جميع المقالات مباشرة دون تقسيم داخلي.
الطبقتان
يعتمد الليبل أيضًا على اسم السلسلة.
لكن بعد جلب المقالات يتم تقسيمها داخليًا حسب الجزء الأول من العنوان.
مثال:
البنوك الإسلامية: ...
اقتصاد الديون: ...
الاحتكار: ...
وهكذا يصبح:
الليبل مسؤولًا عن السلسلة.
العنوان مسؤولًا عن التقسيم الداخلي.
ثامنًا: مقارنة النظامين
الإصدار الأول
تحميل جميع المقالات
↓
فلترة
↓
مقارنة
↓
عرض
الإصدار الثاني
تحميل الليبل المطلوب فقط
↓
عرض مباشر
تاسعًا: المزايا
سرعة أعلى.
عدد طلبات أقل.
استهلاك أقل للذاكرة.
كود أبسط.
قابلية توسع أفضل.
إزالة تكرار اسم السلسلة من العناوين الجديدة.
توافق كامل مع المقالات القديمة.
استخدام الليبل كمصدر رسمي واحد لجميع الخدمات.
عاشرًا: فلسفة التصميم
يعتمد الإصدار الثاني على مبدأ واحد:
لا تبحث في جميع البيانات إذا كنت تعرف مكان البيانات.
بدلاً من فحص آلاف المقالات للوصول إلى سلسلة واحدة، ينتقل النظام مباشرة إلى الليبل الذي يحتوي على مقالات تلك السلسلة.
وبذلك أصبح الليبل هو العقدة المركزية التي تعتمد عليها:
صفحات السلاسل.
مكتبة الطباعة.
الكتب الإلكترونية.
وأي تطوير مستقبلي يعتمد على السلاسل.
ولهذا يمثل الإصدار الثاني تحولًا في بنية النظام، وليس مجرد تحسين في سرعة التنفيذ.