بداية لكي نتعرف على نمط الـ MVVM ونتشبع بفهمه، علينا أن ننظر إليه في سياق عائلة الـ MV، فلابد لنا أن نتعرف على كل من نمط الـ MVC ونمط الـ MVP لكي نفهم بشكل دقيق هذا النمط، وقد تحدثنا عن كل من النمطين بشكل مفصل، وانصحكم بالاطلاع على هذه الموضوعات إن لم تكونوا على علم بهذه الأنمطة. والآن ما هو نمط الـ MVVM ؟ الـ MVVM هو اختصار لـ Model View ViewModel، وهذا النمط عبارة عن ثلاث وحد
لكي تتعرف على هذا النمط بطريقة صحيحة لابد أن تتعرف أولا على نمط الـ MVC حيث أن الـ MVP يعد أحد أفراد عائلة الـ MV والـ MVC يعتبر أول فرد في هذه العائلة، ومعظم الأفراد الذين انضموا إلى هذه العائلة يأخذون الكثير من الصفات والوظائف من الـ MVC ولذلك انصحكم بقراءة موضوع "الـ MVC pattern في الجافاسكربت" قبل تناول هذا الموضوع.
Separation Of Concerns
دعونا في البداية ن
اعتقد أن معظمنا قد مر على مصطلح الـ MVC من قبل ولديه معرفة مسبقة بهذا المصطلح لكن دعونا نتناقش فيما بيننا حول هذا الموضوع من البداية، فأول شيء نريد أن نعرفه؛ إلى أي شيء يشير هذا الاختصار MVC ؟! هذا الاختصار يشير إلى ثلاث كلمات Model-View-Controller والـ MVC هذا عبارة عن نمط من أنماط كتابة الأكواد، وهو نمط هيكلي أكثر منه وظيفي، بمعنى أنه يساعدنا على هيكلة السكربت أو الكود الذي ن
قبل أن نتحدث عن أي شيء يخص الـ design patterns دعونا في البداية نحكي قصة رمزية نبدأ بها موضوعنا. كانت لدينا قطعة أرض نريد أن نبني عليها عمارة سكنية، فقمنا بمخاطبة بعض المهندسين المعماريين الاكفاء لكي يرسموا لنا تصميم هذه العمارة. هؤلاء المهندسون مختلفون تماما من حيث الجامعات التي درسوا بها، والشركات التي عملوا بها، وكل منهم لا يعرف الأخر. وطلبنا من كل مهندس على حدة أن ينشئ لنا