توثق هذه المقالة تجربتي في تصميم وتطوير الواجهة الأمامية لبرنامج إدارة لشركة تصنيع في صناعة معالجة الجلود. كانت الشركة تستخدم تطبيقًا قديمًا تم تطويره منذ أكثر من 20 عامًا باستخدام تقنيات قديمة - وهي أداة بطيئة وغير آمنة من عصر نظام التشغيل Windows XP مع واجهة قديمة أصبحت صيانتها صعبة بشكل متزايد.
كان الهدف واضحًا: استبدال النظام القديم بحل حديث قائم على الويب دون تعطيل سير العمل التشغيلي الراسخ الذي كان المشغلون يستخدمونه لعقود من الزمن.
كان العميل بحاجة إلى تطبيق ويب سريع وحديث يمكن الوصول إليه من أي متصفح. وكانت المتطلبات الرئيسية هي:
تم إنشاء الواجهة الخلفية (التي يتم التعامل معها بواسطة أحد الزملاء) باستخدام Symfony (PHP) وMySQL وRESTful APIs مع مصادقة قائمة على ملفات تعريف الارتباط JWT.
جوهر التطبيق هو حاوية Dockview التي تستضيف جميع اللوحات المفتوحة - فكر في الأمر كنظام علامة تبويب لـ Visual Studio Code ولكن لتطبيق إدارة الأعمال. تتوافق كل لوحة مع كيان تجاري محدد (جهات الاتصال، الدفعات، الطلبات، وما إلى ذلك) وهي مبنية من ثلاثة مكونات عامة قابلة لإعادة الاستخدام.
لقد غيرت هذه الفكرة قواعد اللعبة فيما يتعلق بالإنتاجية. بدلاً من كتابة منطق CRUD من البداية لكل لوحة من اللوحات التي يزيد عددها عن 50 لوحة، قمت بتحديد هذه الأدوية الثلاثة مرة واحدة، وكل لوحة محددة تعلن فقط عن الأجزاء المتغيرة: أعمدة الجدول، وحقول النموذج، ونقطة نهاية واجهة برمجة التطبيقات، والترجمات.