חלק I: מבוא • יחידה 1.1 מהות תכנות מונחה עצמים ואבני היסוד

פיתוח חשיבה מונחית עצמים: מנגנוני הפשטה על פני שינון תחביר

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

🧠
🧠

מודל מנטלי ועיקרון מנחה: פיתוח חשיבה מונחית עצמים ומנגנוני הפשטה — לא שינון תחביר!

💡 האנלוגיה המוחשית

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

⚖️ חוק הברזל הפדגוגי

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

🎯 תובנת המפתח

אני לא מניח שיש לך שום ידע מוקדם בשפת Smalltalk! אנחנו נשענים על הבנה קודמת במבני נתונים ואלגוריתמים, היכרות בסיסית עם שפת OOP כלשהי (כמו Java) וסקרנות ללמוד מהר סביבת פיתוח חדשה (Squeak).

1. מה אנחנו באמת באים ללמוד בתכנות מונחה עצמים?

המעבר מתפיסה של "כתיבת פקודות לפי תחביר" לתפיסה של מנגנוני הפשטה ועיצוב עצמים

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

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

🧠 על מה אנחנו שמים את הדגש? (מנגנוני הפשטה)

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

💻 איך אנחנו מתרגלים את זה הלכה למעשה?

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

2. ארגז הכלים שאיתו אנחנו יוצאים לדרך

אילו מיומנויות קודמות משרתות אותנו, ולמה אינך צריך שום היכרות מוקדמת עם Smalltalk?

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

📊 1. מבני נתונים ואלגוריתמים

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

☕ 2. היכרות עם שפת OOP (כגון Java)

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

🚀 3. למידה מהירה של סביבה חדשה

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

עזר גרפי 1.1 • מפת המסלול שלנו ליצירת חשיבה מונחית עצמים

מאבני היסוד המוקדמות אל מנגנוני ההפשטה הטהורים ב-Smalltalk וב-Squeak

הפשטה מול תחביר
מבני נתונים ואלגוריתמים תשתית החשיבה האלגוריתמית שלנו ניסיון בסיסי בשפת OOP (כגון Java) + למידה מהירה של סביבה חדשה אין צורך בידע מוקדם ב-Smalltalk! נבנה יחד את ההבנה מהצעד הראשון הנדסת תוכנה ומדעי המחשב חשיבה מונחית עצמים עמוקה תכנות בשפה מונחית עצמים טהורה התנסות מעשית ב-Smalltalk ב-Squeak 🧠 המוקד שלנו: מנגנוני הפשטה עקרונות OOP טהורים, הפשטה, הגדרת עצמים ושליחת הודעות ⚙️ לא המוקד: שינון תחביר איננו מבזבזים אנרגיה על דקדוק מסורבל של שפה ספציפית
🔍

מיני-סימולציה 1.1: סייר אבני היסוד של החשיבה מונחית העצמים

לחץ או רחף על כל מרכיב כדי שאסביר לך איך הוא משתלב אצלנו
🕹️
סימולציה אינטראקטיבית גדולה 1.1

מעבדת מוכנות ושינוי פרדיגמה: מלימוד תחביר להבנת מנגנוני הפשטה

✅ בוא נבדוק יחד את ארגז הכלים שלך:
100% מוכנות
📊 המשוב שלי עבורך והשוואת גישות הלמידה:
השוואת מיקוד הלמידה שלנו: דגש על מנגנוני הפשטה ב-OOP
⚡

הגשר הנרטיבי: הבנו שאנחנו מתמקדים במנגנוני הפשטה ולא בתחביר – אבל למה בחרנו דווקא בשפת Smalltalk?

עכשיו, כשברור לנו שאנחנו רוצים לפתח חשיבה מונחית עצמים עמוקה, עולה שאלה מתבקשת: מדוע אנחנו בוחרים לתכנת דווקא בשפת Smalltalk ולא מסתפקים בשפות מוכרות כמו Java, C# או ++C? בלשונית הבאה אראה לך מדוע Smalltalk היא שפה מונחית עצמים "טהורה", איך היא פועלת כמעט ללא תחביר (בדומה ל-LOGO ול-LISP), ואיך שני חוקי יסוד פשוטים ("הכל הוא אובייקט" ו"כל חישוב מתרחש על ידי שליחת הודעה") מחליפים עשרות חוקי דקדוק מסורבלים!

