در حالت کلی هر چه سطح abstraction یک لایبرری پایین تر باشه دولوپر باید کد بیشتری بزنه و برای کار کردن با اون لایبرری باید جزئیات بیشتری پیاده بشه ولی دست دولوپر برای تغییرات و کارهای خاص بازتره و هر چه سطح abstraction بالاتر باشه دست دولوپر برای تغییرات خاص بسته تره ولی سرعت توسعه بالاتره.