Una startup como aplicación web luego luego se extendió como aplicación móvil. ¿Cómo hacerlo correctamente?

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/18176

Pregunta

Tengo esta idea que quiero construir. Quiero comenzar la idea como una aplicación web, luego pasar a la aplicación móvil y una posible aplicación de escritorio.

El proyecto debe tener bases de datos (principalmente cadenas). También los usuarios tendrían cuentas y acceso a estas bases de datos. Por lo tanto, el proyecto proporciona acceso a los recursos de usuario a través de Internet. Quiero la base de datos de fácil acceso a través de diferentes plataformas. El proyecto también es para agudizar mi TI, por lo que no quiero el camino fácil, sino el mejor.

  • ¿Cuáles son mis mejores opciones de marcos/habilidades?
  • Buenas herramientas para administrar el proyecto?
  • ¿Comenzar como una aplicación web una buena opción, o debo construirlo como una aplicación móvil primero?

Tengo algún conocimiento (pero no mucha experiencia) en:

C, C ++, Java, PHP, JavaScript, MySQL, HTML/CSS.

Editar: Sé que mi pregunta es demasiado general, todo lo que quería es algunas ideas y guiar para tener un buen comienzo.

@Nathan Taylor, con respecto a la aplicación web, no me importa ninguna opción (¿debería aprender python o seguir con PHP a este respecto)?

Probablemente implementaré el proyecto en Android y posiblemente iPhone.

¿Fue útil?

Solución

La parte compartida de su código será el componente del lado del servidor. Supongo que construirá un conjunto de servicios web, por ejemplo, servicios de jabón. Los diversos frontales se comunicarán con esta misma API de servicios. Es muy importante pensar mucho sobre qué API podrá atender a todas las plataformas y dispositivos objetivo. Piense en las diferentes expectativas de los usuarios entre un escritorio y una aplicación móvil, y lo que esto significa para la API subyacente.

No se moleste en intentar usar el mismo código del lado del cliente para las diferentes plataformas de destino (móvil, web, escritorio). Nunca obtendrá una experiencia de usuario sólida de esa manera. Para los diversos frontales, probablemente sea mejor concentrarse en una sola pila de tecnología que puede extenderse a todas las plataformas a las que desea apuntar. De lo contrario, te ahogarás en la cantidad de cosas que aprender. Elegir la pila web es una opción segura, ya que puede adaptarla a dispositivos móviles y a dispositivos de escritorio con varias soluciones (por ejemplo, Adobe Air, Sencha Touch, ...). Si absolutamente tiene que puede recoger Objetivo C para escribir aplicaciones nativas de iPhone más tarde.

Si fuera yo, usaría las siguientes opciones de tecnología:

  • Servidor: PHP o Node.js
  • Side Client (Web): Ext JS
  • Side Client (Mobile): Sencha Touch
  • Side Client (Desktop): Adobe Air

No digo que esas son las mejores opciones para ti. Sería las mejores opciones para mí.

Licenciado bajo: CC-BY-SA con atribución
scroll top