שלום לכולם,
לאחרונה, שוחררה למפתחים גרסת CTP ראשונה ל-Visual Studio 2010 ו-NET Framework
4.0.
בגרסה זו נכללת הגרסה העתידית של #C הידועה בשם
4.0 #C.
הגרסה הרביעית של השפה כוללת מס' חידושים מעניינים אשר העיקרי שבהם הוא התמיכה ב-
Dynamic Programming, יכולת אשר אדגים בקטע וידאו זה.
Dynamic Programming היא היכולת להריץ מתודות, מאפיינים, אופרטורים, אינדקסים וכ"ו בצורה דינאמית ללא תלות באוביקט מסויים.
יכולת זו מושגת ע"י מילת מפתח חדשה בתחביר השפה:
dynamic.
ע"י הגדרת אוביקט מסוג dynamic, שפת #C מאפשרת לך להריץ כמעט כל מתודה שתרצה על אותו אוביקט ללא תלות בשמה או הפרמטרים שלה.
במקרה זה, סוג האוביקט האמיתי של אותו משתנה יקבע בזמן ריצה ולא בזמן קומפילציה (במידה ולא נמצאה מתודה מתאימה לאוביקט נזרקת Exception).
היכולת Dynamic Programming מתאפשרת ע"י
Dynamic Language Runtime ו-
C# Runtime Binder, רכיבים חדשים שפותחו ב-NET Framework
4.0.
בעת השימוש במילה
dynamic, הקומפיילר יוצר "dynamic call site" שתפקידו לנהל ע"י שני הרכיבים הנ"ל את כל הפעולות הנדרשות לביצוע Dynamic Programming.
יש עוד הרבה להרחיב בנושא, אך אני יודע שזה לא פשוט לעכל זאת בפעם הראשונה ולכן נסתפק בינתיים בהסבר זה.
בקטע הוידאו, אראה כיצד להשתמש ב-Dynamic Programming על מנת לחשב את המספר הגדול יותר מבין 2 מספרים נתונים.
אעשה זאת ע"י הרצת מתודה דינאמית ב-3 אוביקטים שונים ללא קשר ישיר או עקיף ביניהם.
רזולוציה מומלצת: 1280x1024.
צפיה נעימה!