הפשטה לעומת אנקפסולציה

מְחַבֵּר: Laura McKinney
תאריך הבריאה: 8 אַפּרִיל 2021
תאריך עדכון: 1 מאי 2024
Anonim
Abstraction Vs Encapsulation
וִידֵאוֹ: Abstraction Vs Encapsulation

תוֹכֶן

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


תוכן: ההבדל בין הפשטה לבין אנקפסולציה

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

טבלת השוואה

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

מהי הפשטה?

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


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

דוגמא

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

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

מהי אנקפסולציה?

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


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

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

דוגמא

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

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

ההבדלים העיקריים בין הפשטה לבין אנקפסולציה

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

סיכום

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