Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

1043 artículos publicados

Introducción a los registros (record) y los objetos inmutables de C# 9

Una de las grandes novedades que se presentaron con .NET 5 y C# 9, fueron los registros. Antes de eso podíamos trabajar con dos tipos de estructuras para almacenar información: class y struct. Con C# 9 o posterior disponemos de un tercer elemento para almacenar información: record, también conocido como registro. En este artículo te enseñaremos qué son, qué propiedades tienen, en qué se diferencian de las estructuras tradicionales, y cómo podemos utilizarlos para crear objetos verdaderamente inmutables con muy poco código. [Más]

¿Qué tipo de empresas usan inteligencia artificial (IA) y Machine Learning?

Hace unos meses la Comisión Europea publicó el primer resumen cuantitativo sobre la adopción de tecnologías de inteligencia artificial (IA) entre las empresas europeas. Para ello realizó una encuesta en 30 países (UE-27 junto con Noruega, Islandia y Reino Unido) a más de 9 500 empresas; en la muestra están representadas empresas de todos los tamaños, desde micropymes (entre 5 y 9 empleados) hasta grandes empresas (más de 250 empleados). Si quieres saber qué buscan las empresas y en qué posición está España sigue leyendo. [Más]

Todo sobre los archivos .PDB: qué son y por qué se generan siempre al compilar una aplicación .NET

Cuando trabajas con .NET habrás observado que, al compilar una aplicación, aparte del .exe o .dll correspondientes se generan también unos archivos con la extensión .pdb. Estos tienen el mismo nombre que el ensamblado principal, pero no parecen hacer nada... En este artículo te explicamos qué son, para qué sirven, cómo gestionarlos, si debes incluirlos o no con tu aplicación y cómo deshabilitarlos (aunque no te lo recomendamos). [Más]

VÍDEO: Blazor 5 - manejo de listados gigantes con listas virtualizadas

Una de las novedades más interesantes de Blazor 5, aparecido con .NET 5, es la posibilidad de virtualizar listas. Si tenemos un listado o una rejilla muy grandes, en lugar de tener que cargar todo su contenido, podemos virtualizarlos para que se cargue tan solo lo que se está visualizando, de manera que ganemos en rendimiento y los usuarios ni siquiera lo sepan: sólo disfruten de una gran experiencia de usuario. En este vídeo nuestro tutor José Manuel Alarcón nos cuenta cómo hacerlo. [Más]

Cómo es el proceso de extraer conocimiento a partir de bases de datos

Todas las empresas, en mayor o menor medida, manejan múltiples fuentes de información útil. Generalmente esta información se almacena en bases de datos, pero también en otro tipo de almacenes, como por ejemplo hojas de cálculo o archivos CSV. Todas esas fuentes de datos contienen información útil y permiten obtener mucho conocimiento a partir de ellas. Pero el proceso para lograrlo no es sencillo ni directo. La transformación de esos datos en información útil, es decir, en conocimiento, requiere de un proceso que puede llegar a ser complejo. En este artículo te contamos en qué consiste y de qué fases consta. [Más]

Java: comodines para tipos genéricos - PECS. Diferencias entre <? extends T> y <? super T>

En el post de hoy nos vamos a centrar en un tema relacionado directamente con los tipos genéricos en Java: los comodines para genéricos o PECS. PECS es el acrónimo de Producer extends and Consumer super, que quiere decir en español que el productor usa extends y el consumidor usa super. Esta terminología tan extraña, cobra sentido cuando entiendes el funcionamiento y el propósito de estos comodines, cosa que veremos en el artículo. Se trata de un concepto de uso relativamente poco frecuente y que puede ser costoso de comprender, pero que cuando lo necesitas te puede salvar el día. [Más]

Cómo garantizar el soporte a largo plazo de tu aplicación .NET

El sistema de versiones de .NET Core tiene una manera muy diferente de funcionar respecto a lo que era .NET Framework, así que si vienes del desarrollo de aplicaciones con .NET "clásico" o si estás empezando con .NET Core o .NET, te resultará de mucha ayuda comprender la periodicidad de los lanzamientos del framework, los tipos de soporte que existen y su ciclo de vida, para poder tomar las decisiones correctas sobre qué versión utilizar en cada caso, sobre todo si trabajas en una empresa u organización donde la estabilidad de soporte es importante. [Más]

Aclarando conceptos: Inteligencia Artificial, Machine Learning, Deep Learning, Big Data y Ciencia de Datos

Sin duda la tendencia tecnológica más puntera de los últimos años es todo lo relacionado con la inteligencia artificial y el análisis de datos. El problema viene cuando los términos relacionados con el campo se convierten en palabras vacías de marketing que en muchos casos son directamente mentira. Es muy habitual hablar de que tal o cual producto usa la inteligencia artificial para lograr algo y, en ocasiones, son algoritmos convencionales tomando decisiones predecibles. En este artículo te explicamos de manera concisa y clara qué significan cada uno de los términos más comunes relacionados con la ciencia de datos y la inteligencia artificial. [Más]

¿Por qué Blazor? - Qué me ofrece Blazor si desarrollo con .NET y C#

Seamos realistas: para la mayoría de los desarrolladores que vienen de otros entornos, la parte más odiosa de hacer desarrollo Web es sin duda el Front-End, es decir, la interfaz de usuario. Con Blazor los desarrolladores de .NET y C# que creamos aplicaciones para la Web estamos de enhorabuena. Esta nueva tecnología de Microsoft nos permite hacer desarrollo Web usando C# y la plataforma .NET, de manera rápida y robusta, creando componentes reutilizables y separando las responsabilidades de la interfaz de usuario del resto de la aplicación. En este artículo te cantamos su bondades. [Más]

Qué es la Inyección de Dependencias y cómo funciona

En este artículo repasamos los conceptos de Inyección de Dependencias o Inversión de Control. Aprenderemos los problemas que tiene programar con el método tradicional de instanciar manualmente objetos, cómo la DI/IoC nos permite evitarlos, cómo lo hacemos y qué ventajas podemos obtener de ello. Usaremos fragmentos de código C#, pero todo lo explicado sirve para cualquier plataforma y lenguaje de programación moderno. [Más]