Common Languaje Runtime es el famoso -Escribe una vez, ejecuta donde quieras-. Descripción de cómo se trata en .NET.
CLR o Common Languaje Runtime constituye uno de los pilares de la tecnología .NET ya que confiere una nueva visión a sus tecnologías.
Antes de .NET, los lenguajes de codificación o bien eran interpretados como era el caso de VScript o Jscript o bien eran compilados a binario como ocurre con lenguajes de programación como C++, COBOL o FORTRAN. Con la entrada de JAVA en el mercado de las tecnologías, surge el concepto de VM o Maquina Virtual ya que de esta manera, el lenguaje era compilado a un lenguaje intermedio el cual gracias a la maquina virtual podía ser ejecutado en toda maquina con una maquina virtual, de esta manera surge una de las frases mas celebres en los últimos años de la década de los 90s:
Escribe el codigo única vez y ejecuta todas las veces que quieras.
Microsoft adopta esta idea en .NET creando CLR. La diferencia fundamental con respecto a Java y su maquina virtual es que .NET no se limita a un único lenguaje. De esta manera acoge en su seno tecnológico a diferentes masas de desarrolladores con perfiles tecnológicos distintos, si un desarrollador viene de C, adoptara C#, si viene de Visual Basic, adoptara Visual Basic.NET, si viene de ASP puede adoptar o Visual Basic.NET o Jscript.NET. En la actualidad hay anunciados mas de 25 Lenguajes compatibles con la tecnología .NET. Un dato a destacar es el soporte de los lenguajes al paradigma de la programación orientada a objetos. Desde los inicios de la computación, el problema con el cual se encontraban los ingenieros de software era encontrar una manera para diseñar software. La propia naturaleza de la informática hace posible que un determinado problema sea resuelto de múltiples formas, uno de los primeros problemas que fue resuelto, fue la estructuración de los algoritmos y la exclusión de la sentencia GO TO en los algoritmos ya que era contrario al paradigma de la programación estructurada. Una vez superado este escollo en los años 70`s surgen diferentes iniciativas que evolucionan la ingeniería del software, una de las mas importantes fue el desarrollo de Small Talk que revoluciono el panorama con su nuevo enfoque de diseño de software, el paradigma de la programación orientada a objetos. El software desde esa fecha podría ser diseñado con dos enfoques diferentes: Como un conjunto de operaciones bien estructuradas en modulos o bien diseñado como diferentes objetos que están relacionados entre sí para solucionar un determinado problema. Con el paso del tiempo, el paradigma de la orientación a objetos se ha impuesto sobre la programación estructurada debido a sus ventajas en cuanto a diseño, seguridad, escalabilidad y reutilización.
Bien es cierto que el nuevo paradigma confiere al equipo de desarrollo una nueva formación para pensar en Objetos pero los beneficios a medio plazo son evidentes. Microsoft viendo este panorama ha obligado a la comunidad Visual Basic a cambiar a Visual Basic.NET que esta pensado para programarse en orientación a objetos.
Este mismo hecho se aprecia en Jscript.NET y C#.
CLR se caracteriza por ser independiente de sistema operativo por tanto se aprecia como Microsoft ve nuevos frentes donde expandirse o protegerse según se mire. El mercado mundial de sistemas operativos orientado al sector de microinformática esta dominado por la serie Windows. En años recientes un nuevo competidor GNU ha llegado para quedarse, Linux una reciente versión de UNIX esta comiendo mercado debido a sus ventajas heredadas de UNIX y suyas propias. Se puede apreciar como .NET podría desembarcar en Linux empleando .NET o bien podría ser un signo de debilidad del sistema Windows ante la llegada de Linux. CLR puede en un futuro implantarse en otros sistemas operativos distintos de la serie Windows como base para el desarrollo de aplicaciones de escritorio. Como se aprecia esta característica es nueva con respecto a ASP que no da soporte al desarrollo de aplicaciones de escritorio.
Antes de .NET, los lenguajes de codificación o bien eran interpretados como era el caso de VScript o Jscript o bien eran compilados a binario como ocurre con lenguajes de programación como C++, COBOL o FORTRAN. Con la entrada de JAVA en el mercado de las tecnologías, surge el concepto de VM o Maquina Virtual ya que de esta manera, el lenguaje era compilado a un lenguaje intermedio el cual gracias a la maquina virtual podía ser ejecutado en toda maquina con una maquina virtual, de esta manera surge una de las frases mas celebres en los últimos años de la década de los 90s:
Escribe el codigo única vez y ejecuta todas las veces que quieras.
Microsoft adopta esta idea en .NET creando CLR. La diferencia fundamental con respecto a Java y su maquina virtual es que .NET no se limita a un único lenguaje. De esta manera acoge en su seno tecnológico a diferentes masas de desarrolladores con perfiles tecnológicos distintos, si un desarrollador viene de C, adoptara C#, si viene de Visual Basic, adoptara Visual Basic.NET, si viene de ASP puede adoptar o Visual Basic.NET o Jscript.NET. En la actualidad hay anunciados mas de 25 Lenguajes compatibles con la tecnología .NET. Un dato a destacar es el soporte de los lenguajes al paradigma de la programación orientada a objetos. Desde los inicios de la computación, el problema con el cual se encontraban los ingenieros de software era encontrar una manera para diseñar software. La propia naturaleza de la informática hace posible que un determinado problema sea resuelto de múltiples formas, uno de los primeros problemas que fue resuelto, fue la estructuración de los algoritmos y la exclusión de la sentencia GO TO en los algoritmos ya que era contrario al paradigma de la programación estructurada. Una vez superado este escollo en los años 70`s surgen diferentes iniciativas que evolucionan la ingeniería del software, una de las mas importantes fue el desarrollo de Small Talk que revoluciono el panorama con su nuevo enfoque de diseño de software, el paradigma de la programación orientada a objetos. El software desde esa fecha podría ser diseñado con dos enfoques diferentes: Como un conjunto de operaciones bien estructuradas en modulos o bien diseñado como diferentes objetos que están relacionados entre sí para solucionar un determinado problema. Con el paso del tiempo, el paradigma de la orientación a objetos se ha impuesto sobre la programación estructurada debido a sus ventajas en cuanto a diseño, seguridad, escalabilidad y reutilización.
Bien es cierto que el nuevo paradigma confiere al equipo de desarrollo una nueva formación para pensar en Objetos pero los beneficios a medio plazo son evidentes. Microsoft viendo este panorama ha obligado a la comunidad Visual Basic a cambiar a Visual Basic.NET que esta pensado para programarse en orientación a objetos.
Este mismo hecho se aprecia en Jscript.NET y C#.
CLR se caracteriza por ser independiente de sistema operativo por tanto se aprecia como Microsoft ve nuevos frentes donde expandirse o protegerse según se mire. El mercado mundial de sistemas operativos orientado al sector de microinformática esta dominado por la serie Windows. En años recientes un nuevo competidor GNU ha llegado para quedarse, Linux una reciente versión de UNIX esta comiendo mercado debido a sus ventajas heredadas de UNIX y suyas propias. Se puede apreciar como .NET podría desembarcar en Linux empleando .NET o bien podría ser un signo de debilidad del sistema Windows ante la llegada de Linux. CLR puede en un futuro implantarse en otros sistemas operativos distintos de la serie Windows como base para el desarrollo de aplicaciones de escritorio. Como se aprecia esta característica es nueva con respecto a ASP que no da soporte al desarrollo de aplicaciones de escritorio.
Juan Antonio Breña Moral