Если вы хоть раз сталкивались с API — наверняка слышали слова REST и RESTful.
И вроде бы звучат почти одинаково, но разработчики упорно делают между ними разницу.
Так в чем же дело? Почему одно из них — стиль архитектуры, а другое — способ его применения?
Давайте разберемся на пальцах. REST — это не технология и не фреймворк.
Это архитектурный стиль взаимодействия между клиентом и сервером. Он был придуман в 2000 году Роем Филдингом (да, тем самым, кто участвовал в создании HTTP).
Идея была в том, чтобы унифицировать способ общения между разными системами по сети —
чтобы не каждый придумывал свой велосипед. REST базируется на шести принципах, которые и делают его «REST-овым»: Когда эти принципы соблюдены — система соответствует REST.
Но если хотя бы часть из них игнорируется — она уже не совсем REST, а что-то “по мотивам”. RESTful — это приложение, которое следует принципам REST. То есть REST — это теория, а RESTful — практика.
Простой пример:
📚 книга — это REST, а 📖 книга,