אין לזה צורה - שאלה על מתודה שמקבלת מספר מופעים

היי,
אם אני רוצה לכתוב מתודה שמקבלת מספר מופעים כמו בפעולה filter_by_size, האם נכון לכתוב אותה באותה מחלקה של האובייקט או צריך לפתוח מחלקה חדשה?
אם אני כותבת את המתודה באותה מחלקה של האובייקט אני אצטרך לקרוא לה כל פעם עם איזשהו אובייקט ובתוך הסוגריים להעביר את כל הרשימה… האם נכון לעשות ככה? אודה להכוונה…

האמת שחשבתי על זה גם, אבל פשוט אמרתי לעצמי שככה מוגדר התרגיל וזהו.

בעיקרון לא צריך ממש מופע של המחלקה אלא נוכל לקרוא לזה בצורת /ספוילר/ וזה גם הגיוני לדעתי, כי בסוף זה פונקציה/מתודה/whatever שפועלת על מלבנים. משמע הגיוני שהיא תהייה שייכת למחלקת המלבנים, גם אם היא לא אמורה לעבוד על מופע ספציפי של מלבן

2 לייקים

האמת שאני גם שואלת את עצמי שאלה דומה.
הפונקציה rand_rects וגם filter הן לא פעולות שמגדירות/מאפיינות מלבן, לכן חשבתי שהכי נכון לשים אותן בחוץ (כמו פונקציות שלמדנו עד לפני מחלקות).
האם העיקרון שרק פעולות/מאפיינים שמגדירות מלבן יהיו בתוך מחלקת מלבן נכון? או שיש להגדיר את הפונקציות האלה בתוך מחלקת מלבן?
(דוגמא נוספת: מחלקת משתמש בפורום, הוא יכול לכתוב תגובה, לעשות לייק וכו’ אבל לעשות פונקציה שלמשל מייצרת 50 משתמשים ובודקת משהו עליהם, זאת לא פעולה שמוגדרת על משתמש, לכן יותר נכון שהיא תיהיה בחוץ?)

לפי התיאור שלך, נשמע שהיא כן בודקת דברים ספציפית על משתמש. רוצה לומר – על משהו שקשור למופעים של משתמש. לא?

פשוט חשבתי שמה שמוגדר בתוך מחלקה זה פעולות ומאפיינים שמגדירים את המחלקה (למשל: משתמש. הוא עושה לייקים, מגיב, שולח הודעה, מקבל עיטורים :wink: וכו’. אבל משתמש לא מריץ ריצה שמייצרת 50 משתמשים ובודקת עליהם משהו, לכן חשבתי שפונקציה כזאת צריכה להיות מחוץ למחלקה והיא פשוט פונקציה כללית)

אז בעצם אם יש פונקציה שאני מריצה על אובייקט כלשהו ולמשל בודקת עליו משהו, גם אם היא בעצם לא פעולה שמגדירה את האובייקט, היא צריכה להיות בתוך המחלקה?

זו בסופו דבר בחירה ארכיטקטורית שנמצאת בידיים שלך :slight_smile:
אני כנראה הייתי בוחר כן להכניס לשם, אבל כל אחד ומה שעושה לו קוד מגניב

לייק 1