Opinionated perspective
Why Are You Still Creating CRUD APIs?
It’s an ancient paradigm better left behind.
I heard about CRUD back when I started learning programming and web development. It was pretty much the approach to use. I’d be spending time thinking about entities as ‘resources’ and how to write awesome CRUD-based applications, where each resource was either created, read, updated, or deleted, and only that. Essentially what’s best described as ‘CRUD-thinking.’
Create, read, update, delete. Simple enough — and that’s exactly the problem.
When did you last think about your domain solely in terms of storage management?
But I can see why beginners like this approach. The CRUD idea translates well into existing programming concepts, as in SQL’s INSERT, SELECT, UPDATE, DELETE
or HTTP’s GET, POST, PUT/PATCH, DELETE
.
What’s the issue with CRUD-based apps?
In my opinion, the main issue is you’re completely neglecting the user’s intention when creating a CRUD-based interface. The intention is an important aspect we, as developers, can’t sweep under the rug.