
dynamic ושונות (variance) באוספים ובהשוואות.DrawRectangle עם רוחב, גובה, x, y וצבע, שמציירת מלבן מלא בכוכביות. תנו לכל פרמטר ערך ברירת מחדל וקראו לה בשש דרכים, מבלי פרמטרים ועד חמישה.Calculator עם Add. הציבו אובייקט ברפרנס dynamic וקראו ל-Add. אחר כך קראו ל-Sub שאינה קיימת: הקומפילציה עוברת וההרצה נכשלת. הוסיפו את Sub ובדקו שהכל עובד.ElectronicDevice עם יצרן ודגם, ו-Toaster שיורשת ממנו עם MaxHeat, שתיהן עם ToString. פונקציה ShowDevices מקבלת IEnumerable של ElectronicDevice. העבירו אליה List של טוסטרים ובדקו ב-.NET 4 וב-3.5, והסבירו למה זה לא עובד ב-3.5.ManufacturerModelComparer שמממשת IComparer של ElectronicDevice. משווים לפי יצרן ורק אם הם שווים לפי דגם. העבירו אותה ל-Sort של רשימת הטוסטרים, והציגו לפני ואחרי. בדקו גם ב-3.5 וב-4.0.הטקסט המלא של הדקות הראשונות בהרצאה «תרגילים על חידושים ב-C# ver 4» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
רגילים בנושא פי שרפ ארבע. צרו פונקציה בשם drawRectangle שמקבלת את הפרמטרים הבאים רוחב, גובה, x, y וצבע. הפונקציה אמורה לצייר מלבן במימדים האלה שקיבלה, מלבן מלא בכוכביות, במימדים, במיקום ובצבע שהתקבלו לפונקציה.
לאחר מכן עבור כל אחד מהפרמטרים הללו צרו ערך default כך שכולם יהיו optional parameters. לאחר מכן קראו לפונקציה הזאת בשש דרכים שונות.
בלי פרמטרים, עם פרמטר אחד, עם שני פרמטרים, עם שלושה, עם ארבעה ועם חמישה פרמטרים, כלומר קריאה עבור כל הפרמטרים, ובדקו שכל קריאה כזאת עובדת כמו שצריך.
המשיכו מהתרגיל הקודם וקראו עוד פעם לדרור ויקטנגל, אבל הפעם שילחו כל פרמטר בסדר אחר מהסדר המקורי שלו על ידי טכניקת ה-Named Parameters.
עצרו מחלקה חדשה בשם Calculator שמכילה פונקציית Add אחת בלבד שמקבלת שני מספרים ומחזירה את הסכום שלהם. בעזרת המילה השמורה Dynamic, עצרו רפרנס מטיפוס Dynamic והכניסו אליו אובייקט Calculator.
לאחר מכן קיראו לה פונקציית Add, שלחו אליה ערכים, הציגו את הערך המוחזר, בצעו קומפילציה של כל הסיפור הזה ובצעו הרצאה והכל אמור לעבוד כמו שצריך.
לאחר מכן, בעזרת אותו רפרנס, שיעור לפונקציית סאב שאין לכם אותה כרגע. בצעו קומפילציה ותראו שהקומפילציה אמורה לעבור.
בצעו הרצה וצפו בשגיאה שמתרחשת. לאחר מכן חזרו למחלקה קלקולטור והוסיפו פונקציית סאב שמקבלת שני מספרים ומחזירה את המנה שלהם.
בצעו שוב פעם קומפילציה וריצה ותראו שהכל עובד כמו שצריך. בוצעו מחלקה שנקראת אלקטרוניק דיווייס שמכילה מניופקטורר כלומר יצרן ומודל כלומר הדגם של