لغة النمط

لغة النمط هي طريقة لوصف ممارسات التصميم الجيدة أو أنماط التنظيم المفيد في مجال الخبرة. وقد صاغ هذا المصطلح من قبل المهندس المعماري كريستوفر الكسندر وشاع بواسطة كتاب له عام 1977 ألف لغة نمط.

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

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

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

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

وصف اللغة – المفردات – هو مجموعة من الحلول الموصوفة والموصوفة للمشاكل في مجال الاهتمام. هذه تسمى أنماط التصميم. لذلك ، على سبيل المثال ، تصف لغة العمارة عناصر مثل: المستوطنات ، المباني ، الغرف ، النوافذ ، المزالج ، إلخ.
يتضمن كل حل بناء جملة ، وهو وصف يوضح المكان المناسب للحل في تصميم أكبر وأكثر شمولية أو أكثر تجريدية. هذا يربط الحل تلقائيا في شبكة من الحلول الأخرى اللازمة. على سبيل المثال ، تحتوي الغرف على طرق للحصول على الضوء وطرق لجذب الأشخاص إلى الداخل والخارج.
يتضمن الحل القواعد التي تصف كيف يحل المحلول مشكلة أو ينتج فائدة. لذا ، إذا كانت الفائدة غير مطلوبة ، فلن يتم استخدام الحل. ربما يمكن ترك هذا الجزء من التصميم فارغًا لتوفير المال أو الموارد الأخرى ؛ إذا كان الناس لا يحتاجون إلى الانتظار لدخول غرفة ، يمكن للمدخل البسيط أن يحل محل غرفة الانتظار.
في وصف اللغة ، يتقاطع الفهرس النحوي والقواعد النحوية (غالبًا مع فهرس أبجدي حرفي لأسماء الأنماط) مع الحلول المسماة الأخرى ، بحيث يمكن للمصمم التفكير بسرعة من حل واحد إلى الحلول المطلوبة ذات الصلة وتوثيقها بطريقة منطقية. في كتاب كريستوفر ألكسندر “لغة النمط” ، تكون الأنماط في ترتيب تنازلي حسب الحجم ، مع فهرس أبجدي منفصل.
توفر شبكة العلاقات في فهرس اللغة العديد من المسارات عبر عملية التصميم.
وهذا يبسّط أعمال التصميم لأن المصممين يمكنهم بدء العملية من أي جزء من المشكلة التي يفهمونها ويعملون باتجاه الأجزاء المجهولة. في الوقت نفسه ، إذا كانت لغة النمط تعمل بشكل جيد للعديد من المشاريع ، فهناك سبب للاعتقاد بأنه حتى المصمم الذي لا يفهم مشكلة التصميم تمامًا في البداية سيكمل عملية التصميم ، وستكون النتيجة قابلة للاستخدام. على سبيل المثال ، يجب على المتزلجين القادمين إلى الداخل إلقاء الثلج وتخزين المعدات. يجب أن تبقى منظفات الثلج و الحذاء الفوضوي خارج المنزل. المعدات تحتاج إلى رعاية ، لذا يجب أن تكون الرفوف بالداخل.

العديد من الأنماط تشكل لغة
مثلما يجب أن تكون للكلمات علاقات نحوية ودلالية لبعضها البعض من أجل جعل اللغة المنطوقة مفيدة ، يجب أن ترتبط أنماط التصميم ببعضها البعض في ترتيب الموضع والمنفعة لتشكيل لغة نمط. يصف عمل كريستوفر ألكسندر عملية تحلل ، حيث يواجه المصمم مشكلة (ربما مهمة تجارية) ، ويختار حلاً ، ثم يكتشف مشاكل جديدة أصغر نتيجة للحل الأكبر. في بعض الأحيان ، لا يكون للمشاكل الصغيرة أي حل ، ويجب تحديد حل أكبر مختلف. في نهاية المطاف كل مشاكل التصميم المتبقية صغيرة بما فيه الكفاية أو روتينية بما فيه الكفاية ليتم حلها عن طريق الارتجال من قبل بناة ، ويتم “التصميم”.

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

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

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

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

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

على سبيل المثال ، يتعامل نمط الإسكندر “A PLACE TO WAIT” مع محطات الحافلات بنفس طريقة غرف الانتظار في الجراحة ، في حين لا يزال اقتراح حلول مفيدة وبناءة. كتاب “Gang-of-Four” لنماذج تصميم الكتب من Gamma et al. يقترح حلولاً مستقلة عن لغة البرمجة ومجال تطبيق البرنامج.

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

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

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

موازنة القوى
ويجب أن يميز النمط المشاكل التي يقصد بها حلها ، أو السياق أو الحالة التي تنشأ فيها هذه المشكلات ، والظروف التي يمكن التوصية بها في الحلول المقترحة.

وغالبا ما تنشأ هذه المشاكل من تضارب بين المصالح المختلفة أو “القوى”. يظهر نمط كحوار سيساعد بعد ذلك على موازنة القوى وأخيراً يتخذ قراراً.

على سبيل المثال ، قد يكون هناك نمط يشير إلى هاتف لاسلكي. ستكون القوى هي الحاجة للتواصل ، والحاجة إلى القيام بأشياء أخرى في نفس الوقت (الطبخ ، فحص رف الكتب). نمط محدد للغاية سيكون فقط “WIRELESS TELEPHONE”. أنماط أكثر عمومية ستكون “WIRELESS DEVICE” أو “ACTONDITY ACTIVITY” ، مما يشير إلى أن النشاط الثانوي (مثل التحدث على الهاتف ، أو فحص جيوب الجينز) يجب ألا يتداخل مع الأنشطة الأخرى.

على الرغم من أنه غير محدد في سياقه ، فإن القوى في نمط “النشاط الثانوي” تشبه إلى حد كبير تلك الموجودة في “WIRELESS TELEPHONE”. وبالتالي ، يمكن النظر إلى القوى المتنافسة كجزء من جوهر مفهوم التصميم المعبر عنه في نمط معين.

الأنماط تحتوي على المبررات الخاصة بها
عادة ما يحتوي النمط على منطق منطقي يشير إلى بعض القيم المعطاة. بالنسبة لكريستوفر ألكسندر ، من الأهمية بمكان أن نفكر في الأشخاص الذين سيتصلون بقطعة من الفن المعماري. واحدة من قيمه الأساسية هي جعل هؤلاء الناس يشعرون بأنهم أكثر حيوية. يتحدث عن “الجودة بدون اسم” (QWAN).

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

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

من خلال التركيز على التأثيرات على حياة الإنسان ، يمكننا تحديد أنماط مستقلة عن تغيير التكنولوجيا ، وبالتالي العثور على “الجودة الخالدة” (ألكسندر).

البنية العامة والتخطيط
عادةً ما يختار مؤلف لغة أو مجموعة نمط بنية عامة لجميع الأنماط التي يحتوي عليها ، مع تقسيم كل منها إلى أقسام عامة مثل السياق ، بيان المشكلة ، الحل ، إلخ.

على سبيل المثال ، تتكون أنماط كريستوفر ألكسندر من اسم قصير ، وتصنيف (ما يصل إلى رمزين “*”) ، وصورة حساسة ، وصف السياق ، وبيان المشكلة ، وجزء أطول من النص مع أمثلة وتوضيحات ، حل بيان ، رسم ومراجع أخرى. ويشار أحيانًا إلى هذه البنية والتخطيط باسم “النموذج السكندري”.

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

أسماء ذات مغزى
عندما يتم التصميم بواسطة فريق ، ستشكل أسماء الأنماط مفردات يمكن مشاركتها. هذا يجعل من الضروري لأسماء النماذج أن تكون سهلة التذكر وصفة عالية. بعض الأمثلة من أعمال ألكسندر هي WINDOW PLACE (يساعد على تحديد أين يجب أن تذهب النوافذ في غرفة) و A PLACE TO WAIT (يساعد على تحديد خصائص مواقف الحافلات وغرف انتظار المستشفى ، على سبيل المثال).

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

في كتاب ألكسندر ، يتم جمع هذه الروابط في جزء “المراجع” ، وتردد في جزء “السياق” المرتبط بالنمط – وبالتالي فإن الهيكل العام هو رسم بياني موجه. عادة ما يعالج النمط المرتبط بـ “المراجع” مشكلة ذات نطاق أقل ، والتي يتم اقتراحها كجزء من المشكلة ذات النطاق الأعلى. على سبيل المثال ، يحتوي نمط “PUBLIC OUTDOOR ROOM” على مرجع إلى “STAIR SEATS”.

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

الروابط في كتاب الإسكندر تؤدي بوضوح إلى شبكة هرمية. ألكساندر يوجه بالتوازي إلى التسلسل الهرمي لقواعد اللغة – وهذا هو أحد الحجة بالنسبة له للحديث عن لغة نمط.

فكرة الربط مقبولة بشكل عام بين مؤلفي النمط ، على الرغم من أن المنطق الدلالي وراء الروابط قد يختلف. بعض الكتاب ، على أية حال ، مثل Gamma et al. في أنماط التصميم ، لا تستخدم سوى القليل من نمط الربط – ربما لأنه لم يكن له معنى كبير في جمع الأنماط. في مثل هذه الحالة ، نتحدث عن كتالوج النمط بدلاً من لغة النمط.

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

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

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

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

في البداية تم تعميم إطار وفلسفة نهج “نمط اللغة” في كتاب “لغة النمط” الذي كتبه كريستوفر ألكسندر وخمسة زملاء في مركز البنية البيئية في بيركلي ، كاليفورنيا في أواخر السبعينيات. في حين أن لغة النمط تحتوي على 253 “أنماط” من النمط الأول ، “المناطق المستقلة” (الأكثر عمومية) إلى الأخيرة ، “أشياء من حياتك” ، فإن كتاب ألكسندر The Timeless Way of Building يتعمق أكثر في الدوافع والغرض من العمل. يتم إعادة صياغة تعريفات “النمط” و “نمط اللغة” التالية من لغة النمط:

“النمط هو وصف دقيق للحل الدائم لمشكلة متكررة في سياق بناء ، يصف أحد التكوينات التي تجلب الحياة إلى مبنى. كل نمط يصف مشكلة تحدث مرارا وتكرارا في بيئتنا ، ثم تصف الحل الأساسي لهذه المشكلة ، بطريقة يمكنك من خلالها استخدام الحل مليون مرة ، دون القيام بذلك بنفس الطريقة مرتين. ”

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

مجالات التطبيق
اعتمدت فكرة كريستوفر ألكسندر في تخصصات أخرى ، غالباً ما تكون أكثر بكثير من التطبيق الأصلي للأنماط على العمارة كما هو موضح في كتاب “لغة النمط”. تشمل الأمثلة الحديثة أنماط تصميم البرمجيات في هندسة البرمجيات ، وبشكل عام ، الأنماط المعمارية في علوم الكمبيوتر ، بالإضافة إلى أنماط تصميم التفاعل. تستخدم الأنماط التربوية لتوثيق الممارسات الجيدة في التدريس. نشر كتاب تحرير أصوات: لغة نمطية لثورة الاتصالات ، يحتوي على 136 نموذجًا لاستخدام المعلومات والاتصالات لتعزيز الاستدامة والديمقراطية والتغيير الاجتماعي الإيجابي ، في عام 2008 مع موقع ويب يحتوي على أنماط أكثر. نُشر في عام 2011 “العمل الجماعي: لغة النمط لجلب الحياة إلى الاجتماعات والتجمعات الأخرى”. في الآونة الأخيرة ، تم إدخال أنماط في تصميم بنية الأنظمة. استراتيجية الشطرنج والتكتيكات تنطوي على أنماط كثيرة من فتح إلى كش ملك.

شارك وارد كانينجهام ، مخترع ويكي ، في كتابة ورقة مع مايكل مهافي يجادل بأن هناك علاقات عميقة بين الويكي واللغات النمطية ، وأن الويكي “تم تطويرها في الواقع كأدوات لتسهيل المشاركة الفعالة وتعديل الأنماط”.