Sobes.tech
Junior — Middle

Jak w programowaniu w Node.js realizuje się użycie polimorfizmu?

sobes.tech AI

Odpowiedź od AI

W Node.js polimorfizm jest realizowany poprzez prototypowe dziedziczenie i dynamiczne typowanie JavaScript.

Główne metody:

  • Dziedziczenie przez prototypy: obiekty mogą dziedziczyć właściwości i metody od innych obiektów, umożliwiając nadpisywanie zachowań.

  • Funkcje konstruktory i klasy (ES6+): można tworzyć klasy z metodami, które są nadpisywane w podklasach.

  • Dynamiczne typowanie: funkcje mogą przyjmować argumenty różnych typów i zachowywać się inaczej w zależności od typu lub struktury danych.

Przykład z klasami i nadpisywaniem metody:

class Animal {
  speak() {
    console.log('Zwierzę wydaje dźwięk');
  }
}

class Dog extends Animal {
  speak() {
    console.log('Pies szczeka');
  }
}

const animal = new Animal();
const dog = new Dog();
animal.speak(); // Zwierzę wydaje dźwięk
dog.speak();    // Pies szczeka

W ten sposób, polimorfizm w Node.js osiąga się dzięki możliwościom JavaScript w zakresie dziedziczenia i nadpisywania metod.