مقدمــــة:

يحصــل دائمــاً الخلــط بين مفهومّي Front-end و Graphical user interface(GUI) في هــذا المقــال ومقــالين يتلوانــه أوضح بهمــا الفــرق المصطلحيــن بالتفصيــل. قمــت بتجهيــز مقال طــويل ممــا جعلنــي أشعـر أنه ممـل، ذلك جعلني أفكــر في وضــع بعض الرسومــات البيانيــّـة وأقســّم المقــال إلى أقســاماً ثلاثــة.

حتــى تسهــل عمليــّـة إيصــال المعلومــة لابــد من تدرّج بسيــط. أولاً البرمجيــات تدخل في أمــور عــدّة، وليـــس تصميم البرمجيــات[١] مخصــص للاستخــدام البشــري فحســب. قــد تـصمم برمجيــات تســتخدمهــا برمجيــّـات أخــرى، أو آلات وأجهــزة أو كائنــات أخرى غيــر البشــر بشكل عــام.

الـتفصيـــل:

العمليــّـات الخلفيــة في البرمجيــّـة (Back-end) هـي كل الوظائــف والخوارزميــّـات التــي صُمِمَت البرمجيــّـة من أجلهــا. هــذا إذا كنـــّا نتحــدّث عن البرمجيــّـات فقــط. بينمــا مصطــلح Back-end ليــس محصوراً عــلى البرمجيــّـات، فمثــلاً محـّـرك السيــّـارة يعبتـــر Back-end ولكـــن دوّاســة الوقــود Gas pedal هــي واجهــة أمــاميــة للتحــكم المحــدود بمحــرك السيــارة.

في تــدقيق بسيــط للمثال الســابق، نجــد أن لدى محرّك السيـّــارة، واجهــة أماميــة، ولكــن ليســـت مصممــة للاستخــدام البشـري، إنما تلك الواجهــة صُمــِمَت لتتصـــل مع دوّاســـة الوقــود. بينمــا لدواســة الوقــود واجهتــان، إحداهمــا خلفيــة وأخــرى أماميــّــة Back-end and front-end. الواجهــة الخلفيــّــة متــّصــلة بواجهــة المحــرك الأماميــّــة، بينمــا واجهــة الدواســة الأماميــة هــي التي صُمِمَــت للإستخــدام البشــري.

نجــد في الصــورة السابقــة رســم بيــاني مكــوّن - Component Diagram - يشــرح مثــالنا الســابق. حيــث الصنـدوق الأخضــر يمثــل محــرك السيــّـارة، والأحمــر يمثــل دواسـّـة الوقــود وأخيــراً يمثــل الأصفــر قـدم الإنســان اليمنــى. تتعـــامل واجهــة دواســّة الوقــود مع قـدم الإنســـان، ثــم ترســل قيــمة الضــغط للمحــرك من خــلال واجهــة المحــرك الأماميـــــة المخصــصة لدواســة الوقــود.

مثــال محــرّك السيــارة الســّـابق نجــد Back-end و Front-end لكننـــا لا نجــد واجهــة رسوميـــّـة للمستخــدم. في مثــالنا السابـــق أستخدم مصمـموا السيــارات واجهــة مستخــدم ملموســة Physical User Interface(PUI) ليســت رسوميــّـة [٢].

في مثــال محــرّك السيــارة الســّـابق نجــد Back-end و Front-end لكننـــا لا نجــد واجهــة رسوميـــّـة للمستخــدم. في مثــالنا السابـــق أستخدم مصمـموا السيــارات واجهــة مستخــدم ملموســة Tangible User Interface(TUI) ليســت رسوميــّـة [٢]. ممــا يوضــّح لنــا، أن واجهــات المستخــدم أنواع متعــددة وليــس شرطــاً أن تكــون GUI. ويعــني أيضــاً أن واجهــة المستخــدم UI هي جــزء من مفهــوم Front-end.

في البرمجيـــّـات يبــدو مصـطلح GUI شائعــاً، حيــث أصبــح عنــد الكثيــر خلــط بيــن مفهومــه ومفهــوم Front-end. بـل تخطى بعــض شركــات التطويــر الصغيــرة أيضــاً في عروضهــا التوضيفيـــة. صادفــت شركــة تطلب Front-end developer أي مطــور واجهــات أماميــّـة. عندمــا قرأت ملخــّص العرض، وجــدت أنهم يطلبون مهـارات رسوميــّـة كـ Photoshop, CSS, HTML ..etc مــما يوضــع نقطــة الخــطأ في التفريــق بين المصطلحيــــن.

خاتمــة:

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

المصــــادر:

[١]:

https://ar.wikipedia.org/wi...

[٢]:

https://goo.gl/ujC7Ko