Javascript - это многопарадигмальный язык. Это означает, что он поддерживает несколько способов (или структур) написания вашего кода javascript.
Javascript поддерживает два основных способа написания кода: императивная и декларативная парадигма программирования.
Императивный способ программирования связан с тем, как и где вы перечисляете каждый шаг программы. Объектно-ориентированное программирование (ООП) подпадает под императивную парадигму.
Декларативное программирование больше касается того, что и что выводит программа. Сюда входит функциональное программирование.
Если все это немного сбивает с толку, ознакомьтесь с этими статьями: они подробно рассказывают о парадигмах javascript. Https://medium.com/javascript-in-plain-english/what-are-javascript-programming-paradigms-3ef0f576dfdb
https://medium.com/@zach.gollwitzer/imperative-vs -декларативное-программирование-процедурное-функциональное-и-oop-b03a53ba745c
Однако в этой статье основное внимание уделяется ООП.
Что такое ООП?
Объектно-ориентированное программирование - это модель компьютерного программирования, которая организует разработку программного обеспечения на основе данных или объектов, а не функций и логики.
Есть четыре основных строительных блока ООП, они включают в себя:
- Классы
- Атрибуты
- Методы
- Объекты
Классы
Чтобы начать работу с ООП в Javascript, требуется класс. Класс подобен плану структуры ваших методов и атрибутов. Например, если я хочу создать виртуального человека. Я хочу, чтобы у этого человека было имя, пол, интересы и т. Д., И я хочу, чтобы этот человек мог представлять себя, здороваться и т. Д. И я также хочу написать эту программу, используя объектно-ориентированный метод. Сначала мне нужно создать для этого класс.
class Person {// здесь идет код}
Я назвал свой класс «классом», а затем назвал его «Человек», поскольку этот класс посвящен человеку. Обратите внимание, что имя класса начинается с заглавной буквы, а не только с строчной буквы для переменных. Затем я поставил фигурные скобки, чтобы показать, что это блок кода.
Атрибуты
Атрибуты просто означают качество или особенность, и в данном случае это будут атрибуты созданного мной класса людей.
class Person {
конструктор ({имя, возраст, пол, интересы}) {
this.name = name
this.gender = пол
this.interests = [… интересы]
}}
В моем личном классе я создал три атрибута этого человека: имя, возраст и интересы. Вы заметите, что я также добавил конструктор. Конструктор помогает создать новый экземпляр объекта. Не переживайте, если вы этого не поняли, скоро все станет ясно.
Методы
На этом этапе вы должны быть знакомы с объектами в javascript, которые в основном представляют собой функции , которые хранятся как свойства (действия) объекта и могут выполняться над объектами.
Пример встроенной функции включает: .toUpperCase () и т. д. Помните?
Отлично, поэтому мы можем написать метод для объекта класса. Вспомните из нашего определения ООП, что все данные видятся и записываются как объект, поэтому наш класс Person по сути является объектом.
class Person {
конструктор ({имя, возраст, пол, интересы}) {
this.name = name
this.gender = пол
this.interests = [… интересы]
}
Introduction () {
return `Привет, меня зовут $ {this.name}, я $ {this.gender}. Мои интересы $ {this.interests}. Приятно познакомиться `
}
}
Когда к этому человеку обращаются по методу «знакомство». Он вернет последний код.
Объекты
Что такое объекты в ООП?
Несмотря на то, что все в основном является объектом, новый объект может быть создан из этого объекта класса. Если бы мне нужно было несколько виртуальных людей, я бы использовал new
keyword и создавал бы новые объекты из моего классного человека.
const person1 = new Person ({name: «Blossom», пол: «Male», интересы: [«спящий», «разгульный)»]})
const person2 = new Person ({name: «Ade », Пол:« Мужской », интересы: [« Чтение »,« Рисование »,« Кулинария »]})
Если вы следовали инструкциям, попробуйте вести журнал в консоли person1 и person2, вы должны получить что-то похожее на это:
Экземпляр класса Person был создан дважды для создания двух новых объектов person без необходимости переписывать код. Я мог бы создать столько людей, сколько захочу.
Кроме того, если вы вызовете метод, вы должны получить следующее:
Это означает, что вы получаете объекты, которые вы создали, чтобы делать что-то с помощью методов.
Это основы написания программ на ООП. Есть еще несколько концепций, с которыми вам нужно будет ознакомиться, прежде чем полностью освоить ООП, но я надеюсь, что эта статья упростила для вас ООП.
Это отличные ресурсы для продолжения:
https://www.educative.io/blog/object-oriated-programming
https://www.freecodecamp.org/news/object- ориентированное-программирование-концепции-21bb035f7260 /
Удачного кодирования.