c# .net home work1 mycode overview
TRANSCRIPT
C# .Net - Home Work 1
רייפמן דורון :מרצה
Net Framework. -ול C#לשפת מבוא
Home Work 1 - My code overview.
Student (1)
C#.Net, רייפמן דורון
.משתנים•
•Properties.
. לא חובה. SubjetListהסתרתי את •
Set לא הגיוני בכלל אז הורדתי אותו.
Student (2)
C#.Net, רייפמן דורון
•Constructor.
.בלי פרמטרים Constructorתמיד לממש •
.DocString -שימו לב ל•
Copy Constructor -שימו לב ל•
Student (4)
C#.Net, רייפמן דורון
•Public Methods.
.פונקציה לייצור טקסט כולל כל המקצועות•
.שימו לב למימוש תנאי בדרך מקוצרת•
פונקציה להחזיר כמות מקצועות כדי לאפשר •
.עם אינדקס לופ
שהיא גם . פונקציה להוספה ומציאת מקצוע•
וגם ממומשת האינדקסרקיימת בכפילות עם
.ברשימת המקצועות
Student (5)
C#.Net, רייפמן דורון
•Interfaces.
•Compare.
•Clone
Copy -שימו לב לשימוש ב•
Constructor.
•Enumerator לאפשר לעשות
foreach על רשימת המקצועות
.למרות שהחבאתי אותה
Student (6)
C#.Net, רייפמן דורון
•Indexers.
.אינדקסריםשימו לב לשני •
.הדיקשנרישל , אחד עם מפתח טקסט•
. forעם אינדקס בשביל איטרציהאחד לאפשר •
.Countפונקציה פומבית , יש לו חבר
שהרי אם הייתי חושף . יש בזה כפילות מסוימת•
הייתי מקבל את כל . את רשימת המקצועות
לדעתי זה יותר יפה . השירותים האלה ממנה
.ככה
.הערות והסברים, שורות קוד עם התיעוד 240•
.Studentזהו סיימנו עם •
•Subject מאד דומה ולכן אין צורך להסביר אותו.
StudentList(1)
C#.Net, רייפמן דורון
•Members.
•Properties.
שימו לב שהחבאתי את רשימת המקצועות •
לא עניינו של . ממויין בדיקשנרישמוחזקת
מי שמשתמש בי איך אני מחזיק את
.הרשימה
במידה ואבחר להחזיק את הרשימה בדרך •
כל מי שמשתמש בי לא ייפגע , אחרת
.מהשינוי
StudentList(2)
C#.Net, רייפמן דורון
•Constructor.
•Constuctor בלי פרמטרים.
•CopyConstuctor . שימו לב ש
Dictionary לא מימש אתClone אבל כן
שבו אני עושה CopyConstructorאת
שימו לב שהוא לא עושה . שימוש
DeepClone אלא רקShallow
Cloneשזה מה שאנחנו רוצים.
StudentList(4)
C#.Net, רייפמן דורון
•ToString .אין באמת מה לענות חוץ משם האובייקט .
.הדיפולטיביתזו האימפלמנטציה , אגב
StudentList(5)
C#.Net, רייפמן דורון
•Add and Find האינדקסרשממומשים גם דרך
.בהמשך
•IsExist כדי לאפשר לטופס לבדוק האם הסטודנט
.Exceptionכבר קיים ולא לחטוף
•Count כדי לאפשרfor.
StudentList(6)
C#.Net, רייפמן דורון
•Indexers.
.הדיקשנריאחד לפי מפתח •
לעשות Countאחד שמאפשר ביחד עם •
for ולעבור לפי אינדקס.
StudentList(7)
C#.Net, רייפמן דורון
•Interfaces.
•Ienumerator לאפשרforeach.
•Clone שעושה שימוש באימפלמנטציה
.CopyConstructorשל ה
.הערות והסברים, שורות עם התיעוד 170•
. StudentListזהו סיימנו עם •
SubjectList מאד דומה ולכן אין צורך
.להסביר אותו
School(1)
C#.Net, רייפמן דורון
.שנשתמש בו בהמשך enumהגדרת •
•Members.
•Properties . כאן כבר לא מגנים על
הגישה לרשימות שכבר ממומשות באופן
.מבחוץ לא הגיוני setכמובן ש . מוחבא
School(4)
C#.Net, רייפמן דורון
.Wrappersעוד כמה •
שימו לב לאלגנטיות של שיוך סטודנט •
בזכות . למקצוע ומקצוע לסטודנט
השירותים שאנחנו מקבלים
.מהאובייקטים של סטודנט ומקצוע
Addהיינו יכולים גם לקרוא ל •
.שמימשו
School(5)
C#.Net, רייפמן דורון
•Indexers.
באינדקסריםלמעשה אין צורך בכלל •
מימשתי אותם כדי להדגים . הללו
לרשימות מסוג באינדקסריםשימוש
אובייקטים שונה ובאופן מפתוח
.שונה
בהחלט מיותר ולא הגיוני לממש •
.אותם
School(6)
C#.Net, רייפמן דורון
•Indexers . עכשיו לפי אינדקס מיקום כדי
.forלאפשר
כאמור בהחלט מיותר ולא הגיוני לממש •
.אותם
הסברים , הערות, שורות עם התיעוד 207•
.ומימושים מיותרים
.Schoolזהו סיימנו עם •
Main Program(1)
C#.Net, רייפמן דורון
יצירת אובייקט בית ספר •
.שעליו נתלה הכול
יצירת הסטודנטים •
והמקצועות בכוונה בסדר לא
כדי להמחיש את . ממוין
יכולת המיון של
SortedDictionary.
הדגמת כמה מימושים •
.אלטרנטיביים
Main Program(2)
C#.Net, רייפמן דורון
שיוך התלמידים למקצועות •
מה . והמקצועות לתלמידים
.התקשיתם בכך, שבאופן מוזר
מימוש אלטרנטיבי פחות •
.אלגנטי
Main Program(3)
C#.Net, רייפמן דורון
הדפסת הסטודנטים והמקצועות •
.שלהם
הדפסת המקצועות והסטודנטים •
.שלומדים בהם
.כולל מימוש אלטרנטיבי•
כמה אלגנטי כשיש לנו אובייקטים •
.חזקים
Main Program(4)
C#.Net, רייפמן דורון
כמה משחקים עם היכולות •
המתקדמות של מבנה הנתונים
.החזק של האובייקטים שיצרנו
.הערות בגוף הקוד•
, הערות, שורות עם התיעוד 100•
.הסברים ומימושים מיותרים
מקווה שיעזור לכם . זהו סיימנו•
.להבין
כולי תקווה שמצגת זו מספקת •
.ואין צורך לעבור עליה בשיעור
בבקשה לעבור עליה ועל הקוד •
.המצורף