Je dois souvent concevoir des API client à utiliser par d'autres programmeurs. La langue peut varier de Ruby, Java, Erlang et Javascript (Mootools). Est-ce que quelqu'un a des conseils sur la création d'une API très utilisable. Et oui, c'est "une" question très subjective et je demande que je puisse rendre mes API plus faciles à utiliser par d'autres.Quelle est la meilleure façon de concevoir une API client?
Répondre
Je recommande fortement de suivre Joshua Bloch: Joshua Bloch - How to Design a Good API and Why it Matters. Il est disponible en PDF et Video.
Quel est exactement ce que mes posts points aussi? – dangerstat
Je ne l'ai pas vu. Les grands esprits se ressemblent :) – BalusC
montre ceci: http://video.google.com/videoplay?docid=-3733345136856180693#
Pour ajouter ce détail est une vidéo de conférence donnée par Josh Bloch qui est un BOD senior java à Google. C'est excellent si vous voulez un aperçu sur les questions à prendre en compte lors de la création d'une API
Votre lien ne fonctionne pas, il est dit que la vidéo n'est pas disponible – Zubair
Quelques idées:
- Faites vos noms de méthode très descriptive
- Utilisez la documentation pour indiquer clairement les paramètres et les valeurs renvoyées
- Suivez YAGNI et Kiss
- Rien aide comme des exemples de code ... beaucoup d'entre eux couvrant beaucoup de cas d'utilisation
Je recommande de lire ce qui suit de la Trollte ch/gars Nokia:
J'ai commencé à le lire. très agréable! – Zubair
Si vous avez êtes intéressé par des alternatives non-libres, le livre suivant serait une bonne recommandation:
Practical API Design: Confessions of a Java Framework Architect by Jaroslav Tulach
Si l'un des vos objectifs principaux est de faire un utilisable API, ou, en d'autres termes, pour fournir une bonne expérience de développeur , alors peut-être que vous devriez revoir cette liste de ressources (facilité d'utilisation api & ressources d'expérience de développeur): http://www.apiusabilitytesting.com/resources/
- 1. Quelle est la meilleure façon de créer une bibliothèque client pour une API de service Web?
- 2. Quelle est la meilleure façon de concevoir une base de données pour Ruby on Rails?
- 3. Une meilleure façon de concevoir cette boucle?
- 4. meilleure façon de concevoir la boucle
- 5. Quelle est la meilleure façon de concevoir un formulaire ayant plus de 20 champs?
- 6. Quelle est la meilleure façon de concevoir des classes Cairngorm étendues à partager entre applications?
- 7. Quelle est la meilleure façon de transmettre plusieurs paramètres de requête à une API reposante?
- 8. Quelle est la meilleure façon de concevoir des paires clé-valeur dynamiques dans mysql?
- 9. Quelle est la meilleure façon d'exécuter `sum_by_sql`?
- 10. Quelle est la meilleure façon d'apprendre CUDA?
- 11. Quelle est la meilleure façon d'implémenter hashCode()?
- 12. Quelle est la meilleure façon d'exposer l'API de mon serveur?
- 13. Quelle est la meilleure façon de conduire une animation?
- 14. C# Quelle est la meilleure façon de copier une BindingList?
- 15. Quelle est la meilleure façon de déployer une application Pylons?
- 16. Quelle est la meilleure façon de surveiller une application .NET?
- 17. Quelle est la meilleure façon d'exposer une API de rappel - C++
- 18. Quelle est la meilleure façon d'apprendre WCF?
- 19. Quelle est la meilleure façon d'utiliser l'API Twitter via PHP?
- 20. Quelle est la meilleure façon de fournir une application de boutique en ligne à plusieurs clients?
- 21. Quelle est la meilleure façon d'implémenter une API dans ASP.NET en utilisant MVC?
- 22. Meilleure façon de concevoir l'interface utilisateur Android?
- 23. Quelle est la meilleure façon d'échantillonner/profiler une application PyObjC?
- 24. Quelle est la meilleure façon d'écrire une application Python GTK +?
- 25. Quelle est la meilleure façon d'annuler une requête WCF asynchrone?
- 26. Quelle est la meilleure façon d'autoriser une clé USB
- 27. Quelle est la meilleure façon d'initialiser une application?
- 28. MVC Grid avec une datepicker - quelle est la meilleure façon?
- 29. Quelle est la meilleure façon d'attraper une exception IllegalArgumentException
- 30. Quelle est la meilleure façon d'appliquer une ombre portée?
Dupe: http://stackoverflow.com/questions/469161/how-do-you-define-a-good-or-bad-api – BalusC
Merci, quand je entré la question, je n'ai pas vu l'autre. – Zubair