El Segundo Aire del Pelos

Sunday, March 12, 2006

¿Cómo hace posible .NET que un componente escrito en C# pueda ser reutilizado en VB.NET?

Jaaaaaaa... esta es una pregunta bastante chida, porque en realidad aquí lo necesario no es buscar por todos lados, sino haber entendido las primeras asignaciones, y tener bien afianzados los conceptos...
En este caso, la respuesta si es sencilla... y se llamaCLS... se acuerdan de el??? este lo vimos en un post anterior, en la tarea 1-2... CLS significa "Common Language Specification", y es el estandard que dice como se debe escribir el código, el que define los tipos de datos, estructuras, etc.
Como TODOS los lenguajes de .NET deben ser compatibles con el Framework, y el framework debe cumplir con el CLS, eso significa que cualquier código escrito en cualquier lenguaje compatible con .NET tiene las mismas bases (aunque puedan tener características únicas y especificas) y por lo tanto los componentes que sean creados en ellas, serán también usado en cualquier otra lenguaje .NET.
Que rollo mi Charlie??? estas de acuerdo??? o estoy diciendo puras mentiras???

Bueno, aquí terminamos con la tarea 2, pero no se emocionen, porque ya hace rato que Carlos nos puso mas tarea... al ratito les ponto un post con la descripción de la tarea, para si quieren que le vayan avanzando... lo unico que les adelanto es que tiene que ver con ASP.NET

Ah!!!! y un último anuncio... mañana lunes 13 de Marzo tenemos nuestra siguiente reunion del CNJ... espero verlos por ahí a muchos!!!!

1 Comments:

  • CLS es un estándar común de criterios mínimos por así decirlo.

    C# es el lenguaje más poderoso de .NET porque no sólo implementa el CLS si no que te da más funcionalidades. Por ejemplo, C# te permite usar apuntadores y regiones "no seguras". Estas dos características no las tiene un lenguaje que apenitas cumpla con CLS.

    Sin embargo, que un componente hecho en IronPython pueda utilizar otro hecho en C# es posible porque al final de cuentas es IL todo. Al compilar C# se produce IL. Al compilar IronPython se produce IL. O sea, se tiene un sólo lenguaje y no hay problema alguno.

    Incluso, IronPython pudiera beneficiarse de las características a las cuales C# sólo tiene acceso a través de APIs en ensambles. Esta técnica la utilizó Rockford Lhotka en su CSLA para VB.NET. Un par de ensambles los tuvo que hacer en C# porque VB.NET no implementa todas las capacidades de .NET. Sólo fueron dos, todos los demás heredaban de las clases hechas en esos dos para hacer uso de esas características especiales.

    CLS es como una especificación mínima con la que debe cumplir un lenguaje.

    By Blogger Carlos Madrigal, at 8:22 AM  

Post a Comment

<< Home