למד עצות לאיתור באגים בקוד שלך ותיקון שגיאות ב-Thunkable
אלו הפעילויות לשיעור זה:
מה זה ניפוי באגים?
איתור באגים הוא התהליך שמקודדים משתמשים בהם כדי להבין מדוע הקוד שלהם לא עובד, ולאחר מכן לתקן אותו כך שהוא יעבוד.
המונח איתור באגים הגיע מאדמירל גרייס הופר, חלוצה בתחום המחשוב. היא עבדה על המחשב Mark II באוניברסיטת הרווארד בשנות הארבעים ועש נתקע במחשב ומנע ממנו לעבוד.
כשהיא נפטרת מהעש, היא אמרה שהם "מנפים באגים" במערכת. מתכנתים משתמשים במונח עכשיו בפירוש "תיקון שגיאות בקוד שלי".

טיפים לקידוד

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

חלק את הקידוד של האפליקציה שלך לגושים קטנים.
קבל דבר אחד לעבוד לפני שמתחילים בדבר הבא.
קוד קצת, בדוק קצת, אשר שזה עובד, ואז קוד קצת יותר, בדוק עוד קצת, וכו'.
לדוגמה, אם לאפליקציה שלך יש 5 לחצנים שכולם עושים דברים שונים,
- קוד את הפעולה עבור הכפתור הראשון
- לאחר מכן בדוק כדי לוודא שזה עובד.
- עבור אל הכפתור השני
- לַחֲזוֹר עַל.
עדיף לתקן קוד במקום אחד מאשר לחזור ולתקן אותו ב-5 מקומות אם יש שגיאה בקוד שלך.

בקרת גרסה

נניח שאתה פועל לפי כלל ה"נתחים הקטנים" ושחלק אחד מהאפליקציה שלך בנוי ועובד.
אתה מוסיף איזה קוד חדש ופתאום הכל מפסיק לעבוד.
הו לא!
אתה מנסה למחוק את הקוד החדש אבל האפליקציה שלך עדיין לא עובדת. אתה לא בטוח מה השתבש והלוואי שהיה לך כפתור "בטל".
כדי להימנע מתרחישים כמו זה, תוכל לשמור גרסאות של האפליקציה שלך כאשר חלקים יפעלו.
כך אם אתה עושה טעות ואינך יודע כיצד לתקן אותה, תוכל לחזור לגרסת העבודה האחרונה ששמרת.
אתה יכול גם להשתמש בבקרת גרסאות כדי להתנסות בתכונות חדשות מבלי לדאוג לשבור את האפליקציה העובדת שלך.
לגרסה החינמית של Thunkable יש מגבלה של 10 פרויקטים, כך שאם תגיע למגבלת הפרויקט שלך, תוכל למחוק את הגרסאות הישנות ביותר לפני שמירת אחת חדשה.
כדי ליצור עותק של הפרויקט שלך:
- לחץ על 3 הנקודות בפינה השמאלית העליונה של המסך
- בחר "שכפל פרויקט" מהתפריט הנפתח.
- שנה את שם העותקים השמורים שלך כדי לעקוב. מספור v1, v2 עובד היטב.

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


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

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

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


