Abstraction=انتزاع یا تجرید —> کلیات مد نظر بوده و به جزئیات پرداخته نمی شود
چه اندازه از جزئیات را حذف کنیم سطح انتزاع را نشان می دهد
یعنی هرچی جزئیات بیشتر حذف بشن یعنی سطح انتزاع بالاتره
انتزاع یکی اصول و مفاهیم طراحی در مهندسی نرم افزار است که در آن در طراحی ، سطح انتزاع را گام به گام کاهش می دهیم تا به پیاده سازی نزدیک شویم .
فرض کنیم در اتاقی نشستهایم و فردی از ما میپرسد که لپ تاپ کجاست؟ ما هم جواب فرد مد نظر را داده و میگوییم روی «میز» است. وقتی ما واژه ی میز را به زبان می آوریم، هرگز نمیگوییم که لپ تاپ روی میزی است که چوبی است، رنگ آن قهوه ای روشن است، روی آن یک شیشه قرار دارد، چهار پایه دارد، طول و عرض آن فلان اندازه است و … ما صرفاً واژه ی میز را به زبان آورده و طرف مقابل کاملاً متوجه میشود که منظور ما کدام میز است
در برنامه نویسی شیء گرا، Abstraction به این قضیه اطلاق میشود که ما به جای تمرکز روی یک نمونه ی عینی از چیزی، روی مفهوم چیزها متمرکز شویم و مفهومی کلی را در نظر بگیریم
Abstraction به مفهومی انتزاعی در ذهن برنامه نویس گفته میشود که کلی است و هیچ ارتباطی با یک آبجکت خاص ندارد.