Yield Return: que es y como usarlo

Hoy os quiero traer una pequeña píldora con el uso de yield return en C#. Usándolo, estamos indicando que el método es un iterador. Pero, ¿esto que quiere decir?

Veámoslo con un ejemplo, leed el siguiente código. Sin conocer el uso de yield return, a priori el método DameInts() sería imposible, ya que entraríamos en un bucle infinito. Tomate un segundo y ejecútalo, a ver que pasa.

using System;
using System.Collections.Generic;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {

            Console.WriteLine("Hello World!");
            var resultado = DameInts();
            foreach (var a in resultado)
                Console.WriteLine(a);
        }

        public static IEnumerable<int> DameInts()
        {
            int i = 0;
            while (true)
            {
                yield return ++i;
                System.Threading.Thread.Sleep(1000);
            }
        }

    }
}
Sigue leyendo Yield Return: que es y como usarlo

Algunos libros que me han ayudado a mejorar

Los libros tienen algo especial, por mucho artículo que leamos en Internet, siempre nos gusta tener uno entre las manos para mejorar nuestras habilidades. Hace poco os hablaba de algunos cursos que usé para preparar la certificación de Azure Solutions Architect Expert y de como estoy preparando la certificación certificación Azure DevOps Engineer Expert. Esta vez es tuno de hablar de algunos libros de los que he aprendido algo a lo largo de los años.

Sigue leyendo Algunos libros que me han ayudado a mejorar