text

Introducción a la POO en JavaScript

¡Bienvenidos al maravilloso mundo de la Programación Orientada a Objetos (POO) en JavaScript! Si eres nuevo en la programación o simplemente quieres ampliar tus conocimientos, estás en el lugar correcto. La POO es un paradigma de programación que te permite organizar y estructurar tu código de manera más eficiente y modular.

En la POO, los objetos son el centro de todo. Un objeto es una entidad que tiene propiedades (variables) y métodos (funciones) que le dan vida. Estos objetos pueden interactuar entre sí, heredar características y ser reutilizados en diferentes partes de tu programa.

Clases y Objetos

En JavaScript, puedes crear objetos utilizando clases. Una clase es una plantilla o molde que define las propiedades y métodos que tendrán los objetos creados a partir de ella. Para crear una clase, utilizamos la palabra clave class:

JavaScript
class Perro {
  constructor(nombre, raza) {
    this.nombre = nombre;
    this.raza = raza;
  }

  ladrar() {
    console.log("¡Guau guau!");
  }
}

Ahora que tenemos nuestra clase Perro, podemos crear objetos a partir de ella utilizando la palabra clave new:

JavaScript
const miPerro = new Perro("Firulais", "Labrador");

En este ejemplo, hemos creado un objeto llamado miPerro que tiene un nombre de «Firulais» y una raza de «Labrador». También puede ladrar utilizando el método ladrar() que hereda de la clase Perro.

Herencia

Una de las ventajas de la POO es la capacidad de heredar características de una clase a otra. Esto nos permite reutilizar código y crear jerarquías de objetos. En JavaScript, podemos lograr esto utilizando la palabra clave extends:

JavaScript
class PerroSalchicha extends Perro {
  constructor(nombre) {
    super(nombre, "Salchicha");
  }

  estirarse() {
    console.log("¡Estoy estirado!");
  }
}

En este ejemplo, hemos creado una nueva clase llamada PerroSalchicha que hereda de la clase Perro. Además de las propiedades y métodos de la clase padre, la clase PerroSalchicha tiene su propio método estirarse().

Encapsulación

Otra característica importante de la POO es la encapsulación. Esto significa que los datos y métodos de un objeto se mantienen ocultos y solo se pueden acceder a través de métodos públicos. En JavaScript, podemos lograr esto utilizando el prefijo underscore para indicar que una propiedad o método es privado:

JavaScript
class CuentaBancaria {
  constructor(saldoInicial) {
    this._saldo = saldoInicial;
  }

  depositar(cantidad) {
    this._saldo += cantidad;
  }

  retirar(cantidad) {
    if (cantidad <= this._saldo) {
      this._saldo -= cantidad;
    } else {
      console.log("No tienes suficiente saldo");
    }
  }

  obtenerSaldo() {
    return this._saldo;
  }
}

En este ejemplo, la propiedad _saldo es privada y solo se puede acceder a ella a través del método obtenerSaldo(). Esto evita que se acceda directamente al saldo y se manipule de manera incorrecta.

Polimorfismo

El polimorfismo es una característica de la POO que permite que los objetos de diferentes clases respondan de manera diferente a un mismo método. Esto nos da flexibilidad y nos permite tratar diferentes objetos de manera uniforme. En JavaScript, podemos lograr esto simplemente sobrescribiendo un método en una clase hija:

JavaScript
class Animal {
  hacerSonido() {
    console.log("Haciendo sonido genérico");
  }
}

class Perro extends Animal {
  hacerSonido() {
    console.log("¡Guau guau!");
  }
}

class Gato extends Animal {
  hacerSonido() {
    console.log("¡Miau miau!");
  }
}

const miPerro = new Perro();
const miGato = new Gato();

miPerro.hacerSonido(); // Imprime "¡Guau guau!"
miGato.hacerSonido(); // Imprime "¡Miau miau!"

En este ejemplo, hemos creado una clase base Animal y dos clases hijas Perro y Gato. Cada una de estas clases tiene su propio método hacerSonido() que sobrescribe el método de la clase base.

La POO es una herramienta poderosa que puede mejorar la estructura y eficiencia de tu código, así que ¡a seguir aprendiendo!

Tabla de Contenido

Contenido Adicional

farmacia y bioquimica
farmacia y bioquimica
Eylen Almendra Ortiz Perez

farmacia y bioquimica

farmacia y bioquimica carrera es una profesión desafiante y en constante evolución, pero con un gran potencial de desarrollo profesional y personal. Es importante destacar que los farmacéuticos y bioquímicos deben estar siempre actualizados, trabajar en equipo y poseer habilidades de comunicación y decisiones críticas para desempeñarse en esta carrera.

Leer más »
text
Desarrollo web
Ego Cañari Torres

Fundamentos básicos de Javascript

En este artículo, vamos a sumergirnos en los fundamentos básicos de Javascript. Si eres nuevo en la programación o simplemente quieres refrescar tus conocimientos, estás en el lugar correcto. ¿Qué es Javascript? Javascript es un lenguaje de programación que se

Leer más »
Diseño web
diseño web
audra

Diseño web2

Diseño web es una disciplina que se encarga de la creación y planificación de sitios web, asegurando que estos sean atractivos, funcionales y fáciles de navegar. El objetivo del diseño web es crear una experiencia de usuario satisfactoria, y es

Leer más »
Ilustración de la relación entre matemáticas y codificación
Programacion
Ego Cañari Torres

La Matemática y su impacto en la Programación

La programación y la matemática son dos disciplinas que están estrechamente relacionadas, la matemática es la base fundamental de la programación, y su influencia se puede apreciar en cada línea de código que se escribe. En este artículo, exploraremos cómo

Leer más »
Fundamentos de Programacion
Programacion
Ego Cañari Torres

Fundamentos de Programación

Array en JavaScript: Array en Python: Array en Java: Array en C#: Array en PHP: Array en C++: If en los lenguajes mas populares Condicionales if, elseif y else en JavaScript Condicionales if, elseif y else en Java Condicionales if,

Leer más »
optimizar imagenes
SEO
Ego Cañari Torres

optimizar imagenes

Optimizacion de imagenes, tamaño, peso, dimensiones y todo lo que debes saber para publicar tu imagen en la web

Leer más »

3 respuestas a “Introducción a la POO en JavaScript”

  1. […] Explorar Home » Programacion » Javascript » Estructuras de Datos y Funciones con Javascript Tabla de Contenido […]

  2. I simply could not go away your web site prior to suggesting that I really enjoyed the standard info a person supply on your guests Is going to be back incessantly to investigate crosscheck new posts

  3. Nice blog here Also your site loads up very fast What host are you using Can I get your affiliate link to your host I wish my site loaded up as quickly as yours lol

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *