Este material cuenta con una serie de temas que profundizan en temas básicos e intermedios acerca de Visual Studio C#. Son 11 módulos los que abarca y que proveen al lector el conocimiento necesario para entender el tema y aplicar los conocimientos en los laboratorios.
Al final de cada módulo se encuentra un laboratorio que el lector debe resolver, estos laboratorios cuentan con dos secciones; evaluación y ejercicio práctico. La evaluación no es más que un cuestionario sobre el módulo terminado y el ejercicio práctico es un problema que el lector debe resolver empleando lo aprendido en el módulo.
Este material, los ejemplos que muestra y laboratorios están desarrollados utilizando la última versión estable al momento de su redacción, .NET 6. Todos los ejemplos, resolución de laboratorios y ejercicios los podrá encontrar en el siguiente repositorio público: https://github.com/intecproof-learning/curso-visual-studio-c-sharp.git.
C# es un lenguaje de programación moderno, basado en objetos y con seguridad de tipos. Permite a los desarrolladores crear muchos tipos de aplicaciones seguras y sólidas que se ejecutan en .NET. C# tiene sus raíces en la familia de lenguajes C, y a los programadores de C, C++, Java y JavaScript les resultará familiar inmediatamente.
C# es un lenguaje fuertemente tipado. Todas las variables y constantes tienen un tipo, al igual que todas las expresiones que se evalúan como un valor. Cada declaración del método especifica un nombre, el tipo y naturaleza (valor, referencia o salida) para cada parámetro de entrada y para el valor devuelto.
C# proporciona una serie de operadores. Muchos de ellos son compatibles con los tipos integrados y permiten realizar operaciones básicas con valores de esos tipos.
Las estructuras de control de C# son similares a las de C y C++. La diferencia más notable radica en que la instrucción condicional if, los ciclos while y do están controlados por una expresión lógica (tipo Boolean). Esta restricción hace que las instrucciones sean más seguras al evitar posibles fuentes de error, o al menos, facilitan la legibilidad del código.
En C#, la definición de un tipo (una clase, estructura o registro) es como un plano técnico que especifica lo que el tipo puede hacer. Un objeto es básicamente un bloque de memoria que se ha asignado y configurado de acuerdo con el plano. Los cuatro principios básicos de la programación orientada a objetos son: Abstracción, Encapsulación, Herencia y Polimorfismo.
Las características de control de excepciones del lenguaje C# le ayudan a afrontar cualquier situación inesperada o excepcional que se produce cuando se ejecuta un programa. El control de excepciones usa las palabras clave try, catch y finally para intentar realizar acciones que pueden no completarse correctamente, para controlar errores cuando decide que es razonable hacerlo y para limpiar recursos más adelante.
Los genéricos introducen el concepto de parámetros de tipo a .NET, lo que le permite diseñar clases y métodos que aplazan la especificación de uno o varios tipos hasta que el código de cliente declare y cree una instancia de la clase o el método.
Los delegados proporcionan un mecanismo de enlace en tiempo de ejecución en .NET. Un enlace en tiempo de ejecución significa que se crea un algoritmo en el que el llamador también proporciona al menos un método que implementa parte del algoritmo.
Los eventos son una manera para que un objeto difunda (a todos los componentes interesados del sistema) que algo ha sucedido. Cualquier otro componente puede suscribirse al evento, y recibir una notificación cuando se genere uno..
El modelo de programación asincrónica de tareas (TAP) es una abstracción del código asincrónico. El código se escribe como una secuencia de instrucciones, como es habitual. Puede leerlo como si cada instrucción se completase antes de comenzar la siguiente. El compilador realiza diversas transformaciones porque algunas de estas instrucciones podrían empezar a funcionar y devolver una clase Task que representase el trabajo en curso.
Windows Forms es un marco de interfaz de usuario para compilar aplicaciones de escritorio de Windows. Proporciona una de las formas más productivas de crear aplicaciones de escritorio basadas en el diseñador visual proporcionado en Visual Studio. Funciones como la colocación de controles visuales mediante arrastrar y colocar facilita la compilación de aplicaciones de escritorio..
Este material fue completamente desarrollado por intecproof S.A. de C.V.