Por
José Manuel Alarcón.
Publicado el
Una pregunta habitual de los que comienzan con Java (e incluso en entrevistas de trabajo para puestos que usan este lenguaje) tiene que ver con las comparaciones entre cadenas de texto. Si vienes de otros lenguajes puedes estar acostumbrado a comparar cadenas con el operador igualdad == o, simplemente, te puede parecer la forma más evidente y obvia de hacerlo. En Java, no lo es, y si la usas te llevarás alguna que otra sorpresa. Vamos a ver el porqué y cómo funciona todo esto por dentro.
[Más]
Por
José Manuel Alarcón.
Publicado el
Las interfaces son una abstracción estupenda que nos ofrecen la mayor parte de los lenguajes de programación orientados a objetos. Básicamente nos permiten definir un "contrato" sobre el que podemos estar seguros de que, las clases que las implementen, lo van a cumplir. En este artículo vamos a repasarlas en C# y vamos a ver la diferencia que existe entre las dos maneras de implementarlas en una clase en este lenguaje.
[Más]
Por
José María Aguilar.
Publicado el
Microsoft acaba de presentar, en el marco del evento .NET Conf 2019, la nueva versión de .NET Core y el conjunto de tecnologías y frameworks relacionados. Si bien para ASP.NET Core no se trata de una versión especialmente revolucionaria, sí que viene acompañada de algunos breaking changes y novedades que vale la pena comentar. A continuación veremos los principales cambios introducidos con esta versión.
[Más]
Por
Jorge Turrado.
Publicado el
A lo largo de la vida de un programador, a veces se encuentra con dilemas de diseño a la hora de escribir el código. Sin ir más lejos, seguramente alguna vez te has hecho la pregunta con la que titula este artículo. Y es que, en ocasiones, no llega con devolver un único valor como resultado de la llamada a una función. En estos casos lo tradicional es usar parámetros por referencia o de tipo out, o bien devolver clases o estructuras propias. Pero esto no siempre es lo más adecuado. En este artículo te contamos cómo funcionan las tuplas y cómo te ayudan a resolver con elegancia estos casos.
[Más]
Por
Jorge Turrado.
Publicado el
Como programadores, es muy habitual tener que trabajar sobre colecciones de datos por un motivo u otro, seleccionar datos, agruparlos, sumarlos... Y no sólo colecciones en memoria: bases de datos, archivos en disco, datos en XML o en Excel... Una manera muy socorrida de trabajar con este tipo de datos es recorrer la colección. Sin embargo, hay una manera mucho mejor y con una potencia enorme que te va a facilitar la vida mucho: LINQ. En este artículo te presentamos la tecnología y su uso básico.
[Más]
Por
Francisco Charte.
Publicado el
Los paquetes son el mecanismo que usa Java para facilitar la modularidad del código. Un paquete puede contener una o más definiciones de interfaces y clases, distribuyéndose habitualmente como un archivo. Para utilizar los elementos de un paquete es necesario importar este en el módulo de código en curso, usando para ello la sentencia import. En este artículo+vídeo vamos a ver qué son, cómo funcionan y cómo se utilizan.
[Más]
Por
José Manuel Alarcón.
Publicado el
Una pregunta típica que hace la gente al empezar con .NET es la que da título a este artículo. Seguro que si ya tienes experiencia con C# te sabes la respuesta habitual. Pero, más allá de las diferencias básicas estándar, que también se explican aquí, existe una diferencia enorme, mucho menos evidente, que ni siquiera muchos programadores experimentados conocen. Sigue leyendo...
[Más]
Por
Jorge Turrado.
Publicado el
Una de las cosas que más te pueden frustrar cuando empiezas en el mundo de la programación es ver que, cuando a base de mucho esfuerzo has conseguido que tu programa funcione, el resultado es que funciona... pero se bloquea la interfaz, no escala bien, etc. Has oído o leído algo sobre "hilos de ejecución" y te decides a probarlos, pero ves que tienes que manejarlos, que sincronizarlos, preguntarles qué tal están de vez en cuando... Un trabajo tedioso y que muchas veces no es necesario porque existe una herramienta para ello. Este es el caso del asincronismo que conocemos hoy en día. Desde hace ya mucho tiempo (desde la versión 5.0 de C#) tenemos a nuestra disposición 2 palabras clave que nos permiten manejar estas situaciones multi-hilo con una lógica y una sintaxis verdaderamente asíncrona. Vamos a verlo...
[Más]
Por
campusMVP.
Publicado el
Abróchate el cinturón. En esta guía, comparamos cuándo es absolutamente vital utilizar TypeScript, el lenguaje de programación de tipado estricto, y cuándo tiene sentido atenerse a JavaScript "puro".
[Más]
Por
Jorge Turrado.
Publicado el
En cualquier aplicación .NET lo más normal es tener que crear clases propias para representar entidades y trabajar con ellas. Aunque .NET de serie ofrece muchos operadores (suma, resta... comparaciones, etc...) que funcionan con los tipos por defecto, con nuestros propios tipos no funcionan por defecto. En este artículo vamos a descubrir cómo podemos crear versiones de cualquier operador que permitan trabajar con nuestras propias clases.
[Más]