في نظام الماك، أردت مرةً الوصول لتطبيق من تطبيقات النظام من خلال سطر الأوامر (Terminal)
لكنني حاولت ولم أجد التطبيق!
اكتشفت أن #Apple عزلت تطبيقات النظام في مجلد خاص. لكن كيف لم أنتبه لذلك؟
لأن الواجهة الرسومية تُظهرهما كمجلد واحد، بحيث لا يشعر المستخدم العادي بهذا التغيير أصلاً.
لكنني حاولت ولم أجد التطبيق!
اكتشفت أن #Apple عزلت تطبيقات النظام في مجلد خاص. لكن كيف لم أنتبه لذلك؟
لأن الواجهة الرسومية تُظهرهما كمجلد واحد، بحيث لا يشعر المستخدم العادي بهذا التغيير أصلاً.
ما سبق هو مثال عملي لمفهوم مركزي في مجال البرمجيات وهو التجريد (Abstraction):
وهي عملية تعميم تستخلص الأمور المشتركة بين عناصر مختلفة مع إخفاء فروقاتها؛ بغية التبسيط وغير ذلك.
بل نستطيع القول: أن الحاسوب كله بدأ مما يباشر الهاردوير صعوداً لآحاد البرامج = عبارة عن طبقات تجريدية.
وهي عملية تعميم تستخلص الأمور المشتركة بين عناصر مختلفة مع إخفاء فروقاتها؛ بغية التبسيط وغير ذلك.
بل نستطيع القول: أن الحاسوب كله بدأ مما يباشر الهاردوير صعوداً لآحاد البرامج = عبارة عن طبقات تجريدية.
هذا "التجريد" هو الذي يظهر مثلاً في نظام الماك على هيئة بساطة في الواجهات الرسومية وفي تنفيذ العمليات الأساسية (وهذا يكشف تناظراً لطيفاً بينه وبين نظام #UNIX القابع تحته، ولعلي أفصّل في ذلك لاحقاً)
ويظهر في تغليفها الهاردوير على هيئة خدمات ومميزات عملية (AirDrop وFace ID إلخ...)
ويظهر في تغليفها الهاردوير على هيئة خدمات ومميزات عملية (AirDrop وFace ID إلخ...)
لكنه سلاح ذو حدين:
فهذا التجريد هو نفسه الذي يجعل أناساً ينفرون من نظام iOS بدعوى محدوديته. فالتجريد منه ما هو جيد ومنه ما هو سيء بحسب غرضه وسياقه، مع التنبيه أن الحُكم بأحد الحُكمين؛ يتصف بقدر من الذاتية والذوق.
فقد يكون تجريد ما مناسباً للمستخدم العادي لكنه معيق للمطور؛ والعكس.
فهذا التجريد هو نفسه الذي يجعل أناساً ينفرون من نظام iOS بدعوى محدوديته. فالتجريد منه ما هو جيد ومنه ما هو سيء بحسب غرضه وسياقه، مع التنبيه أن الحُكم بأحد الحُكمين؛ يتصف بقدر من الذاتية والذوق.
فقد يكون تجريد ما مناسباً للمستخدم العادي لكنه معيق للمطور؛ والعكس.
جاري تحميل الاقتراحات...