November 2007 - Posts
כפי שהבטחתי אתמול, לאחר שהעלתי את המצגת, עכשיו זמין גם הקוד להורדה. בתוך קובץ הZIP (אחרי שעבר clean) יש קובץ ReadMe שמתאר את הפרוייקטים השונים שתמצאו.
מאחר שבהרצאה כתבתי קוד תוך כדי, כך שהקוד עבר שלבים שונים, העלתי רק חלקים מסויימים של הקוד. מי שמעוניין לקבל חלקים אחרים, מוזמן לכתוב במה הוא מעוניין ואשתדל להעלות.
להזכירכם, אתם מוזמנים גם להוריד את המצגת.
שימו לב, שהמצגת מכילה hidden slides עם מידע נוסף. במידה ועדיין יש לכם שאלה כלשהי על ההרצאה, הקוד או הספרון (שיעלה גם הוא בהמשך), אל תהססו לשאול אותי פה בתגובות או באמצעות טופס יצירת הקשר.
אתם מוזמנים גם לשלוח אימייל ישירות, הכתובת מופיע בספרון ובקובץ ה ReadMe (לא מופיעה פה בבלוג על-מנת למנוע ספאם).
תודה שהשתתפתם בהרצאה!
אני מודה לכל מי שהגיע להרצאה, מקווה שהייתה שימושית לכם, והפקתם ממנה תועלת. כפי שהבטחתי, מצורף לינק למצגת שהעברתי. המצגת מכילה שקופיות מוסתרות עם מידע נוסף שלא הזכרתי בהרצאה ומומלץ שתצפו.
את הקוד המלא ואת הספרון שקיבלתם בתור קובץ XPS ו-PDF, אני אעלה בהמשך. אם יש לכם שאלות בנושא ההרצאה אתם מוזמנים לשאול פה, בתגובות, או באמצעות טופס יצירת הקשרץ
תודה רבה!
שי לוי הפנה את תשומת לבי להכרזה של מיקרוסופט, שלפיה החל מסוף שנת 2008, ייכנס לרשימת הדרישות של כל מוצרי ה Server של מיקרוסופט הדרישה להיות תואמי Windows PowerShell, כלומר בעלי תשתית המבוססת על פאואר של, שתאפשר ניהול שלהם גם משורת הפקודה ומסקריפטים.
מבחינתנו, כמפתחים, החלק המעניין הוא שניתן יהיה להשתמש באותה שכבת PowerShell גם בתור API לאותם המוצרים ולנהל אותם מתוך האפליקציות שלנו.
אם אתם רוצים לדעת איך ניתן יהיה להשתמש באותה שכבת PowerShell בתור API לאותם המוצרים ולעבוד מולם מתוך האפליקציות .NET שלכם בקלות, ואם אתם רוצים לדעת איך גם אתם יכולים לאמץ את שיטת הפיתוח הזאת ולהוסיף שכבת PowerShell לאפליקציות שלכם, בדומה למה שמיקרוסופט עשתה במספר מוצרים ומה שיהפוך חובה החל מסוף 2008 במיקרוסופט, כאשר אותה שכבה תשמש גם כבסיס לGUI, גם ככלי לניהול משורת הפקודה ולכתיבת סקריפטים וגם בתור API מלא לאפליקציות אחרות-
אתם מוזמנים להגיע להרצאה שלי מחר, The Power of Windows PowerShell בשעה 11:00 באולם גולן בקומה 1-!
היום קיבלנו (המרצים) הודעה משמחת - בעקבות בקשות של בלוגרים (כמו אורי) שרצו לעשות לייבבלוגינג מהאירוע, הוחלט לאפשר Wirless גם מהאולמות.
עדיין, החיבור האלחוטי מוגן בשם משתמש וסיסמא, אולם הוא יינתן לכל בלוגר שיבקש זאת. ולכן, אם אתם מעוניינים לבצע Live Blogging מההרצאות השונות, זה בהחלט אפשרי!
שימו לב: לא מדובר באינטרנט חופשי, יש הגבלת שם משתמש וסיסמא, כשהמטרה היא לאפשר לבלוגרים לעשות Live Blogging מהאירוע.
לכן, בעמדת ההרשמה, היכן שאתם מקבלים את תגי המשתתף בכניסה, בלוגרים שהגיעו והצטיידו עם מחשב נייד צריכים להודיע שהם בלוגרים, למסור את כתובת הבלוג, ואז הם יקבלו שם משתמש וסיסמא.
על-מנת למנוע עומס, החלוקה תתנהל בשיטת "כל הקודם זוכה" כלומר במידה ויגיעו מעל 200 בלוגרים עם מחשב נייד, שיבקשו שם משתמש וסיסמא לרשת האלחוטית, הגישה תינתן רק לראשונים, כדי למנוע עומס על הרשת.
גם מי שלא הביא מחשב נייד, עדיין יוכל לקחת חלק ולכתוב בבלוג שלו מפינת הבלוגרים שתהיה בקומה 1-.
אז נתראה מחר.
בעקבות איזשהו דיון בפורום תכנות דוט.נט בתפוז, רציתי לכתוב קצת על המחשבות שלי משימוש ב Dynamic Data Controls.
דבר ראשון, למי שלא מכיר, ASP.NET Futures זה סט של כלים "עתידניים" עבור ASP.NET שארוזים בחבילה אחת. Dynamic Data Controls זה אחד מהכלים הללו.
Dynamic Data Controls, בבסיסם, זה סט של controls חדשים, כאשר כל control עונה על איזשהו צורך חוזר בניהול מידע: control שמייצג את הצורך של הוספת מידע, control שמייצג את הצורך להציג רשימה של המידע, control שמייצג את הצורך בהצגת מידע רחב על פריט מסויים וכו'.
הייחוד ב controls הללו, כפי שהם ארוזים פה, זה שלא מדובר ב controls שעונים על הצורך בתצוגה המתאימה לכל סוג (כפי שכבר קיים ב ASP.NET במילא) אלא controls שעונים גם על הצורך בתצוגה (ע"י זה שבסופו של דבר הם יוצרים מאחורי הקלעים את אותם controls שקיימים בASP.NET) ומצד שני עונים על לוגיקה.
הצורה שבה הם עונים על הלוגיקה, מיועדת לחסוך עבודה, ולצמצם אותה למינימום, ל Drag and Drop. את זה הם עושים ע"י הבנת הסכמה של ה DB שנמצא בפרוייקט, בלי צורך בהגדרות מיוחדות ובקבצי סכמה, אלא למעשה תוך הקפדה על איזושהי סמנטיקה. אם אתה רוצה לעבוד מול טבלה מסויימת, צור תיקייה עם השם של הטבלה.
אם אתה רוצה דף שיציג את פרטים על פריט בודד אתה צריך שהוא יהיה בתיקייה ששמה זהה לשם אחת הטבלאות ויקראו לו Details.aspx, גם ל List.aspx יש משמעות משלו, ולמעשה, מאחורי הקלעים נוצרים איזשהם קישורים בין הדפים השונים. בצורה, שבאמת מדגימה עד כמה פיתוח נעשה קל.
למעשה, את הלוגיקה הוא "מבין" מהסמנטיקה.
אחת מהאפשרויות ב Dynamic Data Controls, זה באמצעות הגדרת פרמטר מסויים בקובץ ה web.config, להגיד לו להבין לבד את סכמת כל הטבלאת ולעבוד איתה. ואז, הוא למעשה בזמן ריצה מבין את הסכימה, ויוצר את הדפים הנחוצים כדי לראות רשימת פריטים, להוסיף פריטים וכו'. מדובר בפיצ'ר חביב, אבל שיוצר דפים לא נוחים לעבודה (גם בתור ממשק ניהול), ולא משהו שרצוי לעשות. גם עבודה כשיוצרים תיקייה לכל טבלה, ושמים בה דפים בשמות המתאימים היא מאד קלה, ומפיקה תוצאות הרבה יותר טובות.
היכולת שלו להבין את סכמת הDB בצורה אוטומטית מרשימה, וראוייה לציון - הוא "מבין" את הקשרים בין הטבלאות, יודע להציג את המידע הרלוונטי, ובכלל הוא הדגמה לעבודה הכי מינימליסטית שאפשר כשמאחורי הקלעים מתבצעת עיקר העבודה.
הקלות הזאת של העבודה מולו, עולה, כמובן, במחיר היכולת לקסטם את הפעולות כרצונך. יש אפשרויות בסיסיות לשנות קצת את הלוגיקה ולהשפיע עליה, יש אפשרות לשנות את העיצוב, אבל כשמתחילים לעשות פעולות קצת יותר מסובכות, מגלים שעם כל העבודה הנדרשת, Dynamic Data Controls הופכים ללא ממש רלוונטיים.
לסיכום, Dynamic Data Controls הם מעולים כאשר יש צורך לבנות אפליקציית WEB פשוטה, כשעיקר הלוגיקה שלה מסתכמת בהבנת הסכמה של הDB - שזה כבר נעשה פה אוטומטית, ובפעולות שונות החוזרות על עצמם שעבורן יש controls.
לכן, זה מתאים בעיקר לבניית ממשקי ניהול, שבאופן טבעי זה מה שהם דורשים, ועם Dynamic Data Controls אפשר לעשות זאת ממש בקלות.
כאשר נדרשת רמה יותר גבוהה של התאמה אישית, למשל בלוגיקה,, לעיתים, יתגלה ש Dynamic Data Controls הם פשוט לא הפיתרון והם למעשה גם לא מתיימרים להיות.
הם מתיימרים להיות הפיתרון לאפליקציות WEB שאמורות להיות מאד פשוטות, ורשימת הדרישות שלהם היא רשימת הדרישות השגרתית כשעובדים עם נתונים.
ל Windows PowerShell יש תכונה, לא מי-יודע-מה שימושית, אבל קיימת. אפשר לבצע איתו כמה חישובים.
החל מתרגילים של חמש כפול חמש, כולל תמיכה בחוקי פעולות וכו'. אפשר גם לעשות שם חישובים של 600 ג'יגה חלקי 700 מגה (כמה מדיות CD צריך לגבות דיסק של 600 ג'יגה?) וכאלה.
ב PowerShell 2 CTP, יש לו גם קבוע לטרה-בייט ולפטה-בייט. שיהיה.
![image_thumb[1]](http://blogs.microsoft.co.il/blogs/shahar/WindowsLiveWriter/DeveloperAcademy_EED9/image_thumb%5B1%5D_thumb.png)
מה משותף לכל הדוגמיות אפליקציות שמופיעות פה?
אפליקציות שמבוססות על כל אחד מהם (אופיס עם VSTO, WIN, WEB, MMC וכו') יכולות להיות מבוססות על Windows PowerShell וממש בקלות!
וגם אם האפליקציות כבר קיימות, עדיין ניתן לייעל תהליכים ולבצע עבודה בצורה מהירה יותר וטובה יותר בקלות תוך שימוש ב Windows PowerShell.
רוצים לדעת איך?
בואו ב 27 בנובמבר לכנס Developer Academy 2 (אם נרשמתם), בשעה 11:00-12:15 באולם גולן בקומה 1-.
בעודי גולש, ראיתי פירסומת שדי פיתה אותי ללחוץ עליה:
לחצתי, והגעתי לדף כמו זה:
פרסומת יפה!
כולם מבשרים לנו, בכל בלוג שעוסק בנושא, ש Visual Studio 2008 בגרסאתו ה RTM-ית שוחרר למנויי MSDN. יש שמשבחים, יש שקצת פחות ויש כאלה שבכלל לא יכולים לבדוק מסיבות טכניות הזויות לחלוטין.
את ההרצאה שלי, ב Developer Academy II בנושא Windows PowerShell אני אעביר עם Visual Studio 2008 Beta 2.
הסיבה היא שלא חס וחלילה שאני חושב שיש באגים ב VS 2008 הסופי. אני משוכנע (משוכנע. מאד משוכנע. בערך משוכנע. יכול להיות שלא משוכנע) שכל הבאגים תוקנו, אני משוכנע שלא כמו בבטא 2, לא ייעלמו לי פרוייקטים מה soulution. אני משוכנע ש code snippets לא יופיעו וייעלמו כרצונם, ושקוד ששמתי ב toolbox באמת יישאר שם. אני משוכנע שלא כמו בבטא 2, לא יהיו הודעולת שגיאה מוזרות והזויות בעת עליית VS, ואני משוכנע לחלוטין שה Windows Forms designer לא ישתגע ויאבד את המיקום של כל ה controls שלו וייתקע לחלוטין כשאני אחבר עוד מסך ללפטופ ואעביר את החלון של VS למסך השני. משוכנע לחלוטין (בערך).
ולמרות שאני כ"כ משוכנע, את ההרצאה אני אעביר עם גרסאת הבטא. ולמה? כי את הבאגים שיש בבטא אני כבר מכיר, אני כבר יודע איך להתמודד איתם אם הם מופיעים ולא לעשות את הדברים שגורמים להם. כשמשדרגים לגרסא חדשה, אפילו שהיא גרסא סופית שאמורה להיות בלי באגים, אתה צריך ללמוד להתמודד עם כל השטיקים שלה מחדש.
ואין לי מספיק אורך רוח, 8 ימים לפני ההרצאה (27 בנובמבר, Airport City) להתחיל לעשות ניסויים.
סתם אנקדוטה משנה שעברה - בערב שלפני החזרה הגנרלית שהייתה אמורה להיות לי עם יוסי תאגורי, התקנתי עדכונים לויסטה. אחד מהם, היה עדכון שכנראה שינה איכשהו את מנוע הרינדור של IE, שכנראה השפיע איכשהו על דרך הפעולה של ה- sidebar. עד היום אני לא יודע במאה אחוז מאיפה הייתה הבעייה. אותו השינוי התנגש עם כמה דברים שעשיתי בהרצאה, שהיו מיועדים להקל על העברת ההרצאה ולחסוך זמן תוך כדי. כשגיליתי שהדברים האלה לא עבדו, הייתי צריך להתחיל להתחכם ולראות מה לעשות ואיפה הבעייה.
בגלל שאין לי רצון לעשות את זה שוב, אני מראש מתנצל, אותי תראו מרצה עם בטא 2.
נשאלתי האם ההרצאה שלי, שאותה אעביר ב Developer Academy 2 (תירשמו בהקדם האפשרי) רלוונטית גם למפתחים שלא מפתחים אפליקציות עבור אנשי IT, לא ממש מעניין אותם מה console וסקריפטינג מבחינתם זאת מילה גסה.
התשובה היא כן. גם אם אתם כותבים אפליקציות שלא קשורות בכלל לתחום הIT, ואפילו אם יש לכם אפליקציה שהיא בנוייה לחלוטין, שימוש ב Windows PowerShell יכל להקל עליכם ולייעל לכם תהליכים רבים. דוגמאות? הוכחות? יישום? את זה תראו בהרצאה.
ההרשמה לכנס המפתחים השנתי, Developer Academy 2 נפתחה, וניתן להירשם כבר עכשיו מפה.
מומלץ מאד למהר ולהירשם, כי בכנס הנוכחי, בניגוד לקודם, יקפידו יותר על כניסה רק של אנשים שנרשמו, כדי למנוע את העומסים שהיו שנה שעברה.
אז הירשמו כבר עכשיו, כי מניסיון, ההרשמות לכנסים הללו נגמרות מאד מהר.
וכמובן אל תשכחו להגיע להרצאה שלי, The Power of Windows PowerShell. בשביל ללמוד לפתח ל Windows PowerShell כיום, ללמוד איך להשתמש ב powershell כדי להקל על עבודת הפיתוח, בין אם ע"י התבססות מלאה על התשתית שלו ובין אם רק ע"י שימוש חלקי באיזורים מסויימים.
כמו כן, עכשיו, לאחר שיצא ה-CTP של PowerShell 2, תוכלו לקבל גם הצצה קטנה אל עבר מה שמצפה בהמשך.
בהצעתו של גיא בורשטיין, ובהשראת הנהוג באירועים של מיקרוסופט ברחבי העולם, כתבתי gadget שסופר
לאחור את הימים ל Developer Academy 2.
העיצוב באדיבות מיכל.
להורדת הגאדג'ט, לחצו כאן. יש לשמור למחשב, לשנות את הסיומת ל gadget. ולהריץ.
ואל תשכחו, להגיע להרצאה שלי ב Developer Academy בנושא פיתוח עבור Windows PowerShell.
אחד היתרונות בשירות דואר חדש ובתולי, זה כמות הכתובות הקליטות והקצרות (משם פרטי) שיש בו. במהלך האירוע, מיקרוסופט גם חילקו לנו קופסת כרטיסי ביקור כזאת, שבתוכה כרטיס שמעביר בדיוק את המסר הזה.
רשמתי כבר כמה כתובות לי ולמכרים, ובאמת, ניתן למצוא כתובות זמינות וקליטות.
דרך אגב, מי ש windowslive.com (הכתובת שיש לנרשמים שהם עבריים, לכאורה, מאחר שהעברית מוגדרת אצלם ראשונה בIE) ארוך לו מדי, יכול לשים את האנגלית ראשונה בIE, להירשם תחת live.com ואז לגשת ולהחליף את השפה מה Options שיש שם.
תמהרו, כי נדמה לי שבעלי השמות הנפוצים כבר לא ימצאו כתובת רק עם השם הפרטי שלהם, אבל עדיין ימצאו כל מיני וריאציות קליטות (שם פרטי ואות ראשונה שם שם משפחה וכו'). בעלי השמות הייחודיים - הרווחתם.
בדקתי את הרלוונטיות של התוצאות לגבי חיפוש של השם שלי בגוגל ובMSN, בהמשך למה שדיברו פה. דני ימין אמר שבאמת, מיקרוסופט, דה פאקטו לא מובילה בתחום החיפוש
הנה 2 חלונות החיפוש אחת ליד השנייה. אני חייב לציין שאלה של MSN, פשוט יותר רלוונטיות. נכון, שלא שופטים לפי ego search באיזה מנוע חיפוש להשתמש, אבל זה בהחלט מעלה כמה תובנות מעניינות.
ביצעתי בדיקה לגבי המונח "גורילה", ושם משתבר שגוגל הרבה יותר מדוייק. טיפ לMSN: להציג קודם את הערך מויקיפדיה, אם קיים:
והנה, השוואה בין Live לגוגל:
כשמחפשים גורילה, או מונחים שהם קצת יותר לכיוון המונחים שבהם אנשים יחפשו, נראה כאילו Live מציג תוצאות קצת יותר מדי אנגליות.
השוואה על קצה המזלג, לא מלאה, אבל בהחלט מעלת תובנות.
שחר.
הערה: לחיצה על כל התמונות תציג אותם בצורה מוגדלת.
More Posts
Next page »