1.1. מהו תכנות מונחה עצמיםתכנות מונחה עצמים היא טכניקה של הנדסת תוכנה, המספקת מספר כלי הפשטה:
מטרת מסמך זה היא להכיר לקורא את מנגנוני ההפשטה השונים אותם תכנות מונחה עצמים מספק לנו. המסמך מניח ידע בסיסי בעקרונות התכנות מונחה העצמים, למרות שהוא חוזר ומפרט אותם שוב. במסמך נתרכז בכל אחד כלי ההפשטה שצויינו, נסביר אותו לפרטיו ואת האספקטים השונים בו. היעדים שתכנות מונחה עצמים מציב לעצמו:
כאשר המטרה העיקרית הינה יצירת תוכנה איכותית. תכנות מונחה עצמים מנסה לתת שיטה כללית לפתור בעיות בתהליך יצירת התוכנית כדי שהתיכון, הכתיבה והתחזוקה של התוכנית יהיו קלים. התכנות לפי עקרונות התכנות מונחה העצמים נותן יתרונות רבים למתכנת. ניתן למנות ביניהן למשל יצירת רכיבים לשימוש חוזר, הסתרת אינפורמציה, encapsulation, הפיכת התוכנית למודולרית יותר ועוד. עם זאת, יתרונות אלו ניתנו גם על ידי גישות שקדמו לתכנות מונחה עצמים. היכולת המרכזית שגישת התכנות מונחה העצמים מוסיפה לנו מעבר למתודולוגיות האחרות היא הורשה. |
תוכן העניינים:
קישורים רלוונטיים:שיתוף: |
Borland style vptr
לפי מה שאני מכיר:"חסרון בגישה זו: גם כאשר איננו משתמשים ב-dynamic binding – אנחנו משלמים במקום"
לא נכון , עבור מחלקה A שאין לה מתודות דינמיות לא יווצר כלל המצביע, ולמשל עבור מחלקה B שיורשת מA פשוט נוסיף בהתחלה את המצביע, ואחרי הבלוק של A את שאר האינפורמציה של B . וככה לא משלמים על מה שלא משתמשים ועקרונות C++ נשמרים.
מה שכן באמת הcasting קצת יותר מסובך....