Pregunta

Esta pregunta no es realmente para cualquier tecnología específica sino más bien cuestión general desarrollador.

Todos sabemos por experiencia que las cosas cambian. Marcos evolucionan, se añaden nuevas características y esas cosas consigue quitado.

Por ejemplo, ¿cómo podría un producto utilizando la versión 1.0 del marco de "ABC" adaptarse cuando la versión 2.0 viene (ABC podría ser .NET, Java, cacao, o lo que quieras)?

Una solución podría ser hacer los marcos compatible con versiones anteriores; de modo que el código escrito para 1,0 seguirá funcionando en la versión 2.0 del marco.

Otra podría ser la de atacar selectivamente sólo la versión 1.0 del marco, pero esto podría dejar a muchas nuevas características de lujo sin usar (muchas de las aplicaciones .NET 2.0 parecen hacerlo)

¿Alguna idea sobre lo que nosotros como desarrolladores debemos hacer como la mejor práctica para mantener nuestras tecnologías hasta la fecha, aunque no romper nuestras aplicaciones?

¿Fue útil?

Solución

Anticipar e invertir en el cambio.

Muchas empresas parecen pensar que el cambio es una mala cosa. Se complica un proceso de otro tipo de trabajo. Pero a medida que los desarrolladores, que tienden a ver las cosas de manera diferente.

Cambio, específicamente nuevas versiones, puede provocar muchas cosas buenas, como las actualizaciones de seguridad, mejoras de rendimiento y características. Y más a menudo que no, el cambio es inevitable. ¿Por qué no verlo como una realidad de la situación en lugar de una sorpresa?

Se puede hacer cosas como mantener los datos de copia de seguridad en un formato que no sea específica del proveedor en caso de una nueva tecnología tan de moda no funciona y hay que abandonar el barco.

Además, si usted tiene los recursos, se puede mantener versiones antiguas y nuevas de algo ejecutan al mismo tiempo. Lo ideal es que no quiere que sus sistemas de producción para estar en ejecución y más nuevo software hasta que alguien ha evaluado y firmado apagado en él. Cosas como las pruebas unitarias y beta / clones de desarrollo de sistemas de producción pueden ayudar en este proceso.

El cambio debe ser aceptada, no temido. Desarrolladores, grupos de interés, y gente de negocios deben mantenerse al corriente de las nuevas tecnologías y los marcos. Siempre estar a punto de cambio de dirección. En la Rusia soviética, la API de mantenerse al día con usted!

Otros consejos

Oh, las posibles respuestas ....

Mis pensamientos, aunque no único (para estar seguro) van más o menos de esta manera.

  1. Rama su código fuente en su control - que está utilizando control de código fuente, ¿verdad?
  2. En la rama, actualizar el marco (o lo que sea)
  3. Fijar los problemas en las pruebas unitarias. Aprovechar las nuevas API Framework, eliminar las referencias amortizados, etc.
  4. a fondo la prueba.
  5. [opcional] volver a pulsar en el tronco (esto y 4 probablemente podría ser volteado)
  6. Lanzamiento de la producción - felicidades, que ahora está en el nuevo marco
  7. .

En realidad no es tan fácil, pero yo creo que la respuesta más sencilla es probablemente la mejor respuesta. Tan sólo ha de seguir adelante ...

Los únicos dos "soluciones" que veo son lo que ha sugerido: para mantener o actualizar al nuevo marco. Creo que, en general, cuando su API recibe una actualización importante y su software es importante, es probablemente la mejor manera de evaluar los beneficios de la modernización y si esos beneficios son mayores que el tiempo necesario para actualizar entonces el mejor curso de acción es actualizar.

Escoja un conservador, arriesgado, o entre enfoque adecuado para su negocio y seguir adelante.

Por ejemplo, si su empresa es la innovación que necesita para ser capaz de utilizar las últimas versiones de frameworks-- o al menos investigar libremente. Tendrá que contratar a personas que están interesadas y cómodo de una manera tan ambiente- algunos desarrolladores se excitan realmente sobre esto, otros no tanto. Poner en un cierto estructura para que las actualizaciones de seguridad (ramas y la arquitectura estática). Los clientes deben entender los beneficios que están obteniendo por estar con un company-- tales vanguardia si no se está comunicando esto a ellos, puede que no sea algo que valoran, y van a estar (con razón) molesta cuando las cosas se rompen debido de una actualización del sistema.

o elija un enfoque conservador. Elige una sólida tecnología, muy gastado y no tengo planes de actualización que, a excepción de las versiones menores. En sus palabras, el objetivo de una versión específica. Contratar a personas que aprecian este tipo de ambiente.

o recoger algo más en el medio de la carretera.

Cada uno de estos enfoques son apropiados en diferentes veces-- que he estado en ambos extremos en diferentes proyectos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top