.NET o no .NET, esa es la cuestión

Artículos, comentarios, noticias e ideas sobre la programción .NET y nativa, generalmente sobre C++ y C++/CLI, aunque siempre habrá un poco de todo.

Ver por etiquetas

Todas las etiquetas » c++/cli (RSS)
C++/CX (I). Windows 8 y el nuevo subsistema WinRT
Observad con detalle la imagen de arriba. Fijaos en que está dividida en dos grandes bloques. A poco que os haya preocupado la arquitectura lógica de Windows, os daréis cuenta de que hay nueva chica en la oficina: WinRT. Ya hablé de algo así aquí , pero en relación con la arquitectura de Apple comparada con la de Windows, y de los últimos cambios que Microsoft ha ido haciendo para adecuar su plataforma NT para que sea funcional y útil...

Publicado: 31/10/2011 15:34 por Rafael Ontivero | con 6 comment(s)

WinTablet.info: Windows 8 y los Tablet
Ya sabéis que me gusta meter baza en los nuevos productos de Microsoft más que a un pollo la mierda. No creo que os pille de sorpresa, pero en este caso estamos hablando de caviar Beluga ya que encima tenemos dominio y web propia. Sí, lo que leéis, el RFOG ha sido invitado a participar en un blog de temática exclusiva sobre Windows 8 y su orientación hacia los Tablet. Sin restricción de temática, sin censura y con libertad total de publicar lo que quiera (no, que no se os abran los ojos como platos...

Publicado: 25/9/2011 11:43 por Rafael Ontivero | con 1 comment(s)

C++Builder XE/Delphi XE Starter edition (como los Express de Visual Studio, pero pagando poco)
Actualización 31/01/2011: Definitivamente es una realidad. Hoy acaba de ser anunciado oficialmente, con los precios indicados (al menos en USA), y para Europa, como siempre, la traducción 1 dólar 1 euro, es decir, 199 euros para la versión completa y 149 para la actualización. En un primer vistazo, la versión Starter es la Professional pero sin el soporte para UML, refactorización y competado de código, así como de alguna que otra cosilla...

Publicado: 29/1/2011 12:27 por Rafael Ontivero | con 6 comment(s)

Sobre delegados, closures, punteros y la falacia del puntero loco
Leía esta mañana –mientras se carga una serie de gráficos en mi actual proyecto- el blog de Marino Posadas que, aunque publica poco, publica bien, y me he quedado más que estupefacto con lo que nos ha contado. He de matizar que en ningún momento dudo de la palabra de Marino, y es por eso por lo que me ha llamado tanto la atención de lo que nos ha contado. Antes de seguir aquí lo mejor es que leáis su entrada , y volváis a esta. *** El primer malentendido sobre el texto nos lo ha solucionado el propio...

Publicado: 30/7/2010 12:45 por Rafael Ontivero | con 10 comment(s)

Mi programa recién creado no se ejecuta en otro ordenador
Suele ser una pregunta bastante habitual en los pocos foros dedicados a C++ que hay, y vamos a intentar dar aquí una respuesta contundente y razonada de por qué ocurre eso y cómo solucionarlo. La pregunta sobre la ejecución de un programa hecho en C, C++ o C++/CLI en otro equipo (en general en el del cliente final) suele tener algunas variantes en cuanto al texto mostrado, entre las que está: Salta una ventana con “Error 135”. Salta una ventana o aparece...

Publicado: 19/5/2010 19:21 por Rafael Ontivero | con 7 comment(s)

Visual Studio 2010 Beta 2 y C++
Por fin anoche tuve un rato -y ganas- para instalarme la Beta 2 de Visual Studio 2010 en mi ordenador secundario, y por fin podré contar lo que llevo callándome bastante tiempo por el NDA de ser MVP... porque las novedades de Visual C++ 2010 son muchas y potentes, y seguro que a más de uno le voy a dar una alegría si no lo sabe ya por otras fuentes. Pese a que hay cosas que ya son públicas desde hace mucho tiempo, voy a contarlas todas poco a poco aquí, y lo más seguro es que veáis más entradas mías...

Publicado: 29/10/2009 16:31 por Rafael Ontivero | con 5 comment(s)

Archivado en: ,,

Concurrencia y más concurrencia
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...

Publicado: 13/10/2009 16:33 por Rafael Ontivero | con 1 comment(s)

¿Qué es C++ y qué es C++/CLI?
Introducción Suele aparecer con cierta frecuencia en los foros de ayuda cierta confusión entre C++ y C++/CLI. Hay quien pregunta algo de C++ siendo C++/CLI y viceversa, o quien intenta aplicar algo de C++/CLI a C++ (y también al revés), o simplemente se ve completamente ofuscado con el tema. En esta entrada vamos a intentar poner un poco de orden en todo esto. C++ no es C++/CLI C++ es el lenguaje de toda la vida, inventando por Stroustrup y que, pese al deseo de muchos, está más vivo que nunca y...

Publicado: 15/6/2009 20:26 por Rafael Ontivero | con 7 comment(s)

Historia de C++ (Diseño y evolución)
· A History of C++: 1979-1991 · The Design and Evolution of C++ · Evolving a language in and for the real world: C++ 1991-2006 · Design Rationale for C++/CLI (Existe versión en castellano traducida por Octavio Hernández y yo mismo). Esta entrada iba a ser el comentario del libro The Design and Evolution of C++ , pero al hacer referencia éste al primer paper , así como la segunda parte del mismo hacer referencia al libro, he decidido comentarlos todos de un golpe. Y ya de paso, también el Rationale...

Publicado: 7/3/2009 23:22 por Rafael Ontivero | con 2 comment(s)

Archivado en: ,,,

Interop en C# y C++/CLI. Dos puntos de vista de un mismo concepto.
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...

Publicado: 1/3/2009 21:51 por Rafael Ontivero | con no comments

La estructura intraducible, I (de Interop y otras yerbas)
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...

Publicado: 19/12/2008 20:23 por Rafael Ontivero | con no comments

El RFOG ya no es lo que era...
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...

Publicado: 22/9/2008 21:13 por Rafael Ontivero | con 6 comment(s)

Primer asalto: VB.NET contra C#
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...

Publicado: 5/5/2008 12:05 por Rafael Ontivero | con 9 comment(s)

Visual C++ 2008 Feature Pack en la calle
¿Recordáis esta entrada mía: Visual C++ 2008 Feature Pack ? Pues ya es oficial, ya está en la calle la versión definitiva, que amplía las características del Visual C++, añadiendo Soporte para temas visuales en MFC. Soporte para la Ribbon de Office 2007. Soporte para los temas visuales del Visual Studio y de Office 2003 (De hecho, hay un tipo de proyecto que te genera una estructura idéntica al Visual Studio 2008). Soporte para diferentes colores en los temas. Soporte para la TR1 (no tocan el compilador...

Publicado: 7/4/2008 17:59 por Rafael Ontivero | con 14 comment(s)

Singleton con y sin Singleton
Ahora que están de moda los antipatrones, voy a explicar un patrón que es muy famoso pero que no me gusta absolutamente nada, no por el diseño del mismo, sino por los efectos laterales no deseados que genera. Por ello también voy a explicar otra forma de construirlo que me gusta más, aunque adolece de otras limitaciones. Singleton es un patrón que nos obliga a tener una sola instancia de una clase, es decir, globalmente sólo podremos disponer de un objeto de ese...

Publicado: 3/3/2008 19:20 por Rafael Ontivero | con 21 comment(s)

Archivado en: ,,,

C++/CLI: Bloqueos y punteros interiores
Bloqueos El lector habitual de este blog debe estar ya acostumbrado a leer aquí sobre el montículo manejado y el hecho de que las referencias en .NET son punteros móviles, es decir, apuntan y siguen al objeto en cuestión a lo largo de todos sus movimientos dentro del citado montículo, ya que uno de los elementos más potentes del .NET es la compactación de objetos asignados y la recolección de los que se han liberado, ya sea de forma automática al salir de ámbito o bien mediante su marcado manual...

Publicado: 2/1/2008 18:03 por Rafael Ontivero | con 6 comment(s)

Archivado en: ,

C++/CLI VIII: Usando hilos... con hilos
Si ayer hablaba sobre cómo usar hilos sin hilos, ahora vamos a hablar de hacer lo mismo pero utilizando el componente Thread , que es como se deben manejar, o mejor dicho, una de las formas adecuadas de trastearlos. Ayer comentábamos que lo habitual a la hora de crear un hilo para que realice una tarea es usar algo como esto: 1: Thread ^hilo=gcnew Thread(gcnew ThreadStart( this ,&Clase::Método)); 2: hilo->Start(); En donde &Clase::Método es la dirección del método...

Publicado: 25/12/2007 19:02 por Rafael Ontivero | con 3 comment(s)

Archivado en:

Hemos leído: C++/CLI in Action (Nishant Sivakumar, Manning)
Esto sí que es un libro técnico, y lo demás son tonterías. En otras palabras: el libro es bueno, muy bueno, de lo mejorcito que he leído de cualquier tema técnico relacionado con la programación. Como el título indica, se trata de una obra eminentemente práctica y profunda que trata la mayoría de los aspectos del C++/CLI sin entrar para nada en detalles sobre el .NET excepto al final, cuando explica algo sobre WPF y tecnologías asociadas. El...

Publicado: 16/12/2007 12:01 por Rafael Ontivero | con 3 comment(s)

Archivado en: ,,

Hemos leído: Expert C++/CLI (Marcus Heege, Apress).
Para empezar diremos que se trata de un libro muy técnico y demasiado avanzado en algunos aspectos, tanto, que más del 50% del mismo no te sirve para nada como conocimientos prácticos. Eso sí, el resto es toda una gozada en cuanto a detalles de esos que hacen que te tires un par de días buscando por qué te falla tu programa y qué estás haciendo mal, para descubrir una acumulación de características más o menos oscuras del lenguaje, de la herramienta...

Publicado: 1/12/2007 13:20 por Rafael Ontivero | con no comments

Archivado en: ,

C++/CLI y C# VII: GetLastError en escenarios de interop
Introducción Hay un tema que ha aparecido indirectamente en algunos mensajes del grupo de C# relativo al tema de Interop mediante atributos (que es el único que puede hacer C# y VB.NET), y que desde que estoy leyendo dicho grupo nadie ha advertido o ha tenido algún problema con él, o al menos yo no me he dado cuenta de ello. Cuando uno hace una llamada al API de Win32, muchas funciones devuelven un estado de error a través de un handle inválido o simplemente devolviendo FALSE . Es una consecuencia...

Publicado: 25/11/2007 20:59 por Rafael Ontivero | con no comments

Archivado en: ,,

Más artículos Página siguiente >