Ver por etiquetas

Todas las etiquetas » programación (RSS)

El Tao de la Programación

Hace unos días charlaba con un colega sobre aspectos filosóficos del desarrollo de software, y me pareció curioso que no conociera “ The Tao of Programming ”, todo un clásico de la literatura friki, y lectura indispensable para los que nos dedicamos a esto. Este libro, escrito en el año 1987 por Geoffrey James , recoge, en un humorístico tono de misticismo oriental, distintas historias y parábolas con geniales mensajes de fondo sobre calidad...

ASP.NET MVC 2: Quince cuestiones que deberías conocer

En marzo de 2008 publiqué un megapost en el que se recogían respuestas a diez preguntas básicas sobre el framework ASP.NET MVC , que por aquellos entonces se encontraba todavía en una versión muy preliminar, la Preview 2. Más de un año después, coincidiendo con el lanzamiento de la versión 1.0, actualicé el contenido y las preguntas conforme a la evolución de los desarrollos y a lo que había podido profundizar en...

TempData en ASP.NET MVC 2

TempData es un diccionario disponible a nivel de controladores y vistas del framework ASP.NET MVC que nos permite almacenar objetos de forma similar a la colección ViewData , pero, a diferencia de ésta, es capaz de mantener su contenido entre peticiones. De hecho, es un recurso habitualmente utilizado cuando necesitamos enviar información desde una acción a otra tras realizar una redirección. Por ejemplo, ante una petición dirigida hacia la acción...

xVal, validaciones automáticas para ASP.NET MVC

Mientras esperamos impacientes la llegada de ASP.NET MVC 2 con su flamante sistema integrado de validación de datos en cliente y servidor, xVal puede sernos de bastante utilidad al ofrecernos prácticamente las mismas funciones previstas para la versión 2, y alguna más :-) xVal es un framework para aplicaciones ASP.NET MVC 1.0 (y superiores) creado por Steve Sanderson , y presentado en sociedad el pasado 17 de septiembre, que permite validar la información almacenada...

Control de errores en acciones ASP.NET MVC

El control de errores en aplicaciones web es fundamental si queremos ofrecer un interfaz robusto y amigable para los usuarios en cualquier situación. No hay nada más frustrante para un usuario que una pantalla de error con contenidos indescifrables y que no le aportan alternativas de salida. El framework ASP.NET MVC nos ofrece mecanismos de control de errores muy potentes basada en la utilización del atributo HandleError, el cual definirá la vista que será mostrada...

Cambiar la ubicación de las vistas en ASP.NET MVC

El framework ASP.NET MVC utiliza en varios puntos la filosofía que suele denominarse convención sobre configuración , ahorrando tiempo y esfuerzos al desarrollador que decida asumir una serie de normas preestablecidas, a la vez que facilita la homogeneidad y coherencia en las soluciones que las implementen. Por ejemplo, todos sabemos que las vistas de una aplicación ASP.NET MVC deben encontrarse en la carpeta Views . Si se trata de una vista compartida como puede ser una...

Compilar las vistas en ASP.NET MVC

El código introducido en las vistas ASP.NET MVC pueden ser fuente de problemas en tiempo de ejecución debido a que, por defecto, no se compilan con el proyecto, sino cuando el sistema necesita mostrarlas por primera vez. Es decir, es perfectamente posible que errores de codificación en un archivo .ASPX no sean detectados hasta el momento de su ejecución, provocando un YSOD de los de toda la vida. Un ejemplo. Imaginemos una vista tipada (en un archivo .ASPX) en la que hemos...

Cómo depurar selectores jQuery

El gran K. Scott Allen comentaba hace unas semanas en OdeToCode un pequeño truco que puede resultar de utilidad cuando tengamos un código jQuery que no funcione correctamente. Como comenta el autor, la mayoría de los problemas con jQuery se deben a un uso incorrecto de los potentes selectores , así que lo que propone es el uso de la consola javascript incluida en algunas herramientas como Firebug (para Firefox) o las propias herramientas de desarrollo incluidas en Internet...

ASP.NET MVC: trece preguntas básicas

En marzo de 2008 publiqué un post en el que se recogían respuestas a diez preguntas básicas sobre el framework ASP.NET MVC, que por aquellos entonces se encontraba todavía en una versión muy preliminar, la Preview 2. Más de un año después, coincidiendo con el reciente lanzamiento de la versión 1.0, voy a actualizar el contenido y las preguntas conforme a la evolución de los desarrollos y a lo que he podido profundizar en el tema...

Formas de relanzar excepciones en C#

Es bastante habitual encontrar código que captura una excepción y la vuelve a relanzar tras realizar algún tipo de operación. Sin embargo, habréis observado que existen varias fórmulas para hacerlo, y no necesariamente equivalentes: crear y lanzar una nueva excepción partiendo de la original relanzar la excepción original dejar que la excepción original siga su camino El primer caso ocurre cuando capturamos una excepción de un...

Usando using, valga la redundancia (C#)

La palabra reservada using tiene diversos usos en el lenguaje C#, y seguro que muchos la utilizamos exclusivamente para importar espacios de nombres (namespaces), ignorando el resto de posibilidades que nos ofrece: Importación de espacios de nombres Definición de alias , tanto de espacios de nombres como de tipos . Adquisición y liberación de recursos Vamos a dar un repasillo a cada una de estas utilidades, profundizando un poco en aquellas menos habituales. 1. Importación...
Publicado por José M. Aguilar | 3 comment(s)

Programadores con producción neta negativa (NNPP)

Cuando me topé por primera vez con el término NNPP (siglas de "Net Negative Producing Programmer") no puedo negar que me hizo cierta gracia. Cuanto menos, resultaba curioso pensar que podían existir desarrolladores cuyo saldo en las aportaciones a un proyecto resultara negativo, o lo que es lo mismo, que el valor de su producción fuera superado por el coste de los errores y defectos que introducían en las aplicaciones. Y con el término "desarrolladores"...

Juega con las API Ajax de Google

Unos días atrás, Ben Lisbakken descubría en el Blog de Google Code el proyecto al que había dedicado el famoso ( ¿y difunto? ) 20% de la jornada laboral en esta compañía: AJAX APIs Playground . Se trata de un sitio web interactivo en el que se encuentran un total de 170 ejemplos de uso de las siguientes API de Google: API de visualización , que permite a los desarrolladores acceder a datos estructurados y mostrarlos en una gran variedad de formatos...

Inclusión de elementos en el encabezado de una página de contenidos ASP.NET

Un detalle que llama la atención al añadir una página maestra a un proyecto ASP.NET desde Visual Studio 2008 es que, por defecto, añade dos secciones de contenido ( ContentPlaceHolder ) a la estructura de la página. Una de ellas es la habitual, en el cuerpo de <form runat="server"> , que es donde las páginas basadas en esa MasterPage introducirán sus contenidos y controles. La otra, sin embargo, es una novedad respecto a versiones anteriores...

Plataforma pro-salvación de Visual Basic .NET (SVB.Net)

Tras algunos días de intenso debate, ayer quedó constituida SVB.Net, la plataforma pro-salvación de Visual Basic, como movimiento independiente de la comunidad de desarrolladores de habla hispana aupa.net , cuyo objetivo es apoyar la continuidad del lenguaje y hacer presión para forzar un replanteamiento de su estrategia comercial. Para el que todavía no esté al tanto de la historia, durante la segunda semana de diciembre ha tenido lugar en Dallas el encuentro de desarrolladores DevConn4 , en el...

Métodos genéricos en VB.NET

Al escribir el post " Métodos genéricos en C# ", estuve pensando en tratar este tema también en VB.NET de forma simultánea, pero al final preferí limitarme a C# para no hacer la entrada más extensa de lo que ya iba a resultar de por sí. Esto, unido a un comentario de Julio sobre el propio post en el que preguntaba si existía algo parecido en Visual Basic .NET, ha hecho que reedite el mismo, pero centrándome esta vez en dicho lenguaje. Los métodos genéricos son interesantes herramientas...

Métodos genéricos en C#

Los métodos genéricos son interesantes herramientas que están con nosotros desde los tiempos del .NET Framework 2.0 y pueden resultarnos muy útiles de cara a la construcción de frameworks o librerías reutilizables. Podríamos considerar que un método genérico es a un método tradicional lo que una clase genérica a una tradicional; por tanto, se trata de un mecanismo de definición de métodos con tipos parametrizados, que nos ofrece la potencia del tipado fuerte en sus parámetros y devoluciones aun sin...

Bullet Physics, motor de física para C++ y Java

Siguiendo con el tema que comenzaba hace ya unos meses, hoy os traigo otra demo de otro motor de física, esta vez para desarrollos realizados en C++, Bullet Physics Library . Se trata de un potente motor de física en tres dimensiones para una gran variedad de plataformas, Win32, Linux, Mac, XBox, Wii, e incluso la PS3. Las demostraciones de este motor son ejecutables, por lo que hay que descargarlas y ejecutarlas en el equipo local. Si utilizáis Windows, os recomiendo echar un vistazo al paquete...

Crear puntos de ruptura en tiempo de ejecución con .NET

Todos sabemos crear puntos de ruptura (breakpoints) desde Visual Studio, y lo indispensables que resultan para depurar nuestras aplicaciones. Y si la cosa está complicada, los puntos de ruptura condicionales pueden ayudarnos a lanzar el depurador justo cuando se cumpla la expresión que indiquemos. Lo que no conocía era la posibilidad de establecerlos por código desde la propia aplicación que estamos depurando, que puede resultar útil en momentos en que nos sea incómodo crearlos desde el entorno de...

La depuración y las cinco fases del duelo

Cuando Elisabeth Kübler-Ross , eminente médica psiquiatra suizo-americana, enunció su famoso modelo Kübler-Ross en 1969, seguro que no andaba pensando en el mundo del desarrollo de software. De hecho, este modelo describe las cinco fases por las que pasa un enfermo terminal, o cualquier persona afectada por una situación de gravedad extrema: negación, ira, negociación, depresión y aceptación, también conocidas como "las cinco fases del duelo" . El genial Kevin Pang ha publicado un divertido...
Más artículos Página siguiente >