# 1C: Enterprise script

1C:Enterprise script es un lenguaje de programación de alto nivel creado por la compañía 1C. Es el lenguaje usado para programar aplicaciones empresariales en la plataforma tecnológica de 1C:Enterprise. 1C:Enterprise script es un lenguaje basado en objetos (pero no orientado a objetos) de tipado dinámico.
1C:Enterprise script fue diseñado como un lenguaje de programación destinado a la codificación de diferentes algoritmos empresariales. 1C:Enterprise script forma parte de la plataforma tecnológica de 1C:Enterprise que aplica el enfoque de diseño y desarrollo de aplicaciones dirigido por metadatos, lo que permite usar una menor cantidad de códigos.
1C:Enterprise script mantiene los objetos. Existen numerosos tipos de objetos integrados (Catálogos, Documentos, Procesos Empresariales, etc.) que aplican una funcionalidad predefinida. Los desarrolladores heredan sus objetos de tipos de objetos integrados pero luego dicha herencia no se mantiene. Un enfoque semejante a la herencia se utiliza en la programación basada en prototipos; 1C:Enterprise script tiene mucho en común con otros lenguajes de programación tales como JavaScript o Python, pero no es una réplica de ninguno de estos lenguajes.
Los desarrolladores crean soluciones aplicadas basadas en 1C:Enterprise mayormente en editores visuales incorporados que tienen la capacidad de añadir cualesquiera funciones escritas en 1C:Enterprise script. Estas funciones incluyen la creación de objetos especificando sus propiedades, formas de presentación, la interrelación entre los objetos mismos, etc. 1C:Enterprise script se requiere normalmente para describir un comportamiento particular e inhabitual de los objetos de las soluciones aplicadas y de los algoritmos del procesamiento de datos personalizados (por ejemplo el cálculo de impuestos, etc.)
El lenguaje de la plataforma de 1C:Enterprise está pensado para la descripción de la lógica empresarial y los módulos de 1C:Enterprise script están dirigidos por eventos. Los módulos se ejecutan cuando algún evento específico tiene lugar en la solución usada.

## Ámbito de desarrollo

El desarrollo en 1C:Enterprise script puede realizarse con ayuda del Diseñador (que forma parte del ámbito de desarrollo de 1C), o utilizando las Herramientas de desarrollo de 1C:Enterprise (un ámbito de desarrollo basado en una plataforma abierta llamada Eclipse). Los dos instrumentos mantienen la depuración, la elaboración de perfiles, la intellisence (una aplicación de autocompletar), el resaltado de sintaxis, herramientas para refactorizar códigos, etc.
Existe una aplicación del resaltado de sintaxis para el código fuente de 1C:Enterprise script implementada en GitHub.

## Rasgos

* Los módulos de 1C:Enterprise script están compilados dentro del código de bytes ejecutado por la máquina virtual de 1C:Enterprise. Existen varias implementaciones de la máquina virtual de 1C:Enterprise para los diversos sistemas operativos: Windows, Linux, macOS, y navegadores web (implementados en JavaScript).
* Los códigos de las aplicaciones pueden ser ejecutados por parte del desarrollador, así como por la del cliente.
* Tipado débil: el tipo de una variable se determina por el valor guardado y puede cambiar a largo plazo.