JScript .NET es un lenguaje de programación .NET desarrollado por Microsoft .
Paradigma | multi-paradigma |
---|---|
Desarrollador | Corporación Microsoft |
Disciplina de mecanografía | pato , débil , dinámico |
Plataforma | .NET Framework |
Influenciado por | |
JScript , ECMAScript |
Extensión de nombre de archivo | .js |
---|
Las principales diferencias entre JScript y JScript .NET se pueden resumir de la siguiente manera:
En primer lugar, JScript es un lenguaje de secuencias de comandos y, como tales programas (o de manera más sugerente, secuencias de comandos ) se pueden ejecutar sin la necesidad de compilar el código primero. Este no es el caso del compilador de línea de comandos JScript .NET, ya que esta versión de próxima generación se basa en .NET Common Language Runtime (CLR) para su ejecución, que requiere que el código se compile en Common Intermediate Language (CIL), anteriormente llamado Microsoft Intermediate Language (MSIL), código antes de que pueda ejecutarse. Sin embargo, JScript .NET todavía proporciona soporte completo para interpretar código en tiempo de ejecución (por ejemplo, a través del Function
constructor o la eval
función) y, de hecho, el intérprete puede ser expuesto por aplicaciones personalizadas que alojan el motor JScript .NET a través de las interfaces VSA [ jerga ] .
En segundo lugar, JScript tiene una base sólida en las tecnologías ActiveX / COM de Microsoft y se basa principalmente en componentes ActiveX para proporcionar gran parte de su funcionalidad (incluido el acceso a la base de datos a través de ADO , manejo de archivos, etc.), mientras que JScript .NET usa .NET Framework para proporcionar una funcionalidad equivalente. Para compatibilidad con versiones anteriores (o para donde no exista una biblioteca equivalente a .NET), JScript .NET aún proporciona acceso completo a los objetos ActiveX a través de la interoperabilidad .NET / COM utilizando tanto el constructor ActiveXObject como los métodos estándar de la clase .NET Type .
Aunque .NET Framework y los lenguajes .NET como C # y Visual Basic .NET han tenido una adopción generalizada, JScript .NET nunca ha recibido mucha atención, ni por parte de los medios ni de los desarrolladores. No es compatible con la principal herramienta de desarrollo de Microsoft, Visual Studio .NET . Sin embargo, ASP.NET es compatible con JScript .NET.
Diferencias de idioma
Los siguientes son ejemplos principales de diferencias de lenguaje entre JScript .NET y otros lenguajes .NET, incluidas las comparaciones.
Diferencias con C #
- JScript .NET no requiere una main () la función que el sistema operativo debe llamar directamente al ejecutar una aplicación de JScript .NET, como tal, el flujo del programa de JScript .NET puede basarse en código global.
- JScript .NET, debido a su sistema de verificación de tipos muy flexible, puede ser muy fácil de aprender, ya que la convención de declaración explícita de tipos no es necesaria en absoluto.
- JScript .NET no requiere referencias explícitas a .NET Framework Base Class Library, ya que ciertas funciones que se encuentran en versiones anteriores de JScript están presentes en JScript .NET (por ejemplo, funciones para encontrar la tangente de un ángulo para un triángulo rectángulo ).
- JScript .NET está estrechamente vinculado a la sintaxis de C y, por lo tanto, es muy fácil de aprender para los desarrolladores de C # , Java o C ++ .
- Si bien JScript .NET se puede usar para crear aplicaciones de Windows Forms, JScript .NET tendrá algunos problemas, ya que los delegados solo se pueden consumir en JScript .NET y no crear. Por lo tanto, los eventos personalizados son difíciles de emular en JScript .NET.
Diferencias con C ++
- JScript .NET no requiere una main () la función .
- JScript .NET no requiere una declaración de tipo explícita en las variables. (En C ++ , el uso de plantillas y genéricos se puede comparar con esto, emular libremente con la especialización de plantillas, etc.)
- JScript .NET tampoco requiere conversiones de tipo explícitas en el uso de variables en el programa. El código que se usa para recuperar una cadena de caracteres, pero que solo se usa para números enteros, se puede convertir implícitamente; lo contrario se puede hacer sin errores en el momento de la compilación, pero existe la posibilidad de pérdida de precisión o datos.
p.ej:
sistema de importación ;Consola . WriteLine ( "Hola, ¿cómo te llamas?" ); Consola . WriteLine ( "Escriba su nombre:" );var _name = Consola . ReadLine ();Consola . WriteLine ( "Hola," + _nombre );
Diferencias con Java
- Sintaxis JScript .NET y convenciones léxicas son similares a Java en que ambos se derivan de C . JScript fue originalmente la implementación de Microsoft de ECMAScript , que se conoce más comúnmente como JavaScript , aunque no está relacionado con Java. Por lo tanto, los usuarios de Java y otros lenguajes derivados de C encontrarán JScript más fácil de aprender.
- JScript .NET permite a los desarrolladores usar variables sin tipo y, a veces, pueden inferir su tipo a partir de su uso para optimizar el código compilado. Por otro lado, Java requiere que se escriban todas las variables.
- JScript .NET puede agregar propiedades y métodos a los objetos en tiempo de ejecución , mientras que los objetos Java siempre se ajustan a su interfaz declarada.
- JScript .NET admite variables globales , algo que Java no.
Diferencias con versiones anteriores de JScript
- JScript .NET permite a los desarrolladores declarar variables y funciones con información de tipo (por ejemplo, var x: String; ), mientras que la información de tipo para las variables y funciones de JScript no se puede declarar (por ejemplo, var x; ).
- Los scripts de JScript .NET no se interpretan, sino que se ejecutan de forma independiente. Cuando se ejecuta, una aplicación JScript .NET invocará CLR . El CLR ejecutará las instrucciones CIL sin utilizar un intérprete.
- JScript .NET se puede ejecutar sin la presencia de un navegador u otro motor de secuencias de comandos, ya que el compilador puede generar ejecutables y ensamblados independientes . Sin embargo, estos aún requieren la instalación de .NET Framework para funcionar.
- JScript .NET proporciona acceso a .NET Framework BCL ( Base Class Library ), lo que proporciona mucha más funcionalidad.
- JScript .NET solo está disponible como lenguaje de programación para ASP.NET , la tecnología utilizada para generar páginas web; por lo tanto, JScript .NET asume un papel similar al de PHP y otros lenguajes de programación del lado del servidor. Internet Explorer, sin embargo, todavía usa solo el motor JScript más antiguo, por lo que JScript.NET no se puede usar para crear secuencias de comandos en páginas web (o HTA o HTC). En este sentido, JScript es mucho más versátil que JScript .NET.
Ver también
- JavaScript OSA : un lenguaje de secuencias de comandos a nivel de sistema para Apple Macintosh
- JScript
- ActionScript
Notas
Referencias
- Introducción a JScript .NET
- Presentación de JScript .NET
- Tutorial de JScript.NET y tutorial de formulario