A veces por circunstancias de la vida te toca bailar con la más “fea” (según opiniones). Llevo ya casi dos años con Ruby y RoR, y salvo algún que otro retoque llevaba tiempo sin tocar Java o PHP, cuando menos C# o cualquier cosa que saliera de Visual Studio; pero tarde o temprano me iba a tocar, y aquí estoy ahora Smartphone vienen Smartphone va.
Llevo una semana dándole a C# usando Compact Framework 3.5 y un emulador con WM6 y como apoyo para dudas la “maravillosa” MSDN, y la verdad empiezo a tener mono de Ruby. No se hasta que punto se quisieron complicar la vida con C# mezclando C++ y Java. Hice algunas cosas en J2ME y ni por asomo era tan rebuscado (ojo, que no complicado) el trabajar con hilos y los componentes de la interfaz.
Puede que aún no haya pillado bien el concepto de delegado en C# pero me parece algo ridículo. Ilustro el ejemplo:
Un botón de “Track” que al presionarse lanza un hilo que actualiza la posición de un usuario sobre un Bitmap (todo el tema de posicionamiento lo hacemos con el Engine Position de Ekahau (EPE)). Facil no…
Creo una clase PositionDrawer que hace uso del WS de posición del EPE, en un hilo a parte que usa un método de acceso del componente Bitmap y redibuje la posición, que para el prototipo esta separación es más que suficiente a modo de prueba de concepto.
Todo perfecto, fácil, limpio y rápido para probar. Pues no, resulta que la comunicación entre subprocesos dentro de C# debe realizarse a través de unos métodos llamados Delegados, que hay que llamar a través de una instancia completa del formulario a través del Invoke, con lo que me obliga por un rato a tener en memoria dos veces lo mismo… No lo acabo de pillar muy, quiero pensar eso y será lo más normal…
Ya discutí muchas veces con gente sobre lo fácil que es hacer aplicaciones en .Net, todos me dicen lo mismo:
Tío está tirado, es la ostia de fácil, arrastras, defines propiedades un poco de comportamiento al evento y si te hace falta pues haces una clasecilla por aquí y por halla..
Por favor que salgan de ahí… creo que se me nota que estoy hasta las narices de .NET ¡¡¡En una semana!!!
Esto es una opinión personal, seguramente programadores experimentados me digan lo contrario y que es por desconocimiento, pues tengo algo que decirles: “Probé Ruby y me pareció raro pero me gusto, lo entendía, era lógico para con mi cabeza, lo use un poco más y me enganchó. MS VS2008, .NET, C#… no lo han conseguido, es más me frustran en algunos momentos… lo siento Ruby 1 - C# 0″