Preguntas etiquetadas con api-design

El diseño de la interfaz de programación de aplicaciones (API) analiza las mejores prácticas para crear bibliotecas destinadas a fines generales o de uso público.

322
¿Deberías escribir tu back-end como una API?

Tuve una acalorada discusión hoy sobre nuestra aplicación MVC. Tenemos un sitio web escrito en MVC ( ASP.NET ), y generalmente sigue el patrón de hacer algo en la vista -> presionar el controlador -> el controlador construye un modelo (llama a un administrador que obtiene los datos, construye...

48
¿Por qué el método PATCH no es idempotente?

Me preguntaba acerca de esto. Supongamos que tengo un userrecurso con idy namecampos. Si quiero actualizar un campo, podría hacer una solicitud PATCH al recurso como este PATCH /users/42 {"name": "john doe"} Y luego la aplicación actualizará el nombre del usuario 42. Pero, ¿por qué si...

45
¿Qué tan necesario es seguir las prácticas de programación defensiva para el código que nunca se pondrá a disposición del público?

Estoy escribiendo una implementación Java de un juego de cartas, así que creé un tipo especial de Colección que llamo Zona. Todos los métodos de modificación de la Colección de Java no son compatibles, pero hay un método en la API de Zona move(Zone, Card), que mueve una Tarjeta de la Zona dada a sí...

42
¿Qué tiene de malo el DOM?

Sigo escuchando a la gente (Crockford en particular) decir que el DOM es una API terrible, pero no justifica realmente esta afirmación. Además de las inconsistencias entre navegadores, ¿cuáles son algunas de las razones por las cuales el DOM se considera tan

41
¿Por qué java.util.ArrayList permite agregar nulo?

Me pregunto por qué java.util.ArrayListpermite agregar null. ¿Hay algún caso en el que me gustaría agregar nulla un ArrayList? Me hago esta pregunta porque en un proyecto que teníamos un error en algún código se agregó nulla la ArrayListy era difícil de detectar dónde estaba el error. Obviamente...

33
¿Debería una API HTTP devolver siempre un cuerpo?

¿Hay algún tipo de estándar con respecto a las respuestas de la API HTTP? Después de leer este hilo del discurso comencé a preguntarme. Estamos desarrollando nuestra API HTTP JSON pública en mi trabajo, y no devolvemos nada cuando no es estrictamente necesario (por ejemplo, PUT to / resource /...