Skip to content

How does Introspected REST reduce complexity? #18

Open
@Flogex

Description

@Flogex

It’s inflexible, difficult to implement, difficult to test, with performance and implementation issues. But most importantly, any implementation of REST model is very complex.

Now to the reader, it should be obvious that even if we manage to offload some of the aforementioned information to the Media Type, we would still have a very complex, massive, response from the server that mostly includes HATEOAS and not actual data. In our experience, such responses are very hard to implement correctly, test, be performant and even debug. After all, a human will sit down and write the initial code and debugging the code by the eye is important. Simplicity is crucial.

Then, we will propose a new model, Introspected REST, that solves the issues that REST creates and allows the design of progressively evolvable APIs, in a much simpler way than conventional REST.

I have problems understanding how Introspected REST can achieve more simplicity and avoid the issues of REST quoted above. As far as I understand, Introspected REST is built upon two pillars:

  1. The client receives hypermedia "on the side", i.e., hypermedia is not included in the actual response, and
  2. media types are replaced by composable micro types.

If a client is not interested in hypermedia, Introspected REST makes it easier for this client because it does not have to fetch and parse this unnecessary data. But I can't see how Introspected REST will reduce the complexity – of the client implementation or the response message – for a hypermedia-ready client.

Can you please explain

  • what you understand by complexity and
  • how Introspected REST can reduce this kind of complexity compared to REST?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions