Ver por etiquetas

Ocultación de datos y paso de variables
Published 24/4/2012 11:45 | Rafael Ontivero
Leo en Twitter un par de preguntas más que curiosas sobre dos cosas que se dan por supuestas en el desarrollo orientado a objetos. Aunque una de ellas está formulada al revés, yo aquí le voy a dar el sentido correcto, e intentaré responder, en la medida de mis conocimientos, a ambas. *** La primera de ellas es “¿por qué las variables de una clase no deben ser públicas?” Es una de las primeras cosas que nos enseñan en la POO...
Un caso de fracaso... o dos
Published 4/11/2010 22:28 | Rafael Ontivero
Bueno, esta es otra de esas entradas nada técnicas y personalísimas, en la que voy a contar varias cosas, respoder a las inquietudes que asertus ha comentado en la entrada anterior . Generalmente los casos de éxito se suelen airear a lo grande, a bombo y platillo, con grandes titulares, pero los fracasos se suelen ocultar debajo de la alfombra, y cuanto menos se sepa de ellos, mejor. Pues bien, yo voy a contar aquí un proyecto que ha fracasado, o al menos lo ha hecho según...
Concurrencia y más concurrencia
Published 13/10/2009 16:33 | Rafael Ontivero
Quienes hayan seguido mi podcast sobre Hilos en .NET se habrán dado cuenta de que la concurrencia bien entendida no es trivial ni de lejos, y eso que yo sólo cubrí los aspectos más básicos y por separado, vistos uno a uno. Quien no lo haya hecho y sienta curiosidad por el tema, puede acceder aquí , registrarse, y bajarse el vídeo y la solución de ejemplo (hay que ir hacia abajo hasta encontrar mi presentación). Herb Sutter es uno de los...
Interop en C# y C++/CLI. Dos puntos de vista de un mismo concepto.
Published 1/3/2009 21:51 | Rafael Ontivero
El número 57 de la revista dotNetManía (que se corresponde a marzo del corriente) publica mi artículo de título homónimo a esta entrada que, como su nombre indica, repasa ciertas formas de Interop entre C# y una DLL nativa, así como C++/CLI y la misma DLL. Entre otras cosas explico cómo convertir un delegado en un callback nativo para ser pasado a una DLL que los requiera, cómo hacer justo lo contrario, que es usar un callback nativo desde código...
La estructura intraducible, I (de Interop y otras yerbas)
Published 19/12/2008 20:23 | Rafael Ontivero
A veces resulta curioso cómo algo tan sencillo como mapear una estructura de C en .NET se puede convertir en un algo muy cercano a una pesadilla dependiendo del lenguaje que hayamos elegido para realizarlo. Partamos de la siguiente estructura de C: typedef struct { BYTE byOut[4]; // Outputs [0..3] BYTE byAux; // Aux output } usbOutput; A simple vista es algo muy elemental: un array de cuatro bytes y uno más después. Esto en una máquina Intel en realidad termina ocupando 8 bytes, 4 para el primer...
El RFOG ya no es lo que era...
Published 22/9/2008 21:13 | Rafael Ontivero
Os cuento una histora que me ha ocurrido esta misma tarde. Aparte de emocionarme al ver el nuevo iLiad con pantalla A4 (gracias, Alfredo Novoa) y de pensar que, pese a haber corregido varios defectos (ahora lleva para pasar página en tres de los cuatro lados), supongo que la velocidad leyendo Mobipocket va a ser la misma que con el iLiad, así que paso de momento. Bueno, ya me he ido por los Cerros de Úbeda. En fin, que la historia comienza con el cierre de una aplicación que tengo que montar mañana...
BUG: El bug del bool en interop desde C++ nativo
Published 10/7/2008 11:31 | Rafael Ontivero
Basta que uno plante un circo para que le crezcan los enanos, y como se puede comprobar si uno mira al jardín de la vecina esa que está tan buena, a veces a uno le crecen sin estar bueno ni haber montado la carpa. No sé en qué pensarán estos señores de Microsoft, pero que el bug venga arrastrado desde por lo menos 2002 y no esté solucionado clama al cielo. Pero antes de despotricar –que lo haré-, vamos a ver en qué consiste. Uno tiene una inocente DLL que posee una función que devuelve un valor de...
Archivado en: ,,,
Primer asalto: VB.NET contra C#
Published 5/5/2008 12:05 | Rafael Ontivero
Mañana por la tarde se va a desarrollar un evento por difusión Web que seguro no va a dejar indiferente a nadie, ya que, aparte del tema, dos pesos pesados del desarrollo van a pelearse para dirimir cuál de los dos lenguajes estrella del .NET es el mejor. El que quiera suscribirse al evento, que no es presencial, puede hacerlo aquí . Los integrantes del evento son Guillermo Som, alias El Guille y Marino Posadas , ambos MVP de sus respectivas áreas. Y la batalla promete ser de proporciones épicas...
C++/CLI V: Propiedades
Published 24/9/2007 12:46 | Rafael Ontivero
Las propiedades en C++/CLI tienen un tratamiento similar, por no decir idéntico, con su equivalente en C#, con la diferencia de que son algo más potentes, no porque lo hayan hecho así, sino por las características notacionales del C++. El concepto de propiedad no nace con el .NET, sino que existe desde mucho antes. Ya Borland en su Turbo Pascal Delphi implementa la idea, luego extendida a C++Builder: l as closures el __property . El concepto nace con la idea de tener una forma de acceder a variables...
Archivado en: ,,
C++ y C#: Enumeraciones compartidas
Published 27/8/2007 12:51 | Rafael Ontivero
Acabo de leer en uno de los blogs a los que estoy suscrito un tema que considero bastante curioso e interesante, no porque sea una cosa que se vaya a utilizar todos los días (de hecho desaconsejo su uso), pero tiene su aplicación y su motivo. El artículo se titula " Sharing enums across C# and C++", es decir, "Compartiendo enumeraciones entre C# y C++". Ojo, no C++/CLI, sino C++. El de toda la vida. Para aquellos que no se aclaren mucho con el inglés, lo que básicamente hace el...
Archivado en: ,,