2009-06-18 17 views
5

Donde trabajo, utilizamos un cronograma establecido para construir nuestras aplicaciones. ¿Qué está involucrado con las construcciones? ¿Qué se necesita para lograr que una aplicación se construya en un lugar que no sea el host local?¿Qué se necesita para hacer una "compilación"?

+3

No creo que esta sea una pregunta clara –

+9

Está bien ser vago al principio, pero a medida que el OP obtiene más información, se le anima a editar su pregunta y limitar su respuesta. A veces las personas realmente no saben lo que están buscando ... comenzar vago está bien. IMO al menos. –

+2

@Rich no es gracioso, no es genial .. @ Mitch Intenté reducirlo. Pero tal vez estoy usando el término equivocado. Me pregunto qué implica permitir que una aplicación se construya en un sitio que no sea el host local. @TSamper Obviamente él era el único que intentaba entender lo que estaba preguntando. – Eric

Respuesta

5

Me encontré con esto el otro día ... Ayuda a aclarar algunas cosas con respecto a la construcción de sitios web ASP.NET. No es una respuesta definitiva, pero vale la pena echarle un vistazo.

http://msdn.microsoft.com/en-us/library/399f057w.aspx:

ASP.NET ofrece dos opciones para precompilar un sitio:

Precompilar un sitio en su lugar. Esta opción es útil para sitios existentes en los que desea mejorar el rendimiento y realizar comprobaciones de errores.

Precompilación de un sitio para la implementación. Esta opción crea un resultado especial que puede implementar en un servidor de producción.

Además, puede precompilar un sitio para que sea de solo lectura o actualizable. Las siguientes secciones proporcionan más detalles sobre cada opción.

+0

Van a cerrar esto pronto ... pero gracias Ese artículo va a ayudar. – Eric

+1

@Eric - No creo que nadie va a cerrar esto. Es una buena pregunta. –

+1

@ unforgiven- Ya estaba cerrado antes. He votado para reabrir, nunca pensé que fuera una mala pregunta – TStamper

3

Hay una wikipedia article sobre el tema:

En el campo de los programas informáticos, el término compilación de software se refiere ya sea a el proceso de convertir el código fuente archivos en software independiente artefacto (s) que se puede ejecutar en una computadora , o el resultado de hacerlo. Uno de los pasos más importantes de una compilación de software es el proceso de compilación donde los archivos de código fuente son convertidos en código ejecutable.

Mientras que para programas sencillos el proceso consiste en un único archivo ser compilado, por software complejo del código fuente puede consistir en muchos archivos y pueden combinarse de diferentes maneras para producir muchas versiones diferentes.

El proceso de construcción de un programa de ordenador es gestionado generalmente por una herramienta de construcción , un programa que coordina y controla otros programas. Ejemplos de tal programa son make, ant, maven y SCons. La herramienta de compilación necesita compilar y vincular los diversos archivos, en en el orden correcto. Si el código fuente en un archivo en particular no ha cambiado , puede que no sea necesario volver a compilarlo (puede que no lo necesite porque puede depender de otros archivos que hayan cambiado). Sofisticado utilidades de compilación y los vinculadores intentan abstenerse de volver a compilar código que no lo necesita, para acortar el tiempo necesarios para completar la compilación. Las utilidades de generación modernas pueden ser parcialmente integradas en programas de control de revisiones como Subversion. Un proceso complejo más puede involucrar a otros programas que producen código o datos para el proceso de compilación .

+0

¡Gracias Jon! +1 – Eric

4

El objetivo básico de una compilación es garantizar que todos los archivos necesarios para el sitio web se desplieguen juntos.

Esto normalmente se realiza recuperando los archivos del control de origen, empaquetándolos en un archivo o archivos apropiados (llamados artefactos del proceso de compilación) y luego teniendo scripts que envían estos archivos a los servidores de producción o QA donde se encuentra la aplicación luego se lanzó.

Según la tecnología y el proyecto, la secuencia de comandos de compilación puede compilar archivos, ejecutar pruebas, crear archivos, copiar archivos en diferentes ubicaciones y cosas de esa naturaleza.

Existen diferentes herramientas para admitir el proceso de compilación para proporcionar la capacidad de creación de scripts subyacente. La generación de scripts a veces puede tener propiedades únicas, como garantizar que una tarea determinada solo se ejecute una vez, aunque diferentes partes de una compilación más grande deben garantizar su ejecución (como una tarea para crear un directorio para implementar artefactos, el directorio es solo creado una vez y el motor de script de compilación (como NAnt) se asegura de que aunque se llame a la tarea varias veces solo se ejecute una vez por compilación.

Si quiere saber más sobre las compilaciones, busque algunas fuente de proyectos que utilizan una tecnología con la que está familiarizado, y observe su procedimiento de compilación (cómo se cambia el código y despliéguelo).

+0

+1 para el primer párrafo. –

+0

¡Gracias, Yishai! +1 – Eric

4

This Joel On Software artículo es mi explicación favorita de compilaciones, compilaciones diarias, servidores de compilación de todos los tiempos

Su tesis central en este y muchos otros artículos es el mayor esfuerzo que se necesita para crear una compilación (lo que significa cualquier compilación o transformación de archivos fuente, incluido el cambio de su ubicación para que estén listos para producción/prueba) su software será menos productivo y de menor calidad y habrá más errores durante la implementación/las compilaciones. Idealmente, con una aplicación web, tiene un solo script en el que puede hacer doble clic, toma los archivos más recientes del control de origen, los compila y despliega todo en la ubicación de destino.

Existen muchos productos comerciales que pueden ayudarle con este fin. Me gusta Team Foundation Server, pero puede no ajustarse a su elección de idioma de presupuesto/cultura/programación. Tener una secuencia de comandos de compilación personalizada no es la peor idea, ya que le da a su programación un equipo con una gran visión de su proceso.

+0

Muy útil +1 – Eric

Cuestiones relacionadas