لایه انتزاعی (Abstraction Layer) در برنامهنویسی و مهندسی نرمافزار به معنای ایجاد یک سطح میانجی است که پیادهسازیهای پیچیده و جزئیات سیستم را از لایههای بالاتر پنهان میکند. این کار به کاربران یا توسعهدهندگان این امکان را میدهد که فقط با مفاهیم عمومی و سطوح بالاتر تعامل کنند و نیازی به درک جزییات داخلی سیستم نداشته باشند.
برای مثال، در برنامهنویسی شیگرا، یک لایه انتزاعی میتواند یک رابط (interface) باشد که فقط متدها و عملیات عمومی را نشان میدهد، بدون اینکه نحوه پیادهسازی آنها مشخص باشد. این رویکرد به توسعهدهندگان اجازه میدهد تا بر روی طراحی کلی سیستم تمرکز کنند و جزئیات داخلی را در لایههای پایینتر پنهان کنند.
در دنیای سختافزار نیز میتوان لایههای انتزاعی داشت که تعامل با قطعات مختلف را ساده میکند بدون اینکه جزئیات پیادهسازی سختافزار را نیاز باشد درک کرد.