MVVM – Part 10 PRISM real world Starter

Saturday, October 5, 2013

הגענו לפרק העשירי והאחרון במדריך שלי לMVVM. הפעם נדגים כיצד בונים תכנית מבוססת על ארכיטקטורת MVVM מורכבת, (מה שנקרא composite application) באמצעות Prism library.   נתחיל מזה שנוריד את הגרסה האחרונה של הספרייה מאתר הבית שלהם,(אני בוחר בגרסה המתאימה ל.NET 4.5) כי אני עובד עם VS2012 כדי להוריד קבצים מקודפלקס יכול להיות שתצטרכו חשבון וזה סתם מומלץ.   בכל מקרה כנסו לפה תורידו גרסה ונמשיך.   מה שצריך בנוסף זה dll של Unity כי כאמור באפליקציה מודולרית צריך IOC קונטיינר והתשתית של פריזם מגיעה עם תמיכה מובנית בMEF או UNITY...
אין תגובות

MVVM Part 8 – the MEF Library

Friday, February 22, 2013

אחרי שעשינו היכרות בסיסית עם Unity, נשלים את התמונה עם הContainer הפופולרי הנוסף הלא הוא MEF את קוד המקור שלMEF  אפשר להוריד מכאן, ובכל מקרה הספרייה המצאת לכם בכך מקרה בתוך דוט נט 4 ומעלה. פשוט הוסיפו רפרנס לDLL בשם System.ComponentModel.Composition,MEF רואי לציין ש  כספרייה נחשבת כתומכת גם באובייקטים של Third Party. זאת אומרת ניתן להכיל אותה ולבצע "הזרקת התנהגות" גם עם קונטרולים של יצרן פרטי וצורת העבודה היא לכאורה דינמית יותר מ Unity בזה שאני לא רושם בקוד תלות בטייפ מסויים אלא משתמש בAttribute ומוסיף מתי שבא לי איפה שבא לי. השימוש בAttribute מוכר כMarker Interface Pattern,  וMEF זאת דוגמא נהדרת מה אפשר לעשות עם Attribute ואנחנו לא עושים...
אין תגובות

Depndency Injection

Thursday, October 25, 2012

  Dependency Injection או  "הזרקת  תלות\התנהגות" היא תבנית שיומושית מאוד, משתמשים בה ביום יום גם בלי ההכרות עם ההגדרה המקצועית. הרעיון בבסיסו אומר שאיזור מסוים בתכנית יודע להריץ קטע קוד שמקבל מבחוץ בלי לדעת מה המימוש ומה עושה הקוד החיצוני, כל שנצרך הוא החזקת רפרנס לאינטרפייס(חוזה) מהסוג המבוקש והפעלת הפונקציה\ות  שלו. בזמן ריצה נקבל בקונסטרקטור איזשהוא אינסטנס מסוג החוזה ונעבוד על פיו.   נחשוב על דוגמא שימושית: א.      אני בונה ממשק כניסה בסיסי למערכת בנקאית. ב.      אני רוצה לבצע כניסה ברמות גישה שונות בהתאם למשתמש. ג.       נפשט את זה לרמה של פקיד רגיל ומנהל. ד.      מסך הכניסה שלי זהה לכולם. ה.      מערכת אימות הסיסמאות (bankWorkerGenerator בדוגמא) תבדוק את הסיסמא ותחזיר בהתאם מופע של עובד\מנהל, שוב כדי לפשט עניינים נניח שהסיסמא היא manager\ worker. כיון ששניהם מהווים מימוש של...
2 תגובות