Programación Orientada a Objetos (POO) para principiantes

Rodrigo Max Lara Camarena
2 min readNov 7, 2024

--

La Programación Orientada a Objetos (POO) es un paradigma de programación que organiza el código en torno a “objetos” en lugar de funciones o acciones. Estos objetos son instancias de “clases”, que agrupan datos y comportamientos relacionados. Los principales conceptos de la POO son:

  1. Clases: Plantillas que definen las propiedades y métodos de los objetos.
  2. Objetos: Instancias de una clase.
  3. Encapsulamiento: Agrupa datos y métodos que trabajan sobre esos datos dentro de una clase y controla el acceso a ellos.
  4. Herencia: Permite que una clase derive de otra, heredando sus propiedades y métodos.
  5. Polimorfismo: Permite que los métodos tengan diferentes implementaciones según el contexto.
  6. Abstracción: Define clases abstractas o interfaces para que las clases derivadas implementen su comportamiento.
// Definimos una clase base llamada Animal
public abstract class Animal
{
// Propiedad que almacenará el nombre del animal
public string Nombre { get; set; }

// Constructor para inicializar el nombre
public Animal(string nombre)
{
Nombre = nombre;
}

// Método abstracto que cada animal implementará a su manera
public abstract void HacerSonido();
}

// Clase Perro que hereda de Animal
public class Perro : Animal
{
public Perro(string nombre) : base(nombre) { }

// Implementación del método HacerSonido para Perro
public override void HacerSonido()
{
Console.WriteLine($"{Nombre} dice: Guau!");
}
}

// Clase Gato que hereda de Animal
public class Gato : Animal
{
public Gato(string nombre) : base(nombre) { }

// Implementación del método HacerSonido para Gato
public override void HacerSonido()
{
Console.WriteLine($"{Nombre} dice: Miau!");
}
}

// Programa principal
class Program
{
static void Main(string[] args)
{
// Creamos instancias de Perro y Gato
Animal miPerro = new Perro("Firulais");
Animal miGato = new Gato("Michi");

// Llamamos al método HacerSonido en cada instancia
miPerro.HacerSonido(); // Salida: Firulais dice: Guau!
miGato.HacerSonido(); // Salida: Michi dice: Miau!
}
}

Explicación:

  1. Clase Animal: Es una clase abstracta con una propiedad Nombre y un método abstracto HacerSonido().
  2. Herencia: Perro y Gato heredan de Animal y deben implementar el método HacerSonido.
  3. Polimorfismo: Cada animal tiene una implementación diferente de HacerSonido.
  4. Encapsulamiento: Las propiedades y métodos están encapsulados dentro de las clases y accedemos a ellos solo mediante instancias.

--

--

Rodrigo Max Lara Camarena
Rodrigo Max Lara Camarena

Written by Rodrigo Max Lara Camarena

Ingenierío de Software con gran pasión por las nuevas tecnologías y el desarrollo de software, así como su creación con las mejores prácticas.

No responses yet