@Richswitch
junior

Какой стиль написания кода в моде в JavaScript?

Привет!
Формулировка вопроса, я думаю, не совсем правильна. Ведь ООП это и есть стиль написания кода. Но, ниже постараюсь описать, что я имел ввиду.
Чтобы следовать современным тенденциям нужна борода, вейп и уметь писать на JavaScript используя ООП. Борода у меня растет плохо, на вейп денег нет, поэтому пытаюсь начать писать свой код на JavaScript используя ООП. Но я не знаю с чего начать (точнее знаю), боюсь что буду использовать устаревшую информацию и упущу все новые фичи, которые есть в современном использовании ООП подхода.
От коллеги слышал, что есть несколько разных способов задания классов, например:
- старый метод F.prototype;
- новый метод F (я вероятно ошибаюсь);
Возможно есть еще какие-либо отличия современного нового подхода от старого. Возможно я ошибаюсь или несу чушь, но все потому что у меня в голове каша по этому поводу.
Подскажете существует ли то о чем я пишу?
PS советы начинающему (т.е. мне) буду рад видеть

Всем спасибо! :)
  • Вопрос задан
  • 777 просмотров
Решения вопроса 2
TexxTyRe
@TexxTyRe
Software Developer
Не слушайте тех, кто говорит про говнокод, ребята либо нигилисты, либо мамкины революционеры и "не такие как фсе". Как удобно, так и пишите. Просто прочитайте главу про прототипы, поймите это и то, что JS основан на прототипах и вперед. Все нормальные компании используют новые приемы и не стоят на месте.
class Rectangle {
  constructor(height, width) {
    this.height = height;
    this.width = width;
  }
  
  get area() {
    return this.calcArea();
  }

  calcArea() {
    return this.height * this.width;
  }
}

Классы ES6
Ответ написан
Stalker_RED
@Stalker_RED
- новый метод F (я вероятно ошибаюсь);

В этом учебнике есть и старый, и новый метод https://learn.javascript.ru/es-class

И между ними нет никакой разницы в том, как они работают, разница в удобстве написания и чтения.
Их даже смешивать можно (хотя с точки зрения стиля - это будет говнокод)
'use strict';

class User { // класс в стиле es-2015

  constructor(name) {
    this.name = name;
  }

  sayHi() {
    console.log('Hi, ', this.name);
  }

}

// "старый" стиль продолжает работать,
// чо с ним сделается то.
User.prototype.sayHo = function() {
  console.log('Ho-ho-ho, ', this.name);
};

let user = new User("Вася");
user.sayHi();
user.sayHo();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы