لماذا التظليل يمتلك ديناميكية بدلا من تعدد الأشكال الثابتة؟

StackOverflow https://stackoverflow.com/questions/9446957

سؤال

أنا في عملية تعلم C ++ الحديثة والتركيز على مصنع مجردة في الوقت الحالي، ومن ما أفهمه، أحد الأفكار الرئيسية ل Loki هو تجنب "الظاهري" (تعدد الأشكال الديناميات) المستخدمة في GOFوبعدولكن في بعض الأحيان، لا يزال يستخدم.في الفصل على مصنع مجردة، التاجدافليونيت لديه "افتراضي". http:// loki-lib.cvs.sourceforge.net / loki-lib / loki / acember / loki / abstractactory.h؟ http://en.wikipedia.org/wiki/template_metaprogramming#static_polymorphism

لماذا هو أكثر فعالية لاستخدام الظاهري في هذه الحالة؟

هل كانت مفيدة؟

المحلول

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

صحيح، قد يكون تعدد الأشكال الساكنة أكثر كفاءة، لكنه يقلل من قابلية لقراءة التعليمات البرمجية.

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

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top