/لماذا لا يكتب مبرمجو Facebook أكوادًا نظيفة؟ – الجزء الأول

لماذا لا يكتب مبرمجو Facebook أكوادًا نظيفة؟ – الجزء الأول

هل تعرف شعور أن تضع في حسبانك تصورًا معينًا عن شىء أو شخص ما، لكن عند الاحتكاك بالواقع تكتشف شكلًا مغايرًا لما تصورته.

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

لكن بعد عدة أيام من التعلم شبه المتواصل وأثناء تصفح موقع الـ facebook قادني الفضول إلي رؤية أكواد الصفحة الرئيسية للموقع لأفاجأ في هذه اللحظة أنها عبارة عن فوضي من الكلمات والرموز والحروف موضوعة بهيئة غير مفهومة.

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

أحد أبرز عمليتين هما عملية الــ Minification والـ Uglification.

غالبًا ما تخضع ملفات الـ css للعملية الأولي – وهي الملفات التي يوضع فيها أكواد مُتعلقة بشكل ولون ومكان العناصر المختلفة للموقع – حيث يتم في هذه العملية إزالة جميع المسافات البينية (Spaces ,New lines) بين جميع الأكواد، بالإضافة إلي إزالة جميع التعليقات التوضيحية التي يضعها المبرمج، وتخضع ملفات الـ JavaScript أيضًا للعملية الأولي بالإضافة إلي الثانية.

من المعلوم بالضرورة أن أي مبتدئ يتعلم أي لغة برمجة يجب أن يتعرف في بداية الأمر علي المتغيرات variables وأنواعها وكيفية تعريفها، فغالبًا ما يختار المبرمج أسماء لهذه المتغيرات تعبر عما يتم تخزينه فيها ويمكن أن تتكون من مقطع واحد أو مقطعين.

تهتم العملية الثانية بأمر المتغيرات حيث تقوم بتبديل جميع أسماء المتغيرات من عدة حروف إلي حروف وحيدة أصغر في الحجم وذلك لتوفير قدرمن الذاكرة قد يبدو صغيرًا لكنه يؤثر في سرعة التصفح.

العملية الأهم علي هذه الملفات هي عملية الـ Concatenation وهي وضع جميع ملفات الـ CSS الخاصة بالمشروع في ملف واحد فقط وكذلك ملف الـ JavaScript.

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