• Создать ли class, если будет создан только один элемент на его основе?

    Вот пример самого простого, что пришло в голову. В JS нет интерфейсов (ts не брать), абстрактных классов из которых, можно было нормально спроектировать сущности.

    class entity {
        isDead = false;
    	heals = 100;
    	damage = 10;
    
    	strike(entity, damage) {
          if (!this.isDead) {
            entity.heals -= damage;
            
            if (entity.heals <= 0) {
              this.isDead = true
              console.log(entity, 'is dead');
            }
          }
        }
    }
    
    class heroEntity extends entity {
      heals = 150;
      damage = 15;
    }
    
    class mobEntity extends entity {
      
    }
    
    
    const hero = new heroEntity(),
          mob  = new mobEntity();
    
    hero.strike(mob, 100); // mobEntity {isDead: false, heals: 0, damage: 10} "is dead"


    PS классы нужны для создания сложных структур данных и с ними удобнее
    Ответ написан
    Комментировать
  • Можно ли улучшить код?

    @tarthur
    Забудьте этот код и начните решать другие задачи, чем больше тем лучше,. Оптимизируйте как знаете на данный момент и не более.
    Продолжайте искать идеальное решение и вы будете постепенно замедлятся в развитии, давать себе задачи которые вам не давали, а потом не делать их потому, что, все учесть и перепроверить не так то просто.
    Перфекционизм порождает лень, лень будет уничтожать мотивацию.
    Ответ написан
    2 комментария