по поводу того что название геттера и сеттера не должны совпадать с названием свойства в конструкторе, это было новое для меня, и понял наконец почему в таких случаях пишут (защищенное) свойство начиная с подчеркивания . Благодарю!
9:35 Я правильно понимаю, что после переименования свойства isComplited нужно и в методе complited его переименовать, иначе у нас ничего не получится при выполнении данного метода класса?
На момент записи курса - это не было ошибкой. Ключевое слово static появилось совсем недавно. Я даже не уверен, включено ли оно официально в стандарт на данный момент
Спасибо за уроки. Поясни пожалуйста, на th-cam.com/video/BASquaxab_w/w-d-xo.html обязательно внутри класса вызывать статический метод с указанием названия класса, или можно опустить?
Пожалуйста. Смотрите static говорит о том что свойство, или метод нужны только для внутреннй реализации какой-то логики. И рпи наследовании класса эти методы и свойства не наследуются. Поэтому смотрите сами, какая функциональность вам нужна.
@@YauhenKavalchuk а где здесь наследование? Внутри конструктора класса Task вызывается статический метод класса Task. Я просто думал, что внутри класса должны быть видны его методы
@@YauhenKavalchuk Ну как работает замыкание вроде бы мне известно, но чёт как его применить для сокрытия свойств чёт не понял. скажем есть у меня класс для рисования анимации кругов. Есть некоторые вычисления и записаны в свойства, как бы смысла их особо нет выводить. Просто появился интерес можно ли их скрыть и при этом чтобы метод экземпляра имел доступ к этим свойствам, но через console.dir не просматривались. class Circle { constructor(radius) { this.radius = radius; this.randWidth = Math.random() * canvas.width; this.randHeight = Math.random() * canvas.height; this.correctiondWidth = (this.randWidth < this.radius * 2) ? -this.radius : this.radius; this.correctionHeight = (this.randHeight < this.radius * 2) ? -this.radius : this.radius; this.x = this.randWidth - this.correctiondWidth; this.y = this.randHeight - this.correctionHeight; this.directionX = Math.random() * 1.5 this.directionY = Math.random() * 1.2
//вот 2 последних к примеру } animation(){ ... } }
а почему не static counter? И почему бы не объяснить что значит этот static? Почему все объясняют эти классы в отрыве от ДО ЕС6 JS? это типо заговор? Это же тупо сахар для тех, кто хочет чтобы было более похоже на другие языки, и тот-же static это тупо function MyClass ( ) { }; MyClass.staticProp = . . . ; ( присваивание объекту функции "типа конструктора" статического свойства и всё . . . ) но мало того, что даже это не казано, так у нас ещё и Task.counter. . Прям заговор какой-то мать его, или объясняющие сами не знают на что обращать внимание при объяснении! А это кардинально важно, если ты изучил обычное ес5 прототипное наследование, то наверное ПЕРВОЕ что нужно, это методом сравнения преподносить новый материал? ( ведь повторюсь снова ес6 синтаксис это вссеееееггооо лишь САХАААР ) Или в коричневых потоках комментов в духе " о боже, это лучеее обяснение " забывается главная цель сего действия на ютубе?
Мдааа уж, со статическими свойствами класса что-то они перехитрили. В нормальном языке программирования эти данные объявляются внутри класса. Прям дичь какая-то
ты на столько крут, что нам в Яндекс практикуме скидывают твои видосы перед ДЗ по теме классов и ООП) Обнимаю.
Спасибо
лол, вот бы объясняли так что бы и видос не понадобился) В Хекслете нашел видос в обсуждениях ;D
Спасибо вам большое! Я новичок, мало пока чего понимаю, но ваш канал - лучшее, что я для себя открыл)
по поводу того что название геттера и сеттера не должны совпадать с названием свойства в конструкторе, это было новое для меня, и понял наконец почему в таких случаях пишут (защищенное) свойство начиная с подчеркивания .
Благодарю!
Пожалуйста)
Очень доходчиво разъяснено.
Спасибо за отзыв
Спасибо за крутые объяснения!
Спасибо за отзыв
Спасибо за урок, очень познавательно и подробно.
Попытки произносить с акцентом немного режут слух. Как по мне лучше без акцента)
Как уж есть)
А что мешает свойство static task сразу в класс?
Что мешает создать свойство в классе с префиксом static? У меня вроде всё работает.
👍
9:35 Я правильно понимаю, что после переименования свойства isComplited нужно и в методе complited его переименовать, иначе у нас ничего не получится при выполнении данного метода класса?
Да, всё верно. Просто для примера этот метод не использовался, поэтому я не стал его трогать. Но суть вы уловили правильно!
Отличный урок! Однозначно лайк!
Спасибо
По идее, статику класса можно объявлять внутри конструктора.. Спасибо за уроки!
Пожалуйста
Спасибо
Пожалуйста
Хорошее видео. Единственное замечание, насчёт метода isComplited, принято чтобы мотоды начинающиеся с такого суффикса возвращали булево значение.
Да, согласен.
ну так true и false чем тебе не булевое?
Вы забыли указать ключевое слово "static"при создании статичного свойства. Это, пожалуй, ошибка. Не?
На момент записи курса - это не было ошибкой. Ключевое слово static появилось совсем недавно. Я даже не уверен, включено ли оно официально в стандарт на данный момент
Спасибо за уроки. Поясни пожалуйста, на th-cam.com/video/BASquaxab_w/w-d-xo.html обязательно внутри класса вызывать статический метод с указанием названия класса, или можно опустить?
Пожалуйста. Смотрите static говорит о том что свойство, или метод нужны только для внутреннй реализации какой-то логики. И рпи наследовании класса эти методы и свойства не наследуются. Поэтому смотрите сами, какая функциональность вам нужна.
@@YauhenKavalchuk а где здесь наследование? Внутри конструктора класса Task вызывается статический метод класса Task. Я просто думал, что внутри класса должны быть видны его методы
Иногда определённую реализацию функционала внутри класса прячут. Это распространённая практика
Как кстате скрывать свойства не подскажете?
Замыкание
@@YauhenKavalchuk Ну как работает замыкание вроде бы мне известно, но чёт как его применить для сокрытия свойств чёт не понял.
скажем есть у меня класс для рисования анимации кругов. Есть некоторые вычисления и записаны в свойства, как бы смысла их особо нет выводить. Просто появился интерес можно ли их скрыть и при этом чтобы метод экземпляра имел доступ к этим свойствам, но через console.dir не просматривались.
class Circle {
constructor(radius) {
this.radius = radius;
this.randWidth = Math.random() * canvas.width;
this.randHeight = Math.random() * canvas.height;
this.correctiondWidth = (this.randWidth < this.radius * 2) ? -this.radius : this.radius;
this.correctionHeight = (this.randHeight < this.radius * 2) ? -this.radius : this.radius;
this.x = this.randWidth - this.correctiondWidth;
this.y = this.randHeight - this.correctionHeight;
this.directionX = Math.random() * 1.5
this.directionY = Math.random() * 1.2
//вот 2 последних к примеру
}
animation(){
...
}
}
@@singlebw4065 возвращай объект с публичными свойствами/методами. А в контексте родителя уже описывай приватные свойства/методы
а почему не static counter? И почему бы не объяснить что значит этот static? Почему все объясняют эти классы в отрыве от ДО ЕС6 JS? это типо заговор? Это же тупо сахар для тех, кто хочет чтобы было более похоже на другие языки, и тот-же static это тупо
function MyClass ( ) { };
MyClass.staticProp = . . . ; ( присваивание объекту функции "типа конструктора" статического свойства и всё . . . ) но мало того, что даже это не казано, так у нас ещё и Task.counter. .
Прям заговор какой-то мать его, или объясняющие сами не знают на что обращать внимание при объяснении! А это кардинально важно, если ты изучил обычное ес5 прототипное наследование, то наверное ПЕРВОЕ что нужно, это методом сравнения преподносить новый материал? ( ведь повторюсь снова ес6 синтаксис это вссеееееггооо лишь САХАААР ) Или в коричневых потоках комментов в духе " о боже, это лучеее обяснение " забывается главная цель сего действия на ютубе?
Мдааа уж, со статическими свойствами класса что-то они перехитрили. В нормальном языке программирования эти данные объявляются внутри класса. Прям дичь какая-то
так исторически сложилось ранее )
как уже говорилось в видео, что классы это просто сахар, при переводе в ЕС5 это все функции =)
¯\ _(ツ)_/¯
что -_-,
?
ты што, тоже англичанином заделался? Когда ж вы поймете, как убого вы звучите со своими "джауашкрипт" и "часк"
Не так убого, как подобного рода комментарии