Ver Mensaje Individual
  #16  
Antiguo 18-09-2005
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.610
Reputación: 32
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cool Lenguajes modernos

¡Hola a todos!

Excelente artículo Jhonny. Me encantan las nuevas características que se empiezan a incorporar en algunos lenguajes:
Cita:
Empezado por Ian Marteens
...Los tipos anónimos, en combinación con la inferencia de tipos, se utilizan para resolver un viejo problema que planteaba la compatibilidad de lenguajes orientados a objetos con bases de datos relacionales. Cuando ejecutamos una instrucción select en SQL y no utilizamos todas las columnas de la tabla base, o utilizamos expresiones en la cláusula de selección, estamos tratando implícitamente con un nuevo esquema relacional. Si esto lo trasladamos a un lenguaje OOP, estaríamos ante un tipo de datos nuevo generado por la consulta sobre la marcha. Observe ahora lo que nos permite hacer C# 3.0:

var c = new { Nombre = "Ian", Apellidos = "Marteens" };

A la derecha de la asignación tenemos un inicializador de objetos: una instrucción que sirve para crear e inicializar una instancia... ¡de una clase creada sobre la marcha por el compilador! La nueva clase tiene dos propiedades, Nombre y Apellidos, y es a este tipo "sin nombre" al que pertenece la variable q, gracias a la inferencia de tipos.

Para terminar, aunque sea de momento, C# 3.0 introduce un nuevo patrón asociado a una estructura de control del lenguaje. Si ya teníamos patrones asociados a las instrucciones using y foreach, existen ahora una reglas precisas para poder traducir los nuevos bloques de consultas en llamadas a métodos que utilizan con mucha frecuencia expresiones lambda en sus parámetros. Estas nuevas "consultas" soportan una sintaxis muy similar a la de SQL, aunque con unas pocas variaciones. La cláusula from, por ejemplo, es la primera en escribirse, lo cuál es lo lógico: se trata de un defecto bastante molesto de SQL. Otro ejemplo de modificación: la cláusula order by se convierte en orderby, de modo que se evita la sintaxis verborreica que hacía furor en IBM en la decada de los 70...
Para los programadores operativos y bibliotecarios, pequeños detalles como estos nos resultan extremadamente atractivos en lenguajes como Freya y Chrome. ¡Vamos Borland, moderniza tu Pascal, deja que el niño cresca!

Un abrazo ¿en el desierto?

Al González.
Responder Con Cita