טיפוס הנתונים המופשט רשימה ותפיסות מוטעות של תלמידי תיכון

וליד ח'ליפה

תיכון נזירות סנט ג'וזף, מכללת סכנין, אוניברסיטת מר-אליאס

khwalid@hotmail.com

 

תאור תפיסות תלמידים ודיון בממשק רשימה.

 

 

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

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

המחקר על תפיסות מוטעות קבל תפנית במחקרם של [Smith, DiSessa & Roschelle 1993] . עד מחקר זה התלמידים הוצגו כמחזיקי רעיונות לא נכונים המתנגשים עם הלמידה, וההוראה חייבת להעמיד אותם בפני עימות כדי להחליף אותם. במחקר הדגישו קיום אי המשכיות בין המתחיל למתקדם מה שמקשה על רכישת המומחיות. דבר זה עומד בסתירה להנחת היסוד של הקונסטרוקטביזם - הידע צומח מהבנות קודמות. הם הציגו תיאור ראשוני לתיאוריה קונסטרוקטיביסטית לגבי הלמידה המגדירה את המושגים הקודמים כמקורות לצמיחה קוגנטיבית במערכת המורכבת של הידע. מבט תיאורטי זה בא לאפיין את הקשרים  הפנימיים בין מגוון גורמי הידע במקום זיהוי מושגים לא נכונים ולהדגיש את הארגון מחדש, את השיפור והליטוש של מה שקיים ולא את ההחלפה.

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

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

 

אתחל-רשימה

L

 

פעולה המחזירה רשימה ריקה (כאן מציבים אותה במשתנה L מטיפוס List_Type).

אם התלמיד לומד את שפת פסקל אז החתימה של שגרה היא:

Procedure    List_Init (var  L: List_Type);

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

לעומת זה בשפת C קיימות שתי אפשרויות למימוש הפעולה, והחתימות של השגרות הן:

List_Type     List_Init ();

void    List_Init (List_Type*   L);

הראשונה פונקציה והשנייה דומה למימוש בפסקל.

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

 

בהרצאה אני אציג את:

·          המחקר שהתמקד בפתרון בעיות בטנ"מ והפעולות המוגדרות עליו (במיוחד על רשימה מחסנית ותור).

·          ניתוח הממצאים.

·          דיון,  מסקנות והמלצות.

 

מקורות

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

John P. Smith, Andrea A. DiSessa, Jeremy Roschelle (1993). Misconceptions Reconceived: A Constructivist Analysis of Knowledge in Transition.

 

חזרה

לכנס תשס"ד

לאתר המרכז