למתרגלים - למבחן

המנהלים: TA_nimrod, TA_Adi, TA_Igor

למתרגלים - למבחן

הודעהעל ידי michal cohen » 18:26 22/01/2010

אני רואה שבחלק מהמבחנים משתמשים השיטות עזר (כי נאמר בשאלה שמותר) בתשובות בGETTERS וSETTERS ובחלק לא משתמשים בזה...
וגם לא רשום באותן מבחנים אם צריך או לא צריך להשתמש בGETTERS וSETTERS (רשום רק להשתמש בשיטות כמו שלמדנו בכיתה).
אז שתי שאלות:
1. אז צריך או לא צריך להשתמש בGETTERS וSETTERS?
2. צריך לזכור בע"פ איזה שיטות יש ללינק ליסט ולעץ בינארי? (הכוונה לא ללמוד אותם בע"פ אלא אם צריך לדעת פשוט איזה ישטות אנחנו יכולים להשתמש כעזר)
michal cohen
 
הודעות: 87
הצטרף: 19:04 11/11/2009

Re: למתרגלים - למבחן

הודעהעל ידי michal cohen » 18:27 22/01/2010

סתם גם שתהיה דוגמא...
יש מבחנים שכשרוצים לקרוא לבן השמאלי עושים getLeft כשאנחנו בכיתה עשינו כל הזמן this.left או משהו כזה...
michal cohen
 
הודעות: 87
הצטרף: 19:04 11/11/2009

Re: למתרגלים - למבחן

הודעהעל ידי ilyal » 18:35 22/01/2010

זה באמת מוזר... משתמשים ב getters כדי לגשת לשדה שגם ככה נמצא במחלקה...

למה עושים את זה?
 
ilyal
 
הודעות: 63
הצטרף: 09:27 30/03/2009

Re: למתרגלים - למבחן

הודעהעל ידי eliorar » 12:09 23/01/2010

היתרון של Getters /Setters הוא בפולימורפיזם ושמירה על עקרון ההכמסה, בעוד שהשדות אינם עוברים בהורשה, השיטות שמחזירות את האובייקטים כן עוברות בהורשה,
זה בדרך כלל מונע טעויות של קריאה למשתנה עם הערך שלא בדיוק ציפית לו.
במימושים בכיתה בכל טיפוסי הנתונים לא היו בכלל getter/ setters והתשובה שהשיבו לנו היא שזה כדי שהמימוש יהיה יותר פשוט.
שים לב שהמימוש הנוכחי גם פוגע בכללי ההכמסה כי בעצם אם ה data/next/right וכו' הוא public אז ניתן לשנות אותו בזמן ריצה ואז דברים לא בדיוק יעבדו כמו שצריך.
בכל מקרה, אני חושב שכדאי להשתמש ב getter בכל מקרה אם הוא נתון בשאלה ולפי מה שראיתי זה מה שקורה ברוב המקרים.
eliorar
 
הודעות: 35
הצטרף: 19:43 11/11/2009

Re: למתרגלים - למבחן

הודעהעל ידי TA_Yoni » 13:48 23/01/2010

צריך להכיר את המימושים שעשינו בשעורים ובתרגולים. מה שמותר\אסור יהיה נתון בשאלה.
המתרגל יוני
TA_Yoni
 
הודעות: 236
הצטרף: 13:44 18/10/2009


חזור אל - מבוא למדעי המחשב 2010

מי מחובר

משתמשים הגולשים בפורום זה: אין משתמשים רשומים ואורח אחד