Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.10.2014, 10:54
Аспирант
Отправить личное сообщение для yriiarutiunian Посмотреть профиль Найти все сообщения от yriiarutiunian
 
Регистрация: 22.08.2013
Сообщений: 57

Эмулятор классов на JavaScript
Как создать человечество на JavaScript?

Привет всем поклонникам этого замечательного языка программирования! А ненавистники его-трепещите=) Как нам известно JavaScript - неклассический язык, и одна из причин по которой он не понравился многим программистам заключается в том, что он пытался выдать себя за то, чем он на самом деле не является, но JavaScript - объектно-ориентированный язык, в нем есть наследование, в нем есть объекты. Однако механизм несколько отличается от других классических языков программирования, и как следствие это очень не очевидно!

Я попытался приблизить способы описания классов и создания объектов к более привычному виду. Функционал еще достаточно сырой и реализован от силы на 2% =). Хочу узнать, что Вы думаете о данном подходе программирования на JS.

Исходный код и пример использования: https://github.com/yriiarutiunian/fprog

В примере Вы можете создавать неограниченное число людей - мужчин и женщин. Менять их характер, растить, наследовать положительные и отрицательные черты. А также проверить совместимость конкретных женщины и мужчины по критерию отношения зарплаты мужчины к размеру груди женщины =)

P.S: Описания классов у меня хранятся в строковых переменных. На самом деле конечно же классы будут храниться объектом в отдельных файлах.
Ответить с цитированием
  #2 (permalink)  
Старый 24.10.2014, 12:00
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Хватит придумывать велосипеды!
В JS добавили сахарный синтаксис для классов, тема закрыта.

class Foo {
    constructor() {
    }
}

class Bar extends Foo {
    constructor() {
    }
}


Чтобы не дожидаться полной поддержки всех браузеров используй транслятор, например, https://github.com/termi/es6-transpiler.
__________________
kobezzza
code monkey
Ответить с цитированием
  #3 (permalink)  
Старый 24.10.2014, 13:20
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от kobezzza
Хватит придумывать велосипеды!
В JS добавили сахарный синтаксис для классов, тема закрыта.
именно это мы и думаем
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #4 (permalink)  
Старый 24.10.2014, 19:26
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

kobezzza,
Цитата:
В JS добавили сахарный синтаксис для классов, тема закрыта.
Пришёл сюда, что бы написать это)


Цитата:
используй транслятор, например, https://github.com/termi/es6-transpiler.
Годный транслятор, но такой придирчивый к коду)
Ответить с цитированием
  #5 (permalink)  
Старый 24.10.2014, 21:26
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от terminator-101
 
Регистрация: 14.10.2014
Сообщений: 117

Сообщение от yriiarutiunian
В примере Вы можете создавать неограниченное число людей - мужчин и женщин. Менять их характер, растить, наследовать положительные и отрицательные черты. А также проверить совместимость конкретных женщины и мужчины по критерию отношения зарплаты мужчины к размеру груди женщины =)
А без твоего велосипда такое делать типо нельзя?

А классы в JS есть. Сраного сахара только для них нет. Это лексические замыкания. Только хорошего в этом ничего нет. Быдло-ООП ненужно. В JS Ъ-ООП в стиле смоллтока и селфа. Чтобы создать что-то *лучше* надо быть, как минимум умней Алана Кея. А страусы и трупы сосут. А проблема, как ты правильно заметил, что это тру непонятно для плюсового и жабообразного быдла, которое ломится в JS. Реши лучше эту проблему, начни с себя.

Последний раз редактировалось terminator-101, 24.10.2014 в 21:30.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Использование классов в JavaScript devote Ваши сайты и скрипты 70 01.02.2013 17:17
Интерпретатор Java на JS kobezzza Оффтопик 24 11.10.2012 18:32
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34