الأسوأ أفضل
مصطلح " الأسوأ هو الأفضل " أو " أسلوب نيوجيرسي " [ 1 ] هو مصطلح صاغه ريتشارد ب. غابرييل في مقال نُشر عام 1989 [ 2 ] لوصف ديناميكيات قبول البرمجيات، وكيف تتفوق التصاميم "الأسوأ" على التصاميم الأفضل. يجادل المقال بأن البرمجيات البسيطة والمُجمّعة بشكل مؤقت ، والتي تصل إلى السوق أولاً، غالباً ما تتفوق على التصاميم الأفضل والأكثر أناقة. ويشير غابرييل إلى أنه بحلول الوقت الذي يكتمل فيه التصميم الأنيق، لن يتمكن المستخدمون الذين اعتمدوا التصميم الأسوأ من التبديل إليه نتيجةً لعوائق التبديل ، والتبعية للمورد ، ومتطلبات التوافق مع الإصدارات السابقة . ويقارن غابرييل بين برمجيات "الأسوأ هو الأفضل" و" نهج معهد ماساتشوستس للتكنولوجيا " المتمثل في فعل " الشيء الصحيح "، ويجادل بأن البرمجيات ذات الحد الأدنى من المكونات "تتمتع بخصائص بقاء أفضل من الشيء الصحيح". [ 3 ]
يقدم غابرييل أمثلة على اعتماد لغة C على لغة Lisp ، ونظام Unix على أجهزة Lisp و VMS ، ونظام x86 على أجهزة الكمبيوتر ذات مجموعة التعليمات المخفضة كأمثلة على حلول أسوأ تقنيًا تتغلب على الحلول الأكثر أناقة من خلال الوصول إلى السوق أولاً.
أُدرجت المقالة في كتاب "دليل كارهي يونكس" الصادر عام 1994 ، ويُشار إليها على أنها أصل فكرة الانقسام المفاهيمي بين المطورين على الساحلين الشرقي والغربي للولايات المتحدة. [ 4 ]
أصل
كان غابرييل مبرمجًا للغة ليسب عندما صاغ المفهوم عام 1989، وعرضه في مقالته "ليسب: أخبار سارة، أخبار سيئة، كيف تحقق نجاحًا باهرًا". وانتشر جزء من المقالة، بعنوان "صعود فكرة 'الأسوأ هو الأفضل ' " ، على نطاق واسع بدءًا من عام 1991، بعد أن عثر عليه جيمي زاوينسكي في ملفات غابرييل في شركة لوسيد وأرسله عبر البريد الإلكتروني إلى أصدقائه وزملائه. [ 3 ]
صفات
في كتابه "صعود الأسوأ هو الأفضل "، حدد غابرييل نموذجًا لتصميم البرمجيات وتنفيذها يُعرف باسم "الأسوأ هو الأفضل"، ويتسم بالبساطة والصحة والاتساق والشمولية (مرتبة تنازليًا تقريبًا حسب الأهمية). وقارن غابرييل فلسفته، التي تُعرف أيضًا باسم " أسلوب نيوجيرسي " أو "بيركلي" أو "الساحل الغربي" [ 4 ] ، بما أسماه "أسلوب معهد ماساتشوستس للتكنولوجيا /ستانفورد في التصميم" أو "نهج معهد ماساتشوستس للتكنولوجيا"، المعروف أيضًا باسم "نهج الساحل الشرقي" [ 4 ] أو "الشيء الصحيح".
| السمة | أسلوب نيوجيرسي | نهج معهد ماساتشوستس للتكنولوجيا |
|---|---|---|
| بساطة | يجب أن يكون التصميم بسيطًا، سواءً في التنفيذ أو واجهة المستخدم. بل إن بساطة التنفيذ أهم من بساطة واجهة المستخدم. فالبساطة هي الاعتبار الأهم في أي تصميم. | يجب أن يكون التصميم بسيطاً، سواءً من حيث التنفيذ أو واجهة المستخدم. والأهم من ذلك أن تكون واجهة المستخدم بسيطة أكثر من التنفيذ. |
| الصواب | ينبغي أن يكون التصميم صحيحاً من جميع النواحي الظاهرة. والبساطة أفضل قليلاً من الكمال. | يجب أن يكون التصميم صحيحاً من جميع النواحي الظاهرة. لا يُسمح بأي خطأ على الإطلاق. |
| تناسق | يجب ألا يكون التصميم متناقضًا بشكل مفرط. يمكن التضحية بالاتساق من أجل التبسيط في بعض الحالات، ولكن من الأفضل حذف أجزاء التصميم التي تتعامل مع ظروف أقل شيوعًا بدلاً من إدخال تعقيد أو تناقض في التنفيذ. | يجب أن يكون التصميم متسقًا. يُسمح بأن يكون التصميم أقل بساطة وأقل اكتمالًا لتجنب التناقض. فالاتساق لا يقل أهمية عن الصحة. |
| اكتمال | يجب أن يغطي التصميم أكبر عدد ممكن من الحالات المهمة عمليًا. ينبغي تغطية جميع الحالات المتوقعة بشكل معقول. يمكن التضحية بالشمولية لصالح أي ميزة أخرى. في الواقع، يجب التضحية بالشمولية كلما تضررت سهولة التنفيذ. يمكن التضحية بالاتساق لتحقيق الشمولية إذا تم الحفاظ على البساطة؛ ولا سيما أن اتساق واجهة المستخدم عديم الجدوى. | يجب أن يغطي التصميم أكبر عدد ممكن من الحالات المهمة عمليًا. يجب أن يشمل جميع الحالات المتوقعة بشكل معقول. لا يُسمح للبساطة بأن تُقلل من الشمولية بشكل مفرط. |
جادل غابرييل بأن أنظمة يونكس ولغة سي المبكرة ، التي طورتها مختبرات بيل (في مقرها في نيوجيرسي، ومن هنا جاء الاسم البديل للمصطلح)، تُعد أمثلة على نهج التصميم الذي يعتبر الأسوأ هو الأفضل. كما وصفها بأنها " فيروسات الحاسوب المطلقة " نظرًا لانتشارها السريع.
الآثار
جادل غابرييل بأن مبدأ "الأسوأ أفضل" يُنتج برمجيات أكثر نجاحًا من منهج معهد ماساتشوستس للتكنولوجيا: فما دام البرنامج الأولي "جيدًا بما يكفي"، سيستغرق تنفيذه وقتًا وجهدًا أقل بكثير في البداية، وسيكون من الأسهل تكييفه مع الظروف الجديدة. على سبيل المثال، يصبح نقل البرمجيات إلى أجهزة جديدة أسهل بكثير بهذه الطريقة. وبالتالي، سينتشر استخدامه بسرعة، قبل وقت طويل من إتاحة الفرصة لبرنامج تم تطويره باستخدام منهج معهد ماساتشوستس للتكنولوجيا للتطوير والنشر ( ميزة الريادة ). وبمجرد انتشاره، سيزداد الضغط لتحسين وظائفه، لكن المستخدمين قد اعتادوا بالفعل على قبول "الأسوأ" بدلًا من "الأفضل": [ 5 ]
لذا، فإنّ البرمجيات التي تُقدّم أداءً أقل جودةً ستحظى بالقبول أولاً، ثم ستُعوّد مستخدميها على تقبّل أداء أقل، وأخيراً سيتم تحسينها إلى درجة تُقارب الأداء الأمثل. فعلى سبيل المثال، على الرغم من أن مُجمّعات لغة ليسب في عام ١٩٨٧ كانت تُضاهي مُجمّعات لغة سي، إلا أن عدد خبراء المُجمّعات الذين يرغبون في تحسين مُجمّعات لغة سي يفوق بكثير عدد الذين يرغبون في تحسين مُجمّعات لغة ليسب.
ينسب غابرييل الفضل إلى جيمي زاوينسكي في اقتباس أجزاء "الأسوأ هو الأفضل" من كتاب "ليسب: أخبار جيدة، أخبار سيئة، كيف تربح الكثير" وإرسالها عبر البريد الإلكتروني إلى أصدقائه في جامعة كارنيجي ميلون ، الذين بدورهم أرسلوها إلى أصدقائهم في مختبرات بيل، "الذين بدورهم أرسلوها إلى أصدقائهم في كل مكان". [ 6 ] ويبدو أنه ربط هذه الأفكار بأفكار ريتشارد ستالمان ، ورأى أفكارًا ذات صلة مهمة في فلسفة تصميم يونكس ، وبشكل أعم في حركة المصادر المفتوحة ، وكلاهما كان محوريًا في تطوير لينكس .
في ديسمبر 2000، رد غابرييل على مقالته السابقة بمقال بعنوان "الأسوأ هو الأفضل هو الأسوأ " [ 7 ] تحت اسم مستعار هو نيكيبين بورباكي (إشارة إلى نيكولاس بورباكي )، بينما كتب أيضًا " هل الأسوأ هو الأفضل حقًا؟" ، مطبقًا المفهوم على نجاح لغة C++ في مجال البرمجة الكائنية التوجه على الرغم من وجود لغات أكثر أناقة مصممة حول هذا المفهوم. [ 8 ]
يتضمن دليل كارهي يونكس قسم " الأسوأ هو الأفضل" ، ويطرح المفهوم من منظور أن الأسوأ هو الأفضل، وذلك من خلال اعتبار يونكس "متفوقًا تطوريًا" على منافسيه. [ 9 ]
انظر أيضاً
مراجع
- ↑ "الأسوأ هو الأفضل مقابل الأفضل هو الأفضل" . 20 سبتمبر 2014.
- ↑ غابرييل، ريتشارد ب. "الأسوأ هو الأفضل" . تم الاطلاع عليه بتاريخ 30 يونيو 2023 .
- 1 2 "الأسوأ هو الأفضل" . dreamsongs.com .
- 1 2 3 " الأسوأ أسوأ" . www.artima.com
- ↑ "الأسوأ هو الأفضل" . dreamsongs.com .
- ↑ دانيال واينريب . "فكرة "الأسوأ هو الأفضل" ومستقبل لغة ليسب" . مؤرشف من الأصل في 11 يونيو 2009.
- ↑ "الأسوأ هو الأفضل هو الأسوأ (ملف PDF)، ريتشارد ب. غابرييل بدور "نيكيبين بورباكي"( PDF) .
- ↑ "هل الأسوأ هو الأفضل حقًا، ريتشارد ب. غابرييل" (ملف PDF) .
- ↑ كرينين، يوسي (11 أغسطس 2012). "ما يدور حوله حقًا مفهوم "الأسوأ هو الأفضل مقابل الشيء الصحيح"؟" . التثبيت الصحيح . تم الاسترجاع في 24 نوفمبر 2018 .
للمزيد من القراءة
- غانغارز، مايك (5 أغسطس 2003)، لينكس وفلسفة يونكس ، إلسيفير ساينس، الصفحات 122-125 ، رقم ISBN 9781555582739
- غراهام، بول (18 مايو 2004)، المخترقون والرسامون ، دار نشر أورايلي ميديا، ص 220، رقم ISBN 9780596803100
- ماير، كريستيان (2022-08-02)، فن البرمجة النظيفة ، دار نشر نو ستارش، الصفحات 117-118 ، رقم ISBN 9781718502192
- عبارات إنجليزية
- تصميم البرمجيات
- مبادئ البرمجة
- إدارة الجودة