טיפ מנטור
שיטות עבודה מומלצות : הערות הן הדבר המועיל ביותר בתכנות.
היו הרבה פעמים שקודן קידד משהו ואז הלך לישון וחזר למחרת בבוקר ואין לו שמץ של מושג מה הם עשו בלילה הקודם. תמיד לכתוב תגובות!
It’s also a great way to check your knowledge, because if your coding blocks are easy to comment on then you must understand them really well! Another thing to be aware of is that <, >, =, ≤, ≥ are hard for students for the first time (and for programmers who are years into their careers). When we set a math statement to < when it should be ≤ this is called an “off by one” error and this is a problem that happens to developers with 20 years of experience 😛 It is a very popular problem so be on the lookout for that.
הסוג הטוב ביותר של איתור באגים הוא איתור באגים של ברווז גומי ! זה המקום שבו אתה באמת תקוע בקוד שלך וזה לא הגיוני. אתה רוצה להקדיש זמן לדבר על זה עם מישהו אחר כדי לראות אם הוא יכול לזהות את הבעיה, אבל למרבה הצער אף אחד לא בסביבה! אז יש לך ברווז גומי אמין ליד השולחן שלך ואתה מסביר את הבעיה בקול רם לחבר הברווז שלך. אתה צריך לעשות את זה במונחים פשוטים מאוד כדי שהם יבינו, ואז אחרי זה תמצא את הבעיה בעצמך! לכל העמיתים שלי יש ברווזי גומי ליד השולחנות שלנו ועושים את זה לעתים קרובות למדי!
שאלות מנחות לשאול את התלמידים: כמה זמן, לדעתך, לוקח למקודדים מנוסים לנפות באגים? הייתם חושבים שהם יכולים להגיע לזה ממש מהר, אבל לכל אתר גדול יש דפים המוקדשים לראות כמה זמן קיימים באגים ( פייסבוק למשל ) והם גם יראו אם אחד מהעמודים שלהם פגום/שבור והם כרגע מנקים באגים ( דוגמה לפייסבוק ).
איך מוצאים באגים? (הרבה הרבה בדיקות!) כמה בדיקות אתה חושב שאתה צריך לעשות? כמה בדיקות צריך לגרום לאנשים אחרים לעשות?
איך אתה יודע מתי מצאת באג? לפעמים אתה עלול לבזבז לנצח לחיצה על תמונה רק כדי להבין שהכפתור שאתה אמור ללחוץ עליו נמצא מתחת לתמונה. זה באג? זו בחירה עיצובית שיצרנית האפליקציות עשתה והם לא חושבים שזה באג אבל אתה יכול.
טיפים למנטורים ניתנים על ידי תמיכה מ-AmeriCorps.

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

אתה מוסיף התראה בחלון בלוקים על ידי לחיצה על הסימן + לצד התראות בלוח הצבעים.

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

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

אתה יכול להתחיל עם מסעדת בדיקה אחת או שתיים בלבד ולבדוק את האפליקציה שלך כדי לוודא שהיא עובדת.
לאחר בדיקה ועבודה, תוכל להוסיף את הסט המלא של נתוני המסעדה לגיליון Google שלך.
שנה מאפיינים
אם אתה בודק את האפליקציה שלך בזמן אמת, תוכל לשנות ערך נכס ב-Designer בזמן שאתה מפעיל את האפליקציה ותראה את ההשפעות שלה.
לפעמים זה יכול לעזור לחשוף בעיה.
לדוגמה, ייתכן שאתה מקודד משחק. המיקום של ספרייט לא נראה לך נכון בטלפון שלך כשהוא פועל.
בזמן בדיקה חיה, אתה יכול
- לך למעצב
- שנה את ערכי ה-X וה-Y של ה-Sprite
- המיקום של ה-Sprite על המסך באפליקציית הריצה ישתנה.
השתמש בזה כדי לבדוק ולהבין קואורדינטות על המסך שלך.

פעילות 1: תקן את הבאג
תקן באגים באפליקציית טיימר
- העתק את הפרויקט.
- תצוגה מקדימה של האפליקציה כדי להפעיל אותה.
- Try pressing Start without typing anything into the textbox. What happens?
- נסה להזין 0 או מספר שלילי למשך מספר שניות. מה קורה?
- תקן את הבאגים באמצעות בלוקים מותנים!
Click here to see a possible solution
This is one possible solution to the bug.

פעילות 2: הוסף תגובה
הוסף הערה לפרויקט Thunkable שלך
הוסף לפחות הערה אחת לאפליקציה שלך שמסבירה מה עושה קבוצת בלוקים. בחרו קבוצה של בלוקים שאתם חושבים שהכי קשה להבין אותם מכיוון שהבלוקים האלה כנראה יהיו הקשים ביותר למישהו אחר, כמו חבר צוות, להבין.
הִשׁתַקְפוּת
טיפים אלה יכולים לעזור לך כשאתה מתחיל לקוד את האפליקציה שלך לנייד עבור פרויקט Technovation שלך.
אבל זכרו…

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