Saltar al contenido principal
C#
Formación a medida Nivel medio certificado-csharp-programacion-orientada-a-objetos-oop

C# Programación orientada a objetos

C# ·Backend

Curso centrado en programación orientada a objetos moderna con C# sobre .NET, base imprescindible antes de entrar en ASP.NET Core, microservicios o dominios de negocio complejos. Aprendes a diseñar clases y propiedades, aplicar encapsulación y herencia, definir interfaces y clases abstractas, modelar tipos inmutables con records y aplicar principios SOLID con patrones de diseño. Al terminar modelas dominios profesionales y entras con criterio en cualquier framework del ecosistema Microsoft.

Evidencias FUNDAE Activación guiada Evaluación con IA Sin permanencia

¿Prefieres verlo en directo? Agenda una demo sin compromiso.

Formación corporativa: este curso se activa bajo pedido para tu organización. Adaptamos temario, calendario y modalidad (teleformación, aula virtual o mixto).

Contenido del curso

Lenguaje de Microsoft para el ecosistema .NET: backend, web y juegos.

7 módulos 44 lecciones 30 ejercicios evaluados por IA 5 tests
  • Introducción a C# Lección
  • Creación de proyecto C# Lección

Detalles del curso

La programación orientada a objetos (OOP) representa uno de los paradigmas más importantes en el desarrollo de software moderno. C# se ha consolidado como un lenguaje versátil y potente que implementa este paradigma de forma elegante y completa, convirtiéndose en una herramienta fundamental para desarrolladores profesionales en el ecosistema Microsoft y más allá.

¿Qué es la programación orientada a objetos?

La OOP es un paradigma de programación que utiliza "objetos" como elementos fundamentales. Estos objetos son instancias de clases, que funcionan como plantillas o moldes que definen las características (propiedades) y comportamientos (métodos) que tendrán los objetos creados a partir de ellas.

Este enfoque permite modelar problemas del mundo real de manera más intuitiva, organizando el código en unidades cohesivas que encapsulan datos y funcionalidad relacionada, facilitando así el desarrollo, mantenimiento y escalabilidad de aplicaciones complejas.

C# como lenguaje orientado a objetos

C# fue diseñado desde sus inicios como un lenguaje orientado a objetos puro, incorporando todos los conceptos fundamentales de este paradigma:

  • Encapsulación: Permite ocultar los detalles internos de implementación y exponer solo lo necesario.
  • Herencia: Facilita la reutilización de código mediante la creación de jerarquías de clases.
  • Polimorfismo: Permite que objetos de diferentes clases respondan de manera distinta al mismo mensaje.
  • Abstracción: Posibilita representar conceptos complejos de forma simplificada.

A lo largo de este curso, exploraremos estos conceptos y muchos más, desde los fundamentos hasta técnicas avanzadas que te permitirán aprovechar todo el potencial de C# como lenguaje OOP.

Fundamentos de clases y objetos en C#

En C#, todo comienza con las clases y objetos. Una clase es una estructura que define un tipo de datos, mientras que un objeto es una instancia concreta de esa clase. Por ejemplo:

// Definición de una clase
public class Persona
{
    // Propiedades
    public string Nombre { get; set; }
    public int Edad { get; set; }
    
    // Método
    public void Presentarse()
    {
        Console.WriteLine($"Hola, soy {Nombre} y tengo {Edad} años.");
    }
}

// Creación de un objeto (instancia de la clase)
Persona persona1 = new Persona();
persona1.Nombre = "Ana";
persona1.Edad = 30;
persona1.Presentarse(); // Salida: Hola, soy Ana y tengo 30 años.

Este ejemplo ilustra cómo una clase encapsula tanto datos (propiedades Nombre y Edad) como comportamiento (método Presentarse).

Encapsulación y control de acceso

La encapsulación es un principio fundamental que permite controlar el acceso a los miembros de una clase. C# proporciona modificadores de acceso como public, private, protected e internal para este fin:

public class CuentaBancaria
{
    // Campo privado - solo accesible dentro de la clase
    private decimal _saldo;
    
    // Propiedad pública con lógica de validación
    public decimal Saldo
    {
        get { return _saldo; }
        private set { _saldo = value; } // Solo se puede modificar dentro de la clase
    }
    
    public void Depositar(decimal cantidad)
    {
        if (cantidad <= 0)
            throw new ArgumentException("La cantidad debe ser positiva");
            
        _saldo += cantidad;
    }
}

Este patrón de diseño protege los datos internos y garantiza que solo puedan modificarse a través de métodos controlados, manteniendo la integridad de los datos.

Constructores y ciclo de vida de los objetos

