¿Qué haces primero cuando comienzas a construir una aplicación web?

  • Comprenda qué API de datos tendría que construir.

    Preguntas clave:

    1. Si mañana voy a construir o pedirle a alguien que cree una aplicación móvil con la misma funcionalidad, ¿el código de fondo sería 100% reutilizable?
    2. Para los elementos que tardan en recuperarse, ¿es mi API lo suficientemente robusta como para usar AJAX u otras técnicas de actualización dinámica sin rediseñar el servicio?
    3. Si mi aplicación se hace grande y requiere una API pública, ¿podré reutilizar lo que estoy construyendo desde el primer día?
  • Comprenda cómo sería la primera prueba.

    No soy fanático de TDD y probablemente no escribiría la prueba primero.
    Pero aparecería justo después de que se realice la funcionalidad muy básica.

    Por ejemplo, si la funcionalidad es publicar un mensaje, la prueba lo publicará y se asegurará de que se pueda ver. Basado en JSON, la interfaz de usuario viene más tarde.
    Si hay algunas configuraciones de privacidad, la próxima prueba sería la que confirma que solo las personas adecuadas pueden ver el mensaje. Etc.

    Ejemplo: dkorolev / ariadne simple, más complejo (y más desordenado): dkorolev / overlog, dkorolev / ariadne.

  • Llame a las personas en las que confío construyendo la interfaz.

    Como no soy un desarrollador frontend sino una persona con la que, con suerte, disfrutan trabajar.

    Codificaré una interfaz de usuario que se asemeja a Google del pasado Milenio. Y me encanta 🙂 Pero las aplicaciones modernas tienen requisitos ligeramente diferentes.


Las anteriores son, en gran medida, solo las formas de implementar mi visión general de ingeniería basada en datos: ¿Qué es la liberación de datos ?

  • Decidir cuál es mi conjunto mínimo de funciones principales
  • Cree maquetas de interfaz de usuario clicables y pruébelas con posibles usuarios. Refinar según sea necesario. Es mucho más barato modificar prototipos.
  • Comenzar a construir mi backend, lo que realmente significa construir una API REST que será la interfaz de back-end para mi producto
  • Verifique que mi backend haga lo que necesito y actívelo en mi prototipo de interfaz de usuario en el que se puede hacer clic
  • Trabaja en la interfaz de usuario
  • Conecta la interfaz de usuario con mi backend

Por ahora tengo una aplicación web que funciona y está lista para ser extendida.

Primero averigua por qué lo estás construyendo. ¿Cuál es la necesidad comercial de esta aplicación y cómo soluciona esto?

En segundo lugar, ¿quiénes son los usuarios que necesita atender?

tercero, ¿cuál es el conjunto básico de funcionalidades que necesita construir antes de poder probarlo con humanos reales?

cualquier otra decisión queda fuera de estas respuestas.