Sono più preoccupato per le funzionalità software di un'API. Cioè:
- Semplicità
- Coerenza
- Elegance
- intuitivo
- Funziona solo
Potrei avere ragione su un libro su come applicare o essere implementato, ma basti dire che a meno che un utente dell'API non riesca a capire come utilizzarlo in modo efficace, è di uso limitato. La semplicità non significa semplicismo, proprio come l'eleganza non significa onate. Significa semplicemente che è semplicemente perfetto per il lavoro. Meno persone devono pensare a come utilizzare l'API, più possono semplicemente usarlo.
In che modo questi aspetti dipendono dall'Innage, dallo scopo e dal pubblico di destinazione dell'API. L'ultimo criterio si riduce al principio di minima sorpresa. Nessun errore in cui non ti aspettavi. Qualsiasi ragionevole interpretazione dell'API ti darà i risultati che desideri.