WPF - ערפול קוד למאפיינים שבשימוש הבינדינג
-
אכן אתה צודק שאם אני מפתח תוכנה לניהול מוסד או משרד וכדומה ומקבל את מלוא התמורה על כל דקת עבודה זה כבר לא מעניין אותי מה יקרה עם הקוד, וגם כמו שאמרת רוב הסיכויים שלא יקרה לו כלום והוא ישאר שלי לנצח, אבל הבעיה זה עם תוכנות בסגנון פרוייקט השו''ת ואוצר החכמה ודומיהם שהאלו תוכנות אצמעיות שכל אחד יכול להעתיק ולהשתמש אם לא תהיה חסימה סבירה.
וכאן באה ההגנה על הקוד עם ערפול שמות קלאסים ופונקציות וכל השאר, עם הכלי של VS ניסיתי אבל הוא ערפל פחות מ 40
אחוז.פורסם במקור בפורום CODE613 ב08/11/2013 00:48 (+02:00)
-
אם אתה לא משנה את שמות המאפיינים אז קל להתמצאת בתוך האסמבלי ולזהות מה יוצא ממה וכו', ובפרט אם הפורץ לא מעוניין בקוד מקור אלא רק בלפרוץ את מנגונוני החסימה בדיקת הרשיון וכדומה. זה הרושם שקיבלתי כאשר פתחתי את התוכנות שלי ברפלקטור. ופאצ' אחד קטן יכול להפצח את הכל!
בWIN FORMS הערפול הוא טוטאלי גם לשמות פקדים וגם לשמות מאפיינים וגם למחרוזות אבל ב WPF אם לא תתרגם כל בינדינג בתוך ה XAML לקוד דוטנט אי אפשר לערפל אותו, אז לכן אני ללמוד רוצה איך מלכתחילה כל בינדינג לכתוב בתוך הקוד ולא בתוך ה XAML.
מה שלא ידוע לי בנתיים זה לתרגם Style ו Triggers וטמפלטים, וגם אולי אפשר לכתוב הכל בתוך הXAML ורק את בינדינג בתוך הקוד, או שזה יקשה על התחזוקה.פורסם במקור בפורום CODE613 ב10/11/2013 16:23 (+02:00)
-
א. עד כמה שזכור לי, בכל מקרה בקומפילציה כל הזאמל (XAML) הופך לקוד בדיוק כאילו כך כתבת אותו במקור. לא כך? בדוק ברפלקטור.
ב. אני לא הבנתי כלל מה אכפת שידעו את כל שמות המאפיינים.
ג. אני יכול להראות לך איך לעשות כל קוד זאמל בC# או VB.NET, אך זה יוציא לך מהר את החשק מWPF.פורסם במקור בפורום CODE613 ב11/11/2013 15:14 (+02:00)
-
א. נכון, מסמך הXAML מופוע בדיוק כמו שעזבת אותו ב VS בתוך הרפלקטור, אבל מסמך כזה ללא בטמפלטס שלו בלא הבינדיגס שלו ובלא בסטולס שלו אין מה לעשות איתו לפורץ הפוטנציאלי.
ב. קשה לי להסביר שחור על גבי לבן מה יהיה בלי או עם מאפיינים לא מעורפלים אבל בגדול זה נותן קושי על קושי לפרוץ כאשר מטשטשים כמה שיותר.
ג. אשמח לדעת בכל מקרה, החשק שלי לWPF לא היה בשביל חויית תיכונת, אל כדי לנצל באמת את היתרונות של WPF בתחום ממשק משתמש והצגת מידע, ולא מפריע לי לעבוד קשה....
בא נתחיל מהקוד של בורר תאריכים עם לחצן 'היום' שפרסמתי כאן.פורסם במקור בפורום CODE613 ב11/11/2013 16:21 (+02:00)
-
@דוד ל.ט.
הגנרטור הזה תרגם לי את זה כך:
Dim binding9 As System.Windows.Data.Binding = New System.Windows.Data.Binding("Name") Dim binding11 As System.Windows.Data.Binding = New System.Windows.Data.Binding("DateChange")
כך שהשמות של המאפיינים עדיין מוצגים כמחרוזת וכאשר אעשה RenameSymbol התוכנית לא תפעל.
פורסם במקור בפורום CODE613 ב12/11/2013 14:30 (+02:00)