Hầu hết các khung phần mềm được đặc trưng bởi một triết lý thiết kế được gọi là IoC (Inversion of Control). Thông thường, các chương trình máy tính xác định luồng điều khiển của chương trình và thực hiện các cuộc gọi đến thư viện cho các chức năng riêng lẻ. Tuy nhiên, khi sử dụng khung, mối quan hệ bị đảo ngược: khung quản lý luồng điều khiển tổng thể và thực hiện các cuộc gọi đến mã của người dùng khi cần. Một khung cho phép nhà phát triển tập trung vào các chi tiết cụ thể cho dự án và bỏ qua các yêu cầu chung hơn.
Ví dụ về các khung phần mềm bao gồm API AJAX, các công cụ soạn thảo và viết kịch bản đa phương tiện và phần mềm trung gian ứng dụng web.
API, Luồng kiểm soát, Thuật ngữ lập trình, Phát triển phần mềm, Ứng dụng web