סוף יחידה 1.1 • חשיבה מונחית עצמים ואבני היסוד
חלק I: מבוא • יחידה 1.2 שפות טהורות מול שפות היברידיות

מדוע כדאי ללמוד Smalltalk? שפה מונחית עצמים טהורה, עצמים והודעות בלבד

הצידוק הפדגוגי לבחירה ב-Smalltalk על פני שפות היברידיות או עתירות תחביר (C++, Java, C#), הדמיון ל-LOGO ו-LISP במנגנון ההפשטה האחיד, ושני חוקי היסוד: הכל הוא אובייקט, וכל חישוב מתרחש על ידי שליחת הודעה.

💎
🧠

מודל מנטלי ועיקרון מנחה: כשאי אפשר "לברוח" ממונחות עצמים, החשיבה הופכת לטבע שני

💡 האנלוגיה המוחשית

בשפה היברידית (כמו ++C) תמיד יש "דלת מילוט" שמאפשרת לחזור לתכנות פרוצדורלי ישן כשנתקלים בקושי. ב-Smalltalk אין דלת מילוט: הכל מתנהל בעולם של עצמים, ולכן המוח שלך מתרגל לחשוב ולעצב אך ורק בגישת OOP!

⚖️ חוק הברזל הפדגוגי

כל פעולה ב-Smalltalk מתבצעת באמצעות שני אלמנטים בלבד — הגדרת עצמים ושליחת הודעות: הכל הוא אובייקט (Everything is an object), וכל חישוב מתרחש על ידי שליחת הודעה (Everything happens by message sending).

🎯 תובנת המפתח

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

1. למה לא להסתפק ב-Java, ב-#C או ב-++C?

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

אם תחפש חומרי לימוד על תכנות מונחה עצמים ("Object-Oriented Programming"), תגלה אינספור מקורות שמבטיחים ללמד OOP, אבל בפועל מלמדים תכנות בסיסי בשפה מסוימת כמו #C, Java או ++C. הבעיה היא שכשלומדים OOP דרך שפות כאלה, רוב הקשב הולך על התמודדות עם כללי תחביר מורכבים, יוצאים מן הכלל ופרטים טכניים של השפה, במקום להעמיק בעקרונות ההפשטה הטהורים של מונחות עצמים.

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

2. ארבע הסיבות שבגללן Smalltalk היא השפה הטובה ביותר ללימוד OOP

טהרת השפה, מנגנון הפשטה אחיד (בדומה ל-LOGO ו-LISP), מינימליזם תחבירי, ועצמים והודעות בלבד

💎 1. הקניית חשיבה טהורה ב-OOP

שפת Smalltalk היא שפה מונחית עצמים "טהורה" (Pure Object-Oriented Language). בניגוד לשפות היברידיות (כגון ++C המאפשרת שילוב של פרדיגמה פרוצדורלית, או Java שמפרידה בין אובייקטים לטיפוסים פרימיטיביים כמו int), ב-Smalltalk אי אפשר "לברוח" מהעולם המונחה עצמים — ולכן אנחנו מתרגלים לחשוב, לעצב ולתכנת אך ורק בגישת OOP!

🧩 2. פשטות מנגנון ההפשטה (בדומה ל-LOGO ו-LISP)

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

🪶 3. מינימליזם תחבירי (כמעט נטולת תחביר)

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

📨 4. העיקרון המוביל – עצמים והודעות בלבד

כל התכנות בשפה מתבצע על ידי שני אלמנטים בלבד: הגדרת עצמים ושליחת הודעות. שני חוקי היסוד המוחלטים שלנו הם:
• הכל הוא אובייקט (Everything is an object)
• כל חישוב מתרחש על ידי שליחת הודעה (Everything happens by message sending)

עזר גרפי 1.2 • השוואה ויזואלית רב-ממדית

תרשים רדאר והשוואה: שפת Smalltalk הטהורה מול שפות היברידיות/תחביריות (C++, Java, C#)

Pure OOP vs. Hybrid
טהרת ה-OOP (100%) פשטות תחבירית מנגנון הפשטה אחיד עומס חוקי תחביר מיקוד בעקרונות ההפשטה 🟣 שפת Smalltalk (הסביבה הטהורה שלנו): • שפה מונחית עצמים "טהורה" – אין בריחה לפרדיגמה פרוצדורלית • כמעט נטולת תחביר; מנגנון הפשטה אחד פשוט וקליט (כמו LOGO ו-LISP) • הכל הוא אובייקט + כל חישוב מתבצע ע"י שליחת הודעות בלבד! 🔴 שפות היברידיות / עתירות תחביר (C++, Java, C#): • דורשות התמודדות עם דקדוק ותחביר מורכב במקביל לעקרונות • כוללות אלמנטים שאינם אובייקטים (טיפוסים פרימיטיביים / פונקציות חופשיות) • מאפשרות "לברוח" מחשיבת OOP אל הרגלים פרוצדורליים
🔬

מיני-סימולציה 1.2: השוואת מנגנון ההפשטה של Smalltalk, LOGO ו-LISP מול שפות היברידיות

לחץ על כל שפה כדי לגלות את מנגנון ההפשטה שלה
🕹️
סימולציה אינטראקטיבית גדולה 1.2

מעבדת החשיבה הטהורה: "הכל הוא אובייקט" ו"הכל קורה בשליחת הודעה"

בחר פעולה תכנותית וראה במו עיניך איך בשפות כמו ++C או Java יש מנגנונים תחביריים נפרדים (טיפוסים פרימיטיביים, אופרטורים, משפטי תנאי תחביריים), בעוד שב-Smalltalk קיים מנגנון הפשטה אחד ויחיד: עצם (Receiver) המקבל הודעה (Message)!

⚡

הגשר הנרטיבי: הבנו למה Smalltalk היא שפה טהורה – אבל איך נראית סביבת העבודה החיה שבה העצמים האלה חיים?

בשפות רגילות אנחנו כותבים קובצי טקסט דוממים, מקמפלים אותם ומריצים. אבל ב-Smalltalk העצמים שלנו חיים בתוך עולם חי ואינטראקטיבי שנקרא Squeak. מה הופך את סביבת Squeak למיוחדת כל כך? מה פירוש העובדה שכל סביבת הפיתוח — כולל המהדר ומנפה השגיאות — כתובה ב-Smalltalk עצמה? ואיך תשתית הגרפיקה שלה (Morphic) שימשה את אולפני וולט דיסני ליצירת סרטים? בוא נעבור ליחידה 1.3 ונגלה!

חלק I: מבוא • יחידה 1.3 סביבת העבודה החיה שלנו

סביבת הפיתוח Squeak: קוד פתוח, מימוש עצמי (Self-Hosting) ומנשק Morphic

תאימות לתקן Smalltalk-80, קהילה עולמית פעילה בדומה ל-LINUX, המשמעות המהפכנית של סביבה שכתובה כולה ב-Smalltalk עצמה, ותשתית הגרפיקה החיה Morphic ששימשה את אולפני וולט דיסני.

🐭
🧠

מודל מנטלי ועיקרון מנחה: עולם חי של עצמים שכתוב כולו בשפת Smalltalk עצמה

💡 האנלוגיה המוחשית

בסביבות פיתוח רגילות, המהדר ומנפה השגיאות הם "קופסה שחורה" נעולה. ב-Squeak, הסביבה כולה ממומשת ב-Smalltalk עצמה — המהדר, ה-Debugger והחלונות הם עצמים חיים שאנחנו יכולים לפתוח, לחקור ולשנות!

⚖️ חוק הברזל הפדגוגי

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

🎯 תובנת המפתח

Squeak היא סביבת קוד פתוח (Open Source) תואמת תקן Smalltalk-80, בעלת קהילת משתמשים ומפתחים פעילה בעולם בדומה ל-LINUX, וזמינה להורדה חופשית וחינמית מהמרשתת.

1. להכיר את Squeak: הרבה יותר מעוד עורך קוד

למה סביבת העבודה של Smalltalk שונה מכל סביבת פיתוח שהכרת עד היום?

כשאתה כותב קוד בשפות כמו Java או ++C, אתה בדרך כלל פותח עורך טקסט, כותב קובצי קוד סטטיים, מריץ מהדר חיצוני ומקבל תוכנית שרצה ונכבית. ב-Smalltalk התפיסה שונה לחלוטין: אנחנו עובדים בתוך עולם וירטואלי חי של עצמים, והסביבה שבה נעבוד נקראת Squeak.

בוא נבין יחד את ארבעת המאפיינים המרכזיים שהופכים את Squeak לסביבת למידה ופיתוח יוצאת דופן:

📜 1. תאימות לתקן Smalltalk-80 וקוד פתוח

סביבת Squeak היא סביבת פיתוח בקוד פתוח (Open Source) התואמת באופן מלא לתקן ההיסטורי והמכונן Smalltalk-80, והיא חופשית וזמינה להורדה בחינם מהמרשתת.

🐧 2. קהילה עולמית פעילה (בדומה ל-LINUX)

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

🔄 3. מימוש עצמי מלא (Self-Hosting)

זהו פרט מדהים: סביבת Squeak ממומשת כולה בשפת Smalltalk עצמה! המשמעות היא שכל כלי המערכת — המהדר (Compiler), מנפה השגיאות (Debugger), הדפדפנים (Browsers) וסביבת הפיתוח כולה — כתובים בקוד Smalltalk ונגישים לך לחקירה ולשינוי!

🎬 4. מנשק גרפי עשיר (Morphic) ואולפני וולט דיסני

הסביבה כוללת מנשק משתמש גרפי (GUI) עשיר ואינטראקטיבי המבוסס על תשתית Morphic — שאף שימשה בעבר את אולפני וולט דיסני (Walt Disney) בפיתוח וביצירת סרטים! הממשק הישיר והחי מעודד חקרנות ומדרבן להעמיק בהתנסות המעשית.

✨

למה אולפני וולט דיסני בחרו ב-Squeak ובתשתית Morphic?

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

קוד פתוח וחופשי חינם במרשתת

הורדת סביבת העבודה Squeak

חבילת התוכנה של Squeak היא חופשית לחלוטין וזמינה להורדה ללא תשלום מהמרשתת לכל מערכת הפעלה.

⬇️ הורד את Squeak עכשיו (חינם - squeak.org) ↗
עזר גרפי 1.3 • ארכיטקטורת סביבת Squeak

מימוש עצמי מלא (Self-Hosting) ב-Smalltalk ומנשק גרפי Morphic

Squeak Smalltalk-80
סביבת העבודה Squeak — תואמת תקן Smalltalk-80 · קוד פתוח · קהילה פעילה בדומה ל-LINUX · חינם במרשתת ⚙️ המהדר (Compiler) כתוב כולו ב-Smalltalk נגיש לחקירה ולשינוי! 🐞 מנפה השגיאות (Debugger) כתוב כולו ב-Smalltalk תיקון קוד חי תוך כדי ריצה 🧭 דפדפנים וכלי מערכת System Browser, Workspace ממומשים כעצמי Smalltalk 🎨 מנשק גרפי Morphic שימש את אולפני Disney מדרבן להעמיק את ההתנסות 🔄 מימוש עצמי (Self-Hosting): כל כלי הפיתוח והמנשק הגרפי כתובים בשפת Smalltalk עצמה וחשופים בפנינו!
🔎

מיני-סימולציה 1.3: חוקר המימוש העצמי (Self-Hosting) של Squeak

לחץ על כל כלי מערכת כדי לראות איך הוא בנוי כעצם ב-Smalltalk
🎨
סימולציה אינטראקטיבית גדולה 1.3

שולחן העבודה החי של Squeak ומנשק ה-Morphic (בהשראת אולפני וולט דיסני)

בתשתית ה-Morphic של Squeak, כל עצם גרפי על המסך הוא אובייקט חי שמגיב מיד להודעות שנשלחות אליו! שלח הודעות ב-Smalltalk אל העצם הגרפי וראה כיצד הסביבה החיה מעודדת חקירה והתנסות:

Squeak 80 · Morphic World
🎬 aDisneyMorph
Workspace — שלח הודעת Smalltalk ל-aDisneyMorph:
[Transcript] aDisneyMorph מוכן לקבלת הודעות בסביבת Squeak!
⚡

הגשר הנרטיבי: חיברנו את כל התמונה של פרק 1 – בוא נתרגל את מושגי היסוד ונראה איך הם מובילים אותנו לפרק 2!

כעת, אחרי שהבנו את המיקוד במנגנוני הפשטה, את טהרת השפה של Smalltalk ואת הכוח של סביבת Squeak וה-Morphic, נעבור ליחידה המסכמת של הפרק שבה נבחן את עצמנו מול כל מושגי המפתח בכרטיסיות זיכרון תלת-ממדיות ונתכונן לפרק 2 (התפתחות מנגנוני ההפשטה)!

חלק I: מבוא • יחידה 1.4 אינטגרציה ואינדקס מושגים

מילון מושגים אינטראקטיבי וסיכום עקרונות פרק 1

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

🏆
🧠

מודל מנטלי ועיקרון מנחה: משלושת עמודי התווך של המבוא אל מנגנוני ההפשטה

💡 עמוד תווך 1: המטרה

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

⚖️ עמוד תווך 2: השפה (Smalltalk)

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

🎯 עמוד תווך 3: הסביבה (Squeak)

סביבת פיתוח בקוד פתוח תואמת Smalltalk-80, עם קהילה פעילה בדומה ל-LINUX, ממומשת כולה ב-Smalltalk עצמה ובעלת מנשק Morphic עשיר ששימש את אולפני וולט דיסני.

עזר גרפי 1.4 • מפת המושגים השלמה של פרק 1

הסינרגיה בין מנגנוני הפשטה, שפת Smalltalk הטהורה וסביבת Squeak החיה

Concept Synthesis
1. חשיבה והפשטה • דגש על מנגנוני הפשטה ב-OOP • לא שינון תחביר של שפה ספציפית • בסיס: מבני נתונים ו-Java • ללא צורך בידע קודם ב-Smalltalk ⟵ 2. שפת Smalltalk הטהורה • שפת OOP טהורה (אין בריחה) • מנגנון הפשטה יחיד (כמו LOGO/LISP) • כמעט נטולת תחביר מסורבל • הכל אובייקט + שליחת הודעות! ⟵ 3. סביבת העבודה Squeak • קוד פתוח תואם Smalltalk-80 • קהילה פעילה בדומה ל-LINUX • מימוש עצמי מלא ב-Smalltalk • מנשק Morphic (אולפני Disney)
⚡

מיני-סימולציה 1.4: בוחן אבחנה מהיר – בדוק אם תפסת את העיקרון!

לחץ על כל היגד כדי לבדוק את האבחנה המושגית
🃏
סימולציה אינטראקטיבית גדולה 1.4

כרטיסיות זיכרון תלת-ממדיות (3D Flashcards) לכל מושגי פרק 1

לחץ על כל כרטיסייה כדי להפוך אותה ולבחון את עצמך על כל אחד מ-9 מושגי היסוד של פרק 1:

נחשפו: 0 / 9
🚀

סיימנו את פרק 1! מה מחכה לנו בפרק 2?

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

🎯 בפרק 2 (מנגנוני הפשטה) נחקור יחד: • דוגמה מוחשית לשימוש במנגנוני הפשטה: איך הפשטה עוזרת לנו להתמודד עם מורכבות.
• התפתחות מנגנוני ההפשטה לאורך ההיסטוריה: משפת מכונה ואסמבלר, דרך שגרות ופונקציות, מודולים וטיפוסים מופשטים (ADT), ועד למחלקות וירושה ב-OOP!
🕹️

מעבדת חקר אינטראקטיבית

❓

5 שאלות פתוחות מדורגות + 5 שאלות אמריקאיות עם הסברים מלאים לכל יחידה

🚀 השלב הבא שלנו: פרק 2 – מנגנוני הפשטה

סיימנו את פרק 1: יסודות החשיבה מונחית העצמים, Smalltalk ו-Squeak. בפרק 2 נצלול יחד אל מנגנוני הפשטה ונבחן: