תרגיל - השתמש ברווח לבן כדי להפוך את הקוד לקל יותר לקריאה

הושלם

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

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

מהו רווח לבן?

המונח "רווח לבן" מתייחס לרווחים בודדים המיוצרים space barעל-ידי כרטיסיות , tab המיוצרות על-ידי המפתח, ושורות חדשות המיוצרות על-ידי enter המפתח.

המהדר של C# מתעלם מרווח לבן. כדי להבין כיצד הפונקציה מתעלמת מרווח לבן וכיצד למקסם את הבהירות באמצעות רווח לבן, בצע את התרגיל הבא.

הוסף קוד כדי להמחיש כיצד מהדר C# מתעלם מרווח לבן

  1. ודא שיש לך קובץ ריק Program.cs ב- Visual Studio Code.

    במידת הצורך, פתח את Visual Studio Code ולאחר מכן בצע את השלבים הבאים כדי Program.cs קובץ בעורך:

    1. בתפריט קובץ, בחר פתח תיקיה.

    2. השתמש בתיבת הדו-שיח פתיחת תיקיה כדי לנווט אל התיקיה CsharpProjects ולאחר מכן לפתוח אותה.

    3. בתצוגה Visual Studio Code EXPLORER, בחר Program.cs.

    4. בתפריט בחירת קוד של Visual Studio, בחר בחר הכל ולאחר מכן הקש על מקש Delete.

  2. הזן את הקוד הבא:

    // Example 1:
    Console
    .
    WriteLine
    (
    "Hello Example 1!"
    )
    ;
    
    // Example 2:
    string firstWord="Hello";string lastWord="Example 2";Console.WriteLine(firstWord+" "+lastWord+"!");
    
  3. בתפריט קוד Visual Studio קובץ, בחר שמור.

  4. בתצוגת EXPLORER, כדי לפתוח מסוף במיקום התיקיה TestProject, לחץ באמצעות לחצן העכבר הימני על TestProject ולאחר מכן בחר פתח במסוף משולב.

  5. בשורת הפקודה של מסוף, הקלד dotnet run ולאחר מכן הקש Enter.

    אתה אמור לראות את הפלט הבא:

    Hello Example 1!
    Hello Example 2!
    
  6. קח דקה כדי לשקול מה תוצאה זו מציינת לגבי האופן שבו עליך להשתמש ברווח לבן בקוד שלך.

    שתי דוגמאות קוד אלה ממחישות שני רעיונות חיוניים:

    • ל- Whitespace אין חשיבות למהדר. עם זאת...
    • רווח לבן, כאשר נעשה בו שימוש תקין, יכול להגביר את היכולת לקרוא ולתאר את הקוד.

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

    הדרכה מוקדמת:

    • כל פקודה מלאה ( משפט) שייכת בשורה נפרדת.
    • אם שורת קוד בודדת הופכת לאוירה, באפשרותך לשבור אותה. עם זאת, עליך להימנע מפיצול שרירותי של משפט אחד לשורות מרובות עד שיש לך סיבה טובה לעשות זאת.
    • השתמש ברווח משמאל ומימין לאופרטור ההקצאה.
  7. החלף את הקוד הקיים בקוד הבא:

    Random dice = new Random();
    int roll1 = dice.Next(1, 7);
    int roll2 = dice.Next(1, 7);
    int roll3 = dice.Next(1, 7);
    int total = roll1 + roll2 + roll3;
    Console.WriteLine($"Dice roll: {roll1} + {roll2} + {roll3} = {total}");
    if ((roll1 == roll2) || (roll2 == roll3) || (roll1 == roll3)) {
        if ((roll1 == roll2) && (roll2 == roll3)) {
            Console.WriteLine("You rolled triples!  +6 bonus to total!");
            total += 6; 
        } else {
            Console.WriteLine("You rolled doubles!  +2 bonus to total!");
            total += 2;
        }
    }
    

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

    הערה

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

  8. קח דקה כדי לשקול כיצד להשתמש ברווח לבן כדי לשפר את מידת הקריאות של קוד זה.

    קיימות שתי תכונות של קוד זה שיש לשים לב לה:

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

    באופן כללי, כדי לשפר את הקריאות, אתה מציג שורה ריקה בין שתי שורות, שלוש או ארבע שורות קוד שמבצעים פעולות דומות או קשורות.

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

  9. כדי להוסיף רווח לבן אנכי המשפר את מידת הקריאות, עדכן את הקוד באופן הבא:

    Random dice = new Random();
    
    int roll1 = dice.Next(1, 7);
    int roll2 = dice.Next(1, 7);
    int roll3 = dice.Next(1, 7);
    
    int total = roll1 + roll2 + roll3;
    Console.WriteLine($"Dice roll: {roll1} + {roll2} + {roll3} = {total}");
    
    if ((roll1 == roll2) || (roll2 == roll3) || (roll1 == roll3)) {
        if ((roll1 == roll2) && (roll2 == roll3)) {
            Console.WriteLine("You rolled triples!  +6 bonus to total!");
            total += 6; 
        } else {
            Console.WriteLine("You rolled doubles!  +2 bonus to total!");
            total += 2;
        }
    }
    

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

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

    לבסוף, השורה השלישית של רווח לבן מפרידה קבוצה אחרת של משפטים קשורים מהצהרה המקוננת if שלך. קבוצת המשפטים הכוללת את ההצהרה והשיטה totalConsole.WriteLine() קשורה למטרה ולא למראה. הקוד שלך מתמקד בערך הכולל שהושג על-ידי שלוש הקוביות ואם הגלגל כלל כפול או משולש. שורות אלה קשורות מכיוון שעליך לחשב total ולדווח על תוצאות ההחזרה למשתמש.

    מפתחים מסוימים עשויים לטעון שעליך להוסיף שורה ריקה בין ההצהרה על total ל- Console.WriteLine(). שוב, בחירת רווח לבן היא .הבחירה הטובה ביותר שלך עליך להחליט איזה סגנון קריא יותר עבורך ולהשתמש בסגנון זה באופן עקבי.

    כל מה שנשאר לך הוא ההצהרה if . אתה יכול לבדוק את זה עכשיו.

  10. התמקדות בשורות הקוד מתחת למילת המפתח if , שנה את הקוד באופן הבא:

    Random dice = new Random();
    
    int roll1 = dice.Next(1, 7);
    int roll2 = dice.Next(1, 7);
    int roll3 = dice.Next(1, 7);
    
    int total = roll1 + roll2 + roll3;
    Console.WriteLine($"Dice roll: {roll1} + {roll2} + {roll3} = {total}");
    
    if ((roll1 == roll2) || (roll2 == roll3) || (roll1 == roll3)) 
    {
        if ((roll1 == roll2) && (roll2 == roll3)) 
        {
            Console.WriteLine("You rolled triples!  +6 bonus to total!");
            total += 6; 
        } 
        else 
        {
            Console.WriteLine("You rolled doubles!  +2 bonus to total!");
            total += 2;
        }
    }
    
  11. שים לב שהעברת את הסוגריים המסולסלים הפוחתים והסיום אל השורה שלהם כדי לשפר את המרווח.

    הסמלים { ו } יוצרים בלוקי קוד. מבנים רבים של C# דורשים בלוקי קוד. יש להציב סימנים אלה בשורה נפרדת כך שגבולותיהם יהיו ברורים וניתנים לקריאה.

    יתר על כן, חשוב להשתמש במקש כדי tab להוסיף בשורה את סמלי בלוק הקוד תחת מילת המפתח אליה הם שייכים. לדוגמה, שים לב לקוד המתחילה במילת המפתח if. מתחת לשורה זו מופיע { הסימן. יישור זה מקל עליך להבין ש" { שייך ל" המשפט if . יתר על כן, } הסימן האחרון גם תואם if את המשפט. השילוב של יישור והכניסה מקל עליך להבין היכן בלוק הקוד מתחיל ומסתיים.

    שורות הקוד בתוך בלוק קוד זה מוס פנימה, המציינות שהן "שייכות" לבלוק קוד זה.

    אתה עוקב אחר דפוס דומה עם המשפט הפנימי if וההצהרה else , והקוד בתוך בלוקי קוד אלה.

לא כולם מסכימים עם הדרכה בסגנון זה לכלול רווח לבן. עם זאת, שקול להשתמש בהדרכה זו כנקודת התחלה בעת כתיבת קוד. בעתיד, אתה יכול להיות מטרה בעת קבלת החלטה לסטות מהדרכה זו.

תקציר

הפעולות העיקריות בתרגיל זה:

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