Ver por etiquetas

Todas las etiquetas » C# (RSS)

Entrevista a Jeffrey Richter, y mucho más...

"'I'm older now, and still runnin' Against the wind" ("Against the Wind", Bob Seger , 1980) Después de muchos meses sin escribir prácticamente nada (C# y el inglés no cuentan), retorno este mes a dotNetManía con una entrevista al gran Jeffrey Richter , que acaba de publicar una nueva edición (la 3ra., actualizada para .NET Framework 4 y C# 4.0) de su excelente libro " CLR via C# ". Por otra parte, este ejemplar, que recomiendo...
Posted por Octavio Hernández | 4 comment(s)
Archivado en: ,

Buscando "El símbolo perdido" con LINQ (II)

"Now I know you're all king horse Between tenderness and brute force..." ("King Horse", Elvis Costello , 2007) Continuando con el problema propuesto en el post anterior (basado en " El símbolo perdido ", la última obra de Dan Brown ), aquí presento el código final utilizado para resolver el problema, así como un análisis somero de los resultados obtenidos. La adición de las condiciones que faltan al programa del post...
Posted por Octavio Hernández | 2 comment(s)
Archivado en: ,,

Buscando "El símbolo perdido" con LINQ

Últimamente he estado leyendo en los ratos libres " El símbolo perdido ", la última obra de Dan Brown , el autor de "El código Da Vinci" y otros best sellers . Como parte de los hechos a los que se enfrenta el protagonista durante sus peripecias para descifrar un oculto misterio, el autor nos presenta un cuadrado ultra-mágico que aparece en el cuadro " Melencolia I " (1514), del pintor alemán Alberto Durero : 16 3 2 13 5 10 11...
Posted por Octavio Hernández | 5 comment(s)
Archivado en: ,,

Transiciones más o menos suaves

"I could change my life to better suit your mood Because you're so smooth..." ("Smooth", Santana featuring Rob Thomas , 1999) El presente post es para recomendar sinceramente a mis lectores el ejemplar de este mes de dotNetManía , en el que Miguel Katrib y Mario del Valle publican un excelente artículo sobre las futuras posibilidades asociadas a la varianza y contravarianza en los tipos genéricos que ofrecerá C# 4.0. Del artículo he tomado...
Posted por Octavio Hernández | con no comments
Archivado en: ,

Qué problema tiene este código? (III)

Continuando con la línea de posts relacionada con problemas potenciales con los que los programadores .NET deben tener cuidado, aquí va uno al que, si se tratara de un film, le añadiríamos la coletilla "basado en una historia real": deriva directamente de un bug que encontré hace unos días revisando el código de un proyecto heredado. Suponga que tenemos una clase como la siguiente: public class Customer { public Guid Id { get ; set ; } public...
Posted por Octavio Hernández | 2 comment(s)
Archivado en:

Excepciones más o menos fatales

"The world weighs on my shoulders But what am I to do?" ("Distant Early Warning", Rush , 1984) Hace unos días, mi colega y amigo Fernando Chapa , sin duda uno de los mejores programadores con los que he tenido la suerte de trabajar, llamó mi atención sobre una clase base que se me antoja poco conocida (tal vez por poco documentada), aunque forma parte de la librería de clases de .NET desde la versión 2.0: System.WarningException . WarningException...
Posted por Octavio Hernández | 1 comment(s)
Archivado en: ,

Again, what's in a name?

"What's in a name? That which we call a rose By any other name would smell as sweet" ("Romeo and Juliet", William Shakespeare , c. 1595) "A title, unfortunately, is in itself a key to interpretation" (Postcript to "The Name of the Rose", Umberto Eco , 1980) Vuelvo a la carga después de un tiempo de silencio con otro truco sencillo, pero que espero enseñe algo a algunos, no porque sea nada complicado, sino porque tal vez nunca antes lo hayan...
Posted por Octavio Hernández | 1 comment(s)
Archivado en:

¿Qué problema tiene este código? (II-R)

"Mama always told me not to look into the sights of the sun But, mama, that's where the fun is..." ("Blinded by the light", The Manfred Mann's Earth Band , 1976) Bueno, la respuesta al puzle de ayer ya prácticamente la han dado los que han opinado, así que solo me queda hacer algunas puntualizaciones. El programa propuesto es un ejemplo de cómo las expresiones lambda pueden acceder a las variables del contexto en el que son definidas. Estas variables...
Posted por Octavio Hernández | con no comments
Archivado en:

Qué problema tiene este código? (II)

"Captured by the moment In the magic of a yesterday Captured by the moment And I hope it never fades away" ("Captured by the moment", Steve Perry , 1984) Aquí va otro puzle del que seguramente algunos ya sabrán la respuesta, pero espero que a otros les enseñe algo nuevo. Se me ocurrió presentarlo aquí después de leer la reciente (y excelente) serie de posts sobre las expresiones lambda de José M. Aguilar . El siguiente programa...
Posted por Octavio Hernández | 6 comment(s)
Archivado en:

Vídeos sobre Windows 7 para desarrolladores

"Johnny-come-lately, the new kid in town Everybody loves you, so don't let them down..." ("New Kid in Town", The Eagles , 1976) Aquí os dejo un enlace a una excelente serie de vídeos que os pondrán al día sobre las novedades que ofrecerá a los desarrolladores el próximo Windows 7 : http://www.msdev.com/Directory/SeriesDescription.aspx?CourseId=104 (requiere identificación mediante Live ID) Pop/rock tip : " New Kid in Town...
Posted por Octavio Hernández | con no comments
Archivado en:

Confesiones de un autor con prisas

"My mama said you can't hurry love No, you'll just have to wait She said love don't come easy But it's a game of give and take" ("Can't hurry love", Phil Collins , 1982) Las prisas por salir al mercado tienen, sin lugar a dudas, algunos riesgos asociados. Esos riesgos los sufrí en carne propia al publicar " C# 3.0 y LINQ ", que ya estaba en la calle incluso antes de la salida definitiva de Visual Studio 2008. Para lograr eso, por supuesto,...
Posted por Octavio Hernández | 8 comment(s)
Archivado en: ,

Qué problema tiene este código? (R)

"See the pages as they turn In their wisdom we will learn Free from the prison, a curtain of iron" ("Curtain of Iron", Kansas , 1980) Este post es la continuación (y respuesta) de otro anterior . Antes que nada, la moraleja de esta historia: ¡ estudia la documentación ! O en la jerga de un técnico de soporte cabreado, "RTFM" ( Read The Freaking Manual ). Las guías generales para la publicación de eventos en .NET se resumen en...
Posted por Octavio Hernández | 5 comment(s)
Archivado en:

Qué problema tiene este código?

"I get down on my knees and I start to pray Till the tears run down from my eyes, oh Somebody, somebody, can anybody find me Somebody to love?" ("Somebody to love", Queen , 1976) Aquí va un puzle que sin dudas resultará sencillo para muchos, pero que puede que le enseñe algo interesante a otros. El siguiente programa presenta una clase que publica un evento, y otra que se suscribe al mismo. Para simplificar, se asume que el evento no requiere datos personalizados...
Posted por Octavio Hernández | 5 comment(s)
Archivado en:

De vuelta en casa

"Big old jet airliner / Carry me to my home Big old jet airliner / 'Cause it's there where I belong..." ("Jet Airliner", Steve Miller Band , 1977) Siempre que cruzo el Atlántico (en avión, claro está - en barco lo hice una vez y no pienso volver a repetirlo), me viene a la mente ese tema de Steve Miller Band . A esto ayuda indudablemente el hecho de que, a consecuencia de los muchos cambios por los que he pasado en mi vida, prácticamente cualquier...
Posted por Octavio Hernández | con no comments
Archivado en: ,

Nothing is perfect (and neither is using)

"But nothing is perfect in God's perfect plan He only gave us the good things so we'd understand What life without them would be" ("Nothing is perfect", Neil Young , 1985) Retomando el tema de un post anterior relacionado con los patrones try - finally y la conveniencia de su utilización para garantizar la devolución de los recursos que una aplicación solicita en un contexto local, llamaremos hoy la atención sobre un caso en el que la utilización...
Posted por Octavio Hernández | con no comments
Archivado en: ,

Try-finally is our friend

"Gimme back my bullets Put 'em back where they belong..." ("Gimme back my bullets", Lynyrd Skynyrd , 1976) Repasando los comentarios (algunos míos) a los tres posts sobre el uso de la sentencia lock publicados recientemente por mis PLAIN-hermanos Pablito , Unai y Rodrigo , encontré un fragmento de código que me ha dado la idea para éste, relacionado con la necesidad de utilizar patrones try - finally (o alguna de las sentencias que se apoyan en...
Posted por Octavio Hernández | 4 comment(s)
Archivado en:

Más sobre mensajes navideños en hexadecimal

Respondiendo a la invitación de mi buen amigo Rodrigo , posteo aquí (perdón por el Spanglish , que a veces me sabe a gloria) mi solución al descifrado del mensaje navideño hexadecimal enviado por Pablito . El hecho de que lo primero que me vino a mí a la mente fue un método extensor a-la-LINQ , mientras que a Rodrigo un algoritmo concurrente, me ha traído a la mente una frase que usaba a menudo mi abuela, "cada loco con su tema" (más sobre eso al final). Aunque obvia decir que lo de "loco"...
Posted por Octavio Hernández | 6 comment(s)
Archivado en: ,,

No PIA Office development and Borland nostalgia

Otra de las nuevas características que aparecerán en Visual Studio 2010 para simplificar el desarrollo de aplicaciones que acceden a las librerías COM de Microsoft Office es la que se conoce simplemente como " No PIA ". La idea básica es la de que podamos librarnos de la necesidad de distribuir los ensamblados PIA (Primary Interoperability Assembly) correspondientes a las librerías COM que componen la suite Office con nuestras aplicaciones. En principio, esta tecnología podrá aplicarse...
Posted por Octavio Hernández | 2 comment(s)
Archivado en:

Please welcome a new LINQ Standard Query Operator

Entre las "pequeñas cosas" que quedan ocultas en la CTP de Visual Studio 2010, eclipsadas por otras más novedosas, cabe destacar la presencia de un nuevo operador de consulta estándar de LINQ llamado Zip , que he encontrado, claro está, "buceando" con el Explorador de objetos. El operador Zip nos permitirá ir recorriendo simultáneamente la secuencia de entrada y una segunda secuencia, mientras ambas tengan elementos, produciendo una secuencia de salida con los elementos obtenidos...
Posted por Octavio Hernández | 5 comment(s)
Archivado en: ,,

Mis más y menos con los parámetros ref en las llamadas a COM en C# 4

Una de las cuatro áreas principales en las que se agrupan las novedades de C# 4.0 presentadas en la recién finalizada PDC es la relacionada con la simplificación de la programación en C# contra librerías COM, personificadas generalmente en las API subyacentes a las diferentes aplicaciones que componen la suite Office: Word, Excel, Outlook y compañía. Hasta el momento, la programación en C# contra estos "modelos de objetos" era realmente una tarea farragosa. Cuando estas novedades estén...
Posted por Octavio Hernández | 5 comment(s)
Archivado en:
Más artículos Página siguiente >