Podría parecer obvio, pero no lo es, estos tres procesos no son lo mismo, y la mayoría de IDE nos los presenta, como es el caso de Visual Studio.
En este artículo, corto y directo al grano aprenderás lo que cada uno de estos procesos hace para que de una vez por todas puedas saber exactamente que hacen, la seguridad de saber lo que está ocurriendo no tiene precio.
Compilar o Build
Esta opción, lo que hace es compilar tu código escrito en un lenguaje de alto nivel, como puede ser C# y convertirlo en lenguaje intermedio (IL) o en Código común intermedio (CIL) luego ocurre la compilación en tiempo de ejecución o (Just in time compilation o JIT) generando los ensamblados en código máquina (archivos ejecutables con extensión exe o bibliotecas con extensión dll) a partir del código intermedio.
La opción Compilar o Build sólo compila los archivos fuente que han cambiado desde la última compilación, aquellos que no han cambiado no las vuelve a compilar.
Recompilar o Rebuild
Esta es una operación parecia a la compilación, con la diferencia que primero borra todos ensamblados generados en compilaciones anteriores. y luego ejecuta una compilación completa.
Esta opción la deberás utilizar cuando tienes algún problema con los ensamblados generados, ya sea porque están corruptos o tienes algún problema de cualquier índole con ellos.
Limpiar o Clean
Borra todos los archivos o ensamblados generados por una compilación ya sea que se haya hecho mediante compilar o recompilar, es lo mismo, esta opción borrará esos archivos.
Hay que tener en cuenta que ninguna de estas tres opciones hacen cambios sobre nuestro código fuente, sino que generan archivos nuevos a partir de ellos o los borran en el caso de "limpiar".
Si quieres aprender a mayor detalle sobre cómo el código C# es compilado, te recomiendo este artículo de los amigos de geeksforgeeks.
Espero que esta entrada te haya ayudado a entender lo que ocurre internamente mientras programamos en el IDE.
Si te sirvió entonces compártela crack!
Créditos de la imagen de portada: Foto de Gabriel Vasiliu en Unsplash