RSS

עקב אכילס של XAML

11 יול

עקב אכילס של XAML

בזמן האחרון יש קרב בין אנשי Silverlight ל-HTML 5 למי יש "גדול יותר". ברצוני להזכיר לכם שכשיצא SL  אמרו שהוא "יהרוג" את פלאש, וזה לא קרה. שיצא דוט-נט אמרו שה-COM  יעלם מהעולם, וזה לא קרה… הדברים הם לא שחור ולבן, וצריך לבחון כל אפלקציה באיזה טכנולוגיה הכי נכון לפתח אותה בהקשר של משתמשים, והמכשירים שאמורים להריץ אותה. (יש עוד אספקטים שצריך לבדוק אך לא על זה אני רוצה לכתוב ).

אותי בעיקר מעסיק בזמן האחרון האםXAML  הוא כל כך טוב כמו שהוא נראה? מאפשר לנו להפריד בין איך הפקד, המסך נראה ובין הלוגיקה של הפקד, מסך. במילים פשוטות הפקדים חסרי ויזואל כי אפשר לתת להם בפרופרטי Template איזה לוק שרוצים. נשמע טוב, נראה טוב אז איפה הבעיה? או, אז על זה אני רוצה לכתוב…

הבעיה שזה מסובך מדי…

לאחר אין ספור סדנאות שאני עושה בנושא ועבודה עם זאמליסטים הגעתי למסקנה הבאה:

ה-XAML  מסובך מדי כי כשאתה רוצה לעצב פקד אתה עורך את פרופרטי Template ע"י פקדים אחרים. לדוגמא: נניח שאני רוצה ליצר את הפקד הבא:

מצב פתוח:

clip_image001

מצב סגור:

clip_image002

 

כדי לבנות את הפקד אקורדיון אני צריך לחשוב האם יש פה ListBox בתוך ListBox או אולי אני אשתמש ב-Expander, איזה חלק שייך ל- ItemContainerStyleואיזה חלק שייך ל- ItemTemplate, בקיצור יום לימודים ארוך כדי לבנות את זה ב- Blend. נראה אותכם מסבירים את זה למעצב או תכנת HTML… לא נראה לי.

עכשיו נשווה את זה ל-HTML עם עבודה עם JQuery.

1.     עיצוב שני DIV’s:

מצב סגור:

clip_image003

מצב פתוח:

clip_image004

2.     תיכנות תבניות ה-DIV  באופן דינמי ע"פ המידע שרוצים להציג.
אפשר ע"י
Asp.Net MVC. למשל זה הקוד שיש לי בדף שמציג את הקורסים ע"פ נושאים באקורדיון באתר
Expert Days.

clip_image005

הקוד רץ בלולאה ומיצר את ה-DIV  שמייצגים את המצב הסגור ( "courseCnt" ) ו-DIV שמייצג את המצב הפתוח ("course_open") ובתוך לולאה הזו יש עוד לולאה שמיצרת את ה-DIV’s שמייצגים את הקורסים.

 

3.     חיבור האקורדיון ללוגיקה, JQuery.

clip_image006

וזהו. לא צריך יום לימודים ארוך (אפשר לראות תיעוד באתר של JQuery).

סיכום:

העבודה עם XAML מחיבת שליטה מלאה ביכולות הפקד והיכרות טובה עם כל סוגי ה-Templates שיש לו. כלומר ב-XAML יש עימוד ועיצוב ביחד עם לוגיקה, מעצם הבחירה של פקד מסוים לשימוש בתוך תבנית של פקד אחר בגלל היכולות שהוא מביא לשולחן. למשל אם תרצו שבתוך ה- ComboBox יהיה כפתור שעושה מחיקה לבחירה של ה- ComboBox אז אתם תבחרו ב-Button ולא בRectangle –, אין לו Click או Command פרופרטי. כתוצאה מכך נדרשת רמה גבוהה ב-XAML  על מנת ליצר Styleלים איכותים.

עבודה עם HTML ו-CSS  פשוטה יותר, וה-JQuery פשוט יתחבר ל-HTML  ויכניס בו "חיים", נכון שאני מעדיף לכתוב דוט-נט, שפה שעוברת קומפילציה ולא עם JQuery, אך אי אפשר להתעלם מהעובדה הפשוטה שמאז שיצא WPF  אין הרבה XAMLליסטים טובים, כי זה פשוט מסובך מדי…

Advertisements
 
תגובה אחת

פורסם ע"י ב- יולי 11, 2011 ב- Uncategorized

 

תגובה אחת ל-“עקב אכילס של XAML

  1. oren liniado

    יולי 26, 2011 at 9:16 am

    מצטער אבל הדברים הינם חסרי שחר , אני עובד עם expression blend 4 ומפתוח אפליקציות silverlight כבר למעלה משנה והדברים מאוד פשוטים !!! , פשוט צריך קצת לשבת טיפה וללמוד.בל נשכח את יכולות ה – Binding ו ה – states שהם יכולות מהדימות שאמנם אני לא מכיר את ה – java & html אבל הקלות של העברת המידע לפקדים היא לא מוטלת בספק .

     

כתיבת תגובה

הזינו את פרטיכם בטופס, או לחצו על אחד מהאייקונים כדי להשתמש בחשבון קיים:

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s

 
%d בלוגרים אהבו את זה: