
new ומשתמשים ב-nextInt(50) + 1 כדי לקבל מספר שלם בין 1 ל-50. אחר כך בודקים אותו בתנאי if ו-else if.F5 - Step Into, F6 - Step Over, F8 - Resume.הטקסט המלא של הדקות הראשונות בהרצאה «דיבאג בג'אווה - Debug Mode» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
לכולם, בשיעור הקרוב נדבר על דיבאג מוד, נתרגל את הנושא של הדיבאג מוד, איך אנחנו מבצעים אותו, איך אנחנו משתמשים בו על מנת לייצר קוד איכותי וטוב ולראות שכתבנו קוד ללא שגיאות.
אז בואו נתחיל ונראה על מה אנחנו מדברים כשאנחנו אומרים דיבאג מוד. אז המטרה של השיעור הקרוב היא לתרגל את העבודה בדיבאג מוד.
אנחנו יכולים להריץ בכמה צורות את הקוד שלנו, שהכרנו עד עכשיו זה פשוט לבצע run והקוד מתקמפל ורץ בבת אחת יש לנו עוד צורה שהאקליפס מאפשר לנו להריץ את הקוד שלנו בצורה הדרגתית זאת אומרת להציב breakpoint בנקודה מסוימת בקוד שלנו ואז המערכת האקליפס תעצור באותה נקודה ואנחנו נוכל בעצם לבחון את הקוד שלנו את תערכים בתוך המשתנים
שיצרנו בקוד שלנו ולראות מה הערך במשתנים ואם יש תקלות, למה הם נגרמו ולאן בעצם הקוד הלך בהתניות. אז אנחנו נתחיל לתרגל את הדיבאג מורד, בקוד שנכתוב אנחנו נשתמש גם במשתנים וגם בהתניות if, else if וכדומה.
בואו נתחיל. אני פותח את האקליפס שלי, יש לי פה את סביבת העבודה, אקליפס סביבת עבודה חדשה נקייה אני עושה ניו ואדר Java Project אני נותן שם ל-Java Project אני אתן דיבאג מוד פקטיס אוקיי זה הכל בינתיים וכרגע הקלאס ייווצר יש בפתיחת Workspace חדש אנחנו צריכים לאשר שאנחנו רוצים לעבוד עם פרספקטיב של Java יפתח לנו הפרויקט
לתוך ספריית src ניצור מקש ימני על ידי מקש ימני ניצור package ונכתוב לו practice add ובתוך הpackage ניצור לנו את הקלאס אנחנו נבצע קלאס הרצה ולכן נסמן את הפאביק static point man בואו נכתוב debug mode practice ונלחץ finish מצוין אז יש לנו בעצם את הקלאס שלנו ואנחנו יכולים להחליף את הטקסט הזה בקוד שלנו בואו נבצע איזה שהם התניות
לצורך העבודה, לצורך הפעולות של הדיבק מאוד, הייתי רוצה שנכיר גם את הנושא הזה של שימוש במשתנה רנדומלי. זה דבר שאנחנו נוכל להשתמש בו הרבה במהלך הטסטים שלנו והקוד המתקדם בסביבת האוטומציה שלנו. אז איך אנחנו משתמשים במשתנה מסוג רנדומלי בג'אווה?
יוצרים קלאס מסוג רנד אנחנו משתמשים בקלאס רנדום יוצרים אינסטנט רנד וכשאנחנו יוצרים אינסטנט אנחנו צריכים להשתמש במילה השמורה new ואנחנו נכתוב פה את השם של הקלאס עוד פעם יצרנו אינסטנט לרנדום הג'אווה צועק שאנחנו צריכים לייבא אנחנו נייבא את הרנדום ג'אווה הוא טיל ואז
אנחנו יכולים להשתמש בקלאס הזה רנדום על ידי אינסטנט רנד וכאן אני יכול לקבוע int run myrand בוא נגיד random num שווה rand next אנחנו כותבים rand נקודה נקסט אנחנו רוצים להשתמש בסוג רנדומלי מסוג int integer מספר שלם ואנחנו יכולים גם לציין פה עד איזה מספר אז בוא נגיד שאנחנו
משתמשים ב-50 ואנחנו צריכים לעשות פלוס 1 כדי שזה יהיה 50 באמת אוקיי ועכשיו אנחנו יכולים להתחיל להשתמש ב-My Random Number על ידי פעולות של אטמרות בוליאניות if אני כותב פה my control space משלים אם הוא גדול מ-10 אז תבצע את הפעולה הבאה בוא נגיד שאני אתחל אותו ב-my שווה נגיד 79 else if בוא נעשה ככה עם המספר עצמו
אוקיי זה יספיק כרגע בשביל להתחיל את התהליך של הנושא של הדיבאג אז בוא נגיד שאני רוצה לעשות את הריצה הזאתי אם אני אריץ את זה עכשיו מצב רגיל אז בעצם אנחנו יכולים בעצם לראות את הקוד מתבצע אבל לא הרבה יותר מזה זאת אומרת הוא מתבצע והוא לא עשה שום דבר בגלל שאין לנו שום סיסטם אאוט פרינטלנד אבל אם אנחנו רוצים בכל
זאת לראות את זה בואו נוסיף את ה-show view ואת הקונסול אם אני מעריץ אותו גם אנחנו רואים שזה רץ אבל לא ביצע שום דבר אז בואו נגיד שאנחנו לא משתמשים בסיסטם אאוט פרינטלנד ובכל זאת רוצים לראות מה הערך של מהי רנדום דאם מה שעשיתי עכשיו אמרתי על שורה 12 ולחצתי דאבל קליק על הגבול הכחול אוקיי אני אחזור על זה
אמרתי על השורה שאני רוצה לעצור לדוגמה בהתניה הראשונה על if ולחצתי דאבל קליק אוקיי כרגע בעצם אני יכול לבצע עכשיו את הריצה שלי בצורה כזאת שהקוד ייכנס לדיבאג מוד ויעצור בשורה 12 אז בואו נעשה על מנת להתחיל ריצה לדיבאג מוד אני צריך ללחוץ על הצורה הזאת של החרק דיבאג דיבאג מוד פרטיס
אני יכול ללחוץ על החצי השחור ודיבאג אס ג'אווה ואני יכול ללחוץ גם ישירות על החראק והוא יודע לפנות לג'אווה כדי להריץ אותו. בפעם הראשונה שאנחנו מריצים בדיבאג מוד האקליפס צועק שהוא רוצה אישור שאנחנו הולכים לפתוח את הפרספקטיב של הדיבאג אוקיי ואנחנו מאשרים את זה והאקליפס טוען בפעם הראשונה של הוורקספייס
את הדיבאג מוד. אם כן זהו הדיבאג מוד זהו מסך זה מסך אחר על מנת לחזור ל-runtime אנחנו תמיד יכולים ללחוץ על הכפתור הזה אוקיי ולחזור חזרה אנחנו רואים שהקוד נעצר בשורה 12 הריצה נעצרה בשורה 12 וכאן בעצם אני רואה גם את החלק של הקוד שהוא עצר בצורה 12 אבל יש לי עוד כמה דברים שאני יכול לעזר בהם יש לי את הקונסול כרגיל יש לי איפה הריצה נתבצעת באיזה קלאס אני ופה
יש לי את הווארדז שלי אוקיי ואני כבר יכול לראות ללא שום פעולה לראות את המספר של ה-My Random Lambs. יש לי ברייק פוינט, אני יכול לראות איפה הברייק פוינט שלי ואני יכול פה ורבלס לעשות את זה בצורה כזאת.
אם אני רוצה לשלוט במשתנה אני יכול להקיש מקש ימני על שם המשתנה באיזשהו מקום וללחוץ Watch ואז יתווסף לי עוד פרספקטיב, עוד פריים שפה אני ממש מבודד את המשתנה שאני רוצה לראות אבל בעיקרון הוורבלס מראה לי את ה-Random.
אוקיי מה שמעניין אותי זה זה שוב אני אחזור על הפעולה של הוואץ' אני עומד על המשתנה שאני רוצה לבודד ואני לוחץ מכה שם אני בוחר בטאט פריד וואט ויש לי אחר כך אם אני רוצה למחוק אני יכול לעשות ככה בצורה כזאתי ופשוט למחוק על ידי רימוב מכה שם אני יכול גם לעשות רימוב און ואני גם יכול לכתוב ממש את המשתנה שאני רוצה אוקיי אני יכול לכתוב פה מיי
וזה גם יתן לי את הערך שהוא מכיל בתוכו. עכשיו אמרנו אם הוא גדול מ-10 אז תקווה שהוא my random 99. אני רוצה עכשיו להתקדם אבל אני לא רוצה להתקדם בבת אחת להריץ את כולו אם אני רוצה להריץ בבת אחת אני בעצם נחץ על ריזום f8 אבל אם אני רוצה להתקדם שלב שלב אני יכול להשתמש בחיצים האלה step into step over זה שיש לנו קריאה למתודה ואנחנו רוצים לראות