מה חדש ב Visual studio 2010?
סקירה קצרה ממעוף הציפור וכמה טיפים שיקלו עליכם את השדרוג.
אמנם VS2010 נמצא בסביבה כבר זמן מה, אך נראה כי האימוץ בתעשייה החל רק בחודשים האחרונים, וזאת לאחר שהוכח כי זו סביבה בשלה היטב ומוכנה להשתלב בתהליכי פיתוח מורכבים בחברות רבות. אם כך זו הזדמנות טובה לבחון את מהות השינויים והחידושים העיקרים בהיבט הפרקטי.
כידוע, מיקרוסופט דואגת להעסיק אותנו המפתחים, ולהוציא גרסאות חדשות ויעילות של ה Visual studio מדי תקופה, אך לפעמים נדמה כי שדרוג גרסה עלול לגרום ללא מעט כאבי ראש בתהליך פיתוח קיים.
יחד עם זאת נראה כי הגרסא האחרונה מביאה איתה חידושים מהותיים הרבה מעבר למתיחת פנים קוסמטית, שינויים שבזכותם אולי אף שווה לכם לשקול ולשדרג.
אם נשווה בין הגרסה הראשונה של visual studio סביבת דוטנט (NET.) אל מול הגרסה האחרונה נראה כי מדובר פשוט בעולמות שונים לחלוטין.
השינוי המשמעותי של ה Editor התרחש בגרסת 2005 , שם נכנס ה Refactoring בצורה משמעותית וה- Code snippet תפסו במה רצינית, ב 2008 קיבלנו תוספות חזקות ויעילות וב2010 אפילו ה UI אחרת ומרשים יותר.
אז....מה חדש בVS2010 ?
1. Zoom
2. Call hierarchy
3. Generate From Usage
4. IntelliSense Suggestion Mode
5. Dynamic Support
6. Extension manager
7. ועוד..
רואים ומראים את הקוד בצורה טובה יותר - ZOOM
VS2010 מאפשר לנו לבצע זום לקוד שלנו או ל Designersשאנחנו עובדים איתם בצורה מאוד פשוטה ובלי לאבד את איכות וחדות התמונה. אפשר לבצע את הזום או באמצעות בחירת אחוז רלוונטי בתוך ה Editor (צד שמאל למטה) או באמצעות הגלגלת של העכבר בשילוב עם ctrl, פשוט ונוח.
מוצאים את השגיאות ומבינים את הקוד מהר יותר - Call hierarchy
VS2010 מאפשר לנו בכל רגע נתון לראות מה ההיררכיה של פונקציה מסוימת. אנחנו יכולים לראות איזו פונקציה או קטע קוד מפעיל את הפונקציה שאנחנו עומדים עליה ואיזה פונקציות הפונקציה שאנחנו עומדים עליה מפעילה. על מנת לראות את ההיררכיה יש ללחוץ קליק ימני על הפונקציה ולבחור את View Call hierarchy לאוהבי המקלדת Ctrl + T + K.
הקוד שלנו זורם יותר - Generate From Usage:
כל מי העובד או עבד בגרסאות קודמות של VS יודע שהשילוב Alt+Shift+ F10 מקל לנו על החיים בלא מעט מקרים, לדוגמא : הוספת Using אוטומטי, מימוש של מחלקה אבסטרקטית או interface אוטומטי וכו' (שונאי הקיצורים יכולים להשתמש בעכבר, כל פעם שמופיע קו קטן מתחת למילה מסוימת בקוד שלנו, פשוט ללחוץ עליו ויפתחו האופציות).
ב 2010 יש שינוי קטן שחשוב לשים אליו לב, אם נכתוב את הקוד הבא :Person p = new Person() , והמחלקה Person לא קיימת, כאשר נעמוד על המילה Person נראה את הסימון הרגיל שמוכר לנו ממחסור ב Using. אם נפתח את התפריט נראה את האפשרות של Generate Person"".
כן, Vs 2010 מאפשר לנו להשתמש במחלקות שלא קיימות בקוד שלנו ואחר כך לייצר אותם עבורנו אוטומטית כולל שדות, אירועים וכו'.
שימו לב, אם כתבתם שם של מחלקה לא נכון ומהרגל אתם מוסיפים Using באמצעות Alt + Shift + F10 תיווצר לכם מחלקה בשם השגוי אוטומטית.
יותר בחירה - IntelliSense Suggestion Mode
ב 2010 עשו 2 שינויים עיקריים ה IntelliSense (הרשימה הנפתחת).
1. הרשימה המוצעת היא לא רק רשימה של פריטים המתחילים באותיות שכתבנו אלא פריטים שמכילים את מה שכתבנו. אם אנחנו זוכרים ששם של מאפיין מסוים הוא משהו שמסתיים בColumns, ונכתוב בקוד את המילה Columns נקבל ברשימה גם את המאפיין שחיפשנו.
2. נתנו לנו את האפשרות לבחור האם אנחנו רוצים שה Editor ישלים לנו את המילה או רק יציע את האפשרויות הדומות. את השינוי ניתן לבצע בפשטות באמצעות Alt + Ctrl + Space.
מה זה, Java script ?! - Dynamic Support
אחד השינויים המשמעותיים שנכנסו ב Framework 4.0 הוא ה Dynamic. כאשר פונקציה מסוימת מקבלת Object הפונקציות היחידות שנוכל להפעיל הם הפונקציות של Object(ToString, GetHashCode וכו') כל פונקציה של אובייקט אחר שנרצה להפעיל נצטרך לבצע casting לסוג של אותו אובייקט ואז להפעיל את הפונקציה. כל דבר אחר שננסה לעשות לא יעבור Compile. ב 2010 יש שינוי. אני יכול לבקש מה Complier "לסלוח" לי על חלקים מסוימים בזמן ה Compile ולנסות להפעיל דברים ב runtime. לדוגמא, אם הפונקציה מקבלת dynamic x במקום object x נוכל לכתוב x.DoDo() או כל דבר אחר שבא לנו והקוד יעבור Compile, אם הפונקציה DoDo קיימת באובייקט x אז היא תופעל אחרת תיזרק שגיאה בזמן ריצה. כמובן שמאוחרי הקלעים יש reflection. אם בכל מקרה היינו משתמשים ב reflection הקלו עלינו בצורה משמעותית בכתיבה. שימושים נוספים של Dynamic ניתן לראות ב http://blog.colinmackay.net/archive/2009/06/04/Dynamic-Objects-in-C-4.0.aspx.
הרחבות שימושיות - Extension manager
בvs2010 קיימת האפשרות להוסיף ולנהל תוספות ל VS בצורה פשוטה. את הExtension manager ניתן למצוא בתפריט ה Tools. שווה להיות מעודכן לגבי התוספות החדשות כי קיימות לא מעט תוספות שיכולות להקל לנו על החיים בצורה משמעותית.
תוספות מומלצות :
1. Snippet designer
2. Productivity Power Tools
3. Ado.net C# POCO Entity generator
4. XAML Power toys
במאמר זה דיברנו בקצרה על החידושים ב Editor, ומעט חידושים בשפה ובסביבה עצמה. ישנם לא מעט תוספות ושינויים ה Framework כולו, שווה להכיר.
איך מוסיפים את מספרי השורות ?!
קורה לנו לא פעם שאנחנו מחפשים איזה יכולת קטנה של ה VS שמסתתרת איפשהו, מספרי שורות, שינוי פונט וכו'.
VS 2010 מכיל חלק די משמעותי של Add On שניתן להוסיף.
אחד ה Add ons החשובים הוא ה Productivity power tool. את ה Add on הזה ועוד אחרים ניתן למצוא באמצעות לחיצה על הכפתור הבא או דרך התפריט (Tools - > Extension Manager).
אחרי שתתקינו אותו, פשוט תלחצו על Ctrl + 3 ותיפתח רשימת חיפוש של כל האפשרויות בתוך ה VS עצמו.
בקיצור, חדל חיפושים
תהנו
עובדים ב WPF ונמאס לכם לצייר טבלאות או להגדיר ידינית DataGrid ?! יש פיתרון חזק מאוד.
על מנת להינות מהפיתרון שאני אציג עוד שניה יש להוריד ל VS2010 את התוספת XAML Power Toys דרך ה Extension manager.
ברגע שהתקנתם אותו על ה VS 2010 שלכם תוכלו ללכת ל XAML ותראו שבContext menu נוסף חלק של ה Power toys.
כמו שאתם רואים בתמונה, יש לא מעט אופציות שמקלות לנו על החיים.
לדוגמא : Group into שמקביל ל Surround with מ C#.
אבל החלקים החזקים יותר הם החלקים של ה Grid וה DataForm, ניתן להגדיר לכלי מחלקה מסוימת לעריכה/עדכון והוא יצור עבורנו את הטופס/ה DataGrid המבוקש.
אם תסתכלו בצילום מסך הבא תראו את המסך המדובר , על מנת להגיע למסך זה בחרתי את האפשרות של "Create Form, ListView Of DataGrid From Selected Class":
מה שנשאר לעשות זה לגרור את העמודות הרלוונטיות לחלק הימני במסך. מה שהוא יוצר זה את השדה לעריכה. ניתן לבחור את סוג ה Control ואת סוג ה Binding.
בסיום התהליך הוא פשוט מעתיק את כל ה XAML שהוא יצר ל Clipboard.
נשאר לנו משימה לא פשוטה, לבצע Paste במקום הרלוונטי בקוד שלנו.
מעוניינים להרחיב את הידע על Visual studio 2010? – הצטרפו לקורס .NET בג'ון ברייס הדרכה.
כותב המאמר הוא שמעון דהן - מנהל תחום פיתוח .Net בג'ון ברייס הדרכה