עשר הטעויות הנפוצות ביותר ב MVVM שכמעט כל אחד נופל בהן

יום ראשון, אפריל 29, 2012

קיבלתי לא מעט תגובות על הפוסט הקודם שלי – הפיכת ה Code behind ל ViewModel ב WPF – כשחלקן גרמו לי לחשוב עוד פעם כמה חסר תיעוד מסודר של MVVM. יש המון חומר כתוב באינטרנט, אבל רובו המוחלט לא מסודר, לא מדוייק, ואפילו לפעמים ממש מטעה.המצב עד כדי כך מורכב שכמעט לא יוצא לי לייעץ בחברה בה לא נופלים לטעות כזו או אחרת, היות ולא מעט טעויות השתרשו כפתרונות לגיטימיים במהלך השנתיים האחרונות.שתי תגובות קלאסיות שקיבלתי יותר מפעם אחת היו:1. “ב MVVM לפעמים ה ViewModel משרת כמה View-ים, והדרך שהצגת בפוסט מאפשרת רק יחס של 1:1”2. “בפוסט למעשה הורדת...
תגיות: , , , , , , ,
3 תגובות

איך מממשים MVVM ? זה הרבה יותר פשוט ממה שחושבים.

יום שישי, פברואר 4, 2011

לממש MVVM הרבה יותר קל ממה שנשמע. משום מה יצא לDesign Pattern הזה שם של Design Pattern מורכב, ולפי דעתי זו סתם חוסר הבנה. הDesign Pattern במהותו פשוט עד טריוויאלי. בפוסט הקודם דיברתי על הסיבות לממש MVVM, ועל הפואנטה שעומדת מאחורי הDesignPattern הזה. העליתי גם שאלה – מה גורם להפרדה של XAML ו Code Behind לא להוות הפרדה מספיק טובה. אז האמת שההפרדה של XAML ו CodeBehind כבר לא ממש רעה, רק שהבעיה היא שהם לא ממש מופרדים – הם למעשה מהווים ביחד מחלקה אחת, ולכן שינויים באחד מהם לעיתים מאוד קרובות "ישברו" את השני. (ה Coupling...
11 תגובות

fix: SatisfyImports not working correctly in Prism over MEF

I’m working on a Silverlight project under Prism/MEF, and that’s the first time I’m using MEF and not Unity in Prism. Resolving dependencies works a bit differently with MEF, and so when I tried to resolve IRegionManager in a ViewModel class my first instinct was to do the following: 1: 2: public IRegionManager regionManager; 3:  4: public ViewModelConstructor() 5: { ...
אין תגובות

Adapting Silverlight Navigation to MVVM

יום שלישי, ינואר 25, 2011

  Adapting Silverlight Navigation to MVVM The Navigation feature in Silverlight is pretty awesome. It adds support for two very critical issues: 1. Real web-compliancy (Browser Address changes, which adds support for: SEO, Deep Linking, Browser Journal) 2. View-Switching navigation (switching views easily to solve the ever-lasting navigation problem) It’s important to notice that these two issues are actually completely different problems, which for some reason were bundled together! Many times you would want to switch views in different scenarios, but you might not want to change the Url, and even more often...

מה הפואנטה של MVVM ?

יום רביעי, ינואר 19, 2011

למה אני צריך את זה בכלל?! השאלה איך לממש MVVM זו בפירוש לא השאלה הראשונה שאנו צריכים לשאול את עצמינו לפני שאנו נגשים למימוש של ארכיטקטורה או Design Pattern חדש. השאלה היא למה. התיעוד של פריזם מספקת דוגמא מאוד טובה לבעייתיות שאליה אני מתכוון... - רוב רובו של התיעוד בנוי כך - בשביל לממש A יש לבצע B, בשביל לממש C יש לבצע D.. בהרבה מאוד מקומות שמתמשים בפריזם נופלים ללא מעט טעויות בגלל שאת השאלה הבסיסית, למה, שוכחים טיפה לשאול. (וזה חבל היות וסה"כ פריזם היא לא פריימוורק רע.. פשוט משתמשים בו מאוד רע ברוב המקרים) הרעיון שלי בסדרת הפוסטים הבאים...
9 תגובות

.Net User Group lecture–MVVM & Blendability

יום חמישי, נובמבר 18, 2010

Thanks for everyone that have participated in my MVVM lecture in the .Net User Group yesterday at Microsoft – I really had fun, and was a pleasure to meet so many smart & interesting people The code that I showed during the presentation, and the presentation itself can be downloaded from my SkyDrive. Thanks again for Jackie Goldstein and Microsoft for organizing the event – I’m looking forward for the next time!
תגובה אחת