קודם כל, אני מסיר בפניכם את הכובע. שיפרתם את המנוע ונתתם את השיפורים במתנה לקהילה, וזה שם אתכם במקום יותר מכובד ממני לא משנה מה אגיד.
יש כמה דברים שראיתי כשעברתי על הקוד שלכם שאולי יעשו אותו קריא יותר ונוח יותר לעבודה, בעתיד, אז אם בא לכם אתם מוזמנים להשתמש בהצעות שלי ואם לא – תגידו לי לשתוק, כי אחרי הכל אתם עושים עבודה ואני רק מבקר אותה:
* לא לגמרי הבנתי איך או למה עובד כל העניין עם הרנדום בבינום. ממליץ לתעד יותר טוב את הרציונל מאחורי זה בשביל אנשים כמוני. לחלופין, אם הבנתי נכון הכוונה בזה היא לערבב, נכון – אז למה לא פשוט להפריד לגמרי את הערבוב, בתור משהו שקורה רק רגע לפני הרצה של תחרות (להוסיף ערבוב של הרשימה ממש בתוך הפונקציה runWar)? אפשר להשתמש בערבוב רגיל של java, שנקרא Collection.shuffle אם אני זוכר נכון.
* קראתי פעם שכל פעם שמישהו כותב פונקציה עם פרמטר בוליאני מה שהוא מתכוון זה שתי פונקציות שאחת עוטפת את השנייה. נראה לי שבמקרה הזה זה נכון – יכול להיות שאתם רוצים פונקציה אחת
string runCompetition(
ושנייה
void runAndSaveCompetition(
שמריצה את הראשונה ואז שומרת את התוצאות?
בכל מקרה, הרבה כבוד! תודה!