Los constructores son métodos especiales que se ejecutan cuando se crea un objeto, permitiendo inicializar sus propiedades. C# también proporciona destructores (o finalizadores) que se ejecutan cuando un objeto es eliminado por el recolector de basura:

public class Recurso
{
    private string _nombre;
    
    // Constructor sin parámetros
    public Recurso()
    {
        _nombre = "Sin nombre";
        Console.WriteLine("Recurso creado");
    }
    
    // Constructor con parámetros
    public Recurso(string nombre)
    {
        _nombre = nombre;
        Console.WriteLine($"Recurso '{_nombre}' creado");
    }
    
    // Destructor
    ~Recurso()
    {
        Console.WriteLine($"Recurso '{_nombre}' liberado");
    }
}

C# también proporciona el patrón IDisposable para una gestión más controlada de recursos:

public class ConexionBD : IDisposable
{
    private bool _disposed = false;
    
    public void Dispose()
    {
        Dispose(true);
        GC.SuppressFinalize(this);
    }
    
    protected virtual void Dispose(bool disposing)
    {
        if (!_disposed)
        {
            if (disposing)
            {
                // Liberar recursos administrados
            }
            
            // Liberar recursos no administrados
            _disposed = true;
        }
    }
}

Otros cursos de C#

Formación a medida ·Nivel medio

C# Colecciones y LINQ

Curso centrado en colecciones y LINQ con C# sobre .NET, habilidades imprescindibles para escribir consultas eficientes en cualquier API empresarial o pipeline de datos. Aprendes a elegir entre listas, diccionarios, conjuntos, colas y pilas, escribes consultas declarativas con filtrado, proyección, ordenación, agrupación y agregación y razonas sobre ejecución diferida y rendimiento. Al terminar transformas datos en memoria y traduces consultas a bases de datos relacionales con criterio profesional.

Formación a medida ·Nivel medio

C# Programación funcional

Curso centrado en estilo funcional sobre C#, complemento natural a la programación orientada a objetos en APIs y microservicios empresariales. Trabajas delegates y expresiones lambda, funciones de orden superior y closures, inmutabilidad con records y colecciones inmutables, pattern matching avanzado y patrones para manejar la ausencia de valor sin nulos descontrolados. Al terminar escribes código declarativo, testeable y sin efectos secundarios innecesarios, integrado con consultas y tareas asíncronas.

Formación a medida ·Nivel inicial

C# Sintaxis Básica

Curso inicial para hacerse con la sintaxis de C# sobre el ecosistema .NET, primer paso para incorporarse a un equipo del stack Microsoft. Creas tu primer proyecto desde la línea de comandos, trabajas tipos primitivos, variables, operadores e interpolación de cadenas, controlas el flujo con condicionales y bucles modernos y escribes funciones y expresiones lambda básicas. Al terminar tienes la base de lenguaje necesaria para abordar programación orientada a objetos, colecciones y LINQ.

Curso completo ·Nivel medio

C#

Curso completo de C# sobre .NET pensado para equipos del ecosistema Microsoft en banca, seguros, administración pública y consultoras enterprise. Cubres sintaxis moderna del lenguaje, programación orientada a objetos profesional, colecciones y LINQ, estilo funcional con records y pattern matching, programación asíncrona y pruebas automatizadas. Al terminar dominas el lenguaje al nivel necesario para entrar en ASP.NET Core, Entity Framework Core o microservicios .NET con código limpio y testeable.

Llave en mano para empresas

¿Formación para tu equipo en esta tecnología?

Tú nos dices a quién formar y nosotros configuramos la plataforma con tu marca, damos de alta a tu gente, evaluamos las entregas con IA y te entregamos los certificados y los informes técnicos para tu gestor FUNDAE. Catálogo amplio con teleformación, aula virtual o mixto. Sin permanencia, sin coste de setup.

¿Prefieres verlo en directo? Agenda una demo.

Preguntas frecuentes

¿C# Programación orientada a objetos es bonificable por FUNDAE para mi empresa?
Puede ser bonificable cuando la acción cumple los requisitos aplicables. La plataforma aporta evidencias técnicas: seguimiento de tiempos, registro de conexiones, foros, encuestas y certificados para que tu entidad organizadora o gestoría revise la documentación.
¿En qué modalidades se imparte C# Programación orientada a objetos?
En tres modalidades: teleformación (online asíncrona), aula virtual privada en directo y mixta. Adaptamos temario, calendario y modalidad al equipo.
¿Se adapta C# Programación orientada a objetos al nivel de mi equipo?
Sí. Adaptamos temario, calendario y modalidad al nivel y al stack del equipo, con ejercicios evaluados por IA y certificado verificable.
¿Cuánto tarda en activarse para mi empresa?
La activación corporativa estándar es rápida, sin coste de setup ni permanencia.