בחירת מקבלים
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-GO של Coddy. שיעור 9 מתוך 68.
כעת, כשאתה מבין גם מקבלי ערך וגם מקבלי מצביע, השאלה המרכזית היא: מתי כדאי להשתמש בכל אחד מהם? ההחלטה תלויה במה שהמתודה שלך צריכה לעשות עם המקבל.
השתמש במקבל מצביע כשהמתודה שלך צריכה לשנות את המבנה המקורי. מכיוון שמקבלי מצביע עובדים עם מופע המבנה עצמו, כל שינוי שיתבצע בתוך המתודה יישמר גם לאחר שהמתודה תחזיר את השליטה. הדבר חיוני למתודות שמעדכנות שדות, משנות מצב או מבצעות פעולות שאמורות להשפיע על הנתונים המקוריים.
השתמשו במקבל ערך כשהמתודה שלכם צריכה רק לקרוא נתונים מהמבנה, בלי לשנות אותם. מקבלי ערך פועלים על עותק, ולכן הם מתאימים במיוחד למתודות שמחשבות ערכים, מעצבות פלט או מבצעות כל פעולה שאינה דורשת שינוי של המבנה המקורי. הם גם מספקים בטיחות בכך שהם מבטיחים שהנתונים המקוריים יישארו ללא שינוי.
ככלל: אם המתודה שלך משנה את המבנה, השתמש במקבל מצביע. אם המתודה שלך רק קוראת מהמבנה, השתמש במקבל ערך. הגישה הזאת מבהירה את כוונת הקוד שלך ועוזרת למנוע שינויים לא מכוונים בנתונים שלך.
נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת התוכנית
1בקרת זרימה מתקדמת
switch עם `fallthrough`יציאה מלולאות מקוננותהמשך לולאה מסוימתהצהרת `goto`סיכום – שליטה מתקדמת בלולאות4פרויקט: רשימת משימות פשוטה
הגדרת הפרויקטהוספת משימה2מבנים ושיטות
הגדרת שיטות במבניםמקבלי ערךמקבלי מצביעבחירת מקבליםשיטות לעומת פונקציותסיכום — התנהגות המבנים5מפות לעומק
מפות של Structsמצביעים כערכים במפהבדיקה אם מפות הן nilהשוואת מפותסיכום - מונה תדירות מילים8פרויקט: ניהול מלאי פשוט
סקירת הפרויקטבדיקת המלאיתרגלו בעצמכם: קומפיילר Go אונליין