On a desktop app I might allow you to look at the items for sale, order online or reserve in store. On the mobile device though I might want to allow you scan bar codes to do price comparisons or give you context-based offers while in store. As we’ve built more and more mobile applications we’ve come to realise that people use them very differently and therefore the functionality we need to expose will differ too.
So in practice, our mobile devices will want to make different calls, fewer calls, and will want to display different (and probably less) data than their desktop counterparts. This means that we need to add additional functionality to our API backend to support our mobile interfaces.
Another problem with the general-purpose API backend is that they are by definition providing functionality to multiple, user-facing applications. This means that the single API backend can become a bottleneck when rolling out new delivery, as so many changes are trying to be made to the same deployable artifact.
Pas forcément convaincu par tout, aucune recette miracle, mais intéressant à lire pour amorcer une réflexion. La couche d’API doit-elle être générique ou spécifique à chaque application ?