
Sander
05.08.2016
20:13:19
сублайм самый нормальный
atom красивый, но тормознутый потому что он же пислася вроде как браузернео приложение, а потом перевели его на desktop

Джон
05.08.2016
20:14:33
через электрон вроде

Google

Sander
05.08.2016
20:14:49
через electron
http://electron.atom.io/

Алексей
05.08.2016
20:15:01
vscode быстрее sublime

Sander
05.08.2016
20:15:22
в самом низу страницы можно посмотреть где атом используется

Andrey
05.08.2016
20:15:27

Sander
05.08.2016
20:15:43
не пробывал
хороший
?

Herman
05.08.2016
20:16:06
@tom910 а подробнее??
это отдельная тулза или примочка?

Andrey
05.08.2016
20:16:44
devtool: ‘eval’

Sander
05.08.2016
20:17:54
visual studio ….

Google

Sander
05.08.2016
20:18:19
для ангуляр девелоперов наверное удобней

Ivan
05.08.2016
20:18:41
атом фигня
а ты чем знаменит чтобы писать что атом фигня

Sander
05.08.2016
20:19:15
я написал почему атом плохой
высказал свое мнение
по ide
я ничем не знаменит, если я вас задел чем-то, то извеняй

Ivan
05.08.2016
20:22:31
надо просто принять что фигни нет ? и что сотни тысяч людей которые выбрали атом наверное этот выбор сделали не так просто ? все мы разные

Sander
05.08.2016
20:23:33
я пользовался атом , vs, subl

Ivan
05.08.2016
20:23:42
аналогично
и остановился на атоме после многих лет в сублиме

Sander
05.08.2016
20:23:59
многие пишут все на vim )

Ivan
05.08.2016
20:24:38
и хотя я vim вообще не понимаю не стоит же назвать его фигней ?
это труд кучи людей

Sander
05.08.2016
20:24:53
atom удобней тем что более настроеный и понятней с подсказками
ну те кто умеет то наверное для них это не заменимо

Ivan
05.08.2016
20:25:43
у меня тупо сломался трекпад - и на обычной дискретной мышке я не вижу разницы по скорости между атомом и сублимом

Sander
05.08.2016
20:25:48
правда без мышки не представляю, сложно если кода много

Ivan
05.08.2016
20:25:52
раньше скрол напрягал

Sander
05.08.2016
20:26:20
самый лучший редактор это на windows notepad стандартный

Ivan
05.08.2016
20:27:00
far + colorer мне его последние много лет не хватает

Google

Sander
05.08.2016
20:41:18
?

Котяй Негодяй
05.08.2016
21:38:57
.bind() полностью пересоздаёт метод? Насколько более ресурсоёмко сделать .bind(), чем просто передать функцию в переменную?

Paul
05.08.2016
21:41:01
"Насколько более ресурсоёмко сделать .bind(), чем просто передать функцию в переменную?"
Вопрос не понятен

Котяй Негодяй
05.08.2016
21:44:46
Уже решил.
bind() создаёт обёртку.
По сути, созданная обёртка — есть декоратор, который делает originalMethod.call(cоntext, arg1, arg2, ...)
Я беспокоился о том, насколько повлияет на производительность использование bind() в конструкторе класса для копирования определённых методов в другие объекты с привязкой контекста.
Ведь при создании экземпляра класса, его методы не копируются в экземпляр, а экземпляр получает к ним доступ через другой объект. Серьёзно ли изменится положение в плане производительности, если я начну создавать новые методы при создании экземпляра класса.

KlonD90
05.08.2016
22:13:16
Что исходники v8 говорят об этом?

Котяй Негодяй
05.08.2016
22:57:18
Клёвая шутка. Я не изучал C++.

Alxander
05.08.2016
23:00:07

Котяй Негодяй
05.08.2016
23:00:38

Alxander
05.08.2016
23:03:59
А зачем ты так себе жизнь усложняешь?
Ты решил сделать эти функциями не методами чтобы контекст уж точно не переопределялся или как?

Котяй Негодяй
05.08.2016
23:07:38
Это хелперы, функции внутри шаблона.
Но они работают с контекстом экземляра класса.

Alxander
05.08.2016
23:08:59

Котяй Негодяй
05.08.2016
23:09:28
То бишь, передавать в шаблон сам экземпляр?

Alxander
05.08.2016
23:09:31
А то выглядит будто ты monkey-patching делаешь какой-то.

Котяй Негодяй
05.08.2016
23:09:47
=))

Google

Alxander
05.08.2016
23:10:14

Котяй Негодяй
05.08.2016
23:10:50
Так ведь тогда они потеряют контекст.
Ну, если второе.

Alxander
05.08.2016
23:11:41
Почему вдруг?

Котяй Негодяй
05.08.2016
23:11:43
Если я передам экземпляр, то всё ок. Только в использовании будет уже не так удобно.
Ну, допустим, в шаблоне будет вызов block('header'). Ему потребуется контекст экземляра класса, т.к. он содержит персональные конфиг и данные.

Alxander
05.08.2016
23:13:32
Не понял с чего вдруг методы потеряют контекст.
Class.prototype.func когда вызывается от inst.func всегда имеет this же
Или там у тебя кто-то снаружи контекст портит?

Котяй Негодяй
05.08.2016
23:16:02
Хм. Так. А можно ссылку, чтобы по-подробнее ознакомиться?

Admin
ERROR: S client not available

KlonD90
05.08.2016
23:16:14

Котяй Негодяй
05.08.2016
23:17:16
this.local({
mod: this.getMod,
isMod: this.isMod,
element: this.createElement,
attributes: this.getAttributes
});

Alxander
05.08.2016
23:17:33

Котяй Негодяй
05.08.2016
23:17:43
Контекст в примере выше потерян.

Alxander
05.08.2016
23:17:44
Есть методы "класса"
А что у тебя функция local делает?
Я чёт не нашёл её быстрым взглядом с телефона.

Котяй Негодяй
05.08.2016
23:18:24
Это методы экземпляра класса.
local() устанавливает локальные переменные для шаблона. Таким образом туда попадают и хелперы.

Google

Котяй Негодяй
05.08.2016
23:19:28
Это единственный вариант.

Alxander
05.08.2016
23:19:50
А, я понял. Это какой-то проброс обработчиков в шаблонизатор.

Котяй Негодяй
05.08.2016
23:20:13
Дада.

Alxander
05.08.2016
23:20:28
Ну тогда нормальная практика юзать bind

Котяй Негодяй
05.08.2016
23:21:48
Печаль в том, что это БЭМ, и шаблон состоит из кучи блоков. В норме — каждый ДОМ-элемент — это, в переводе на мою либу, класс.
Пардон, экземпляр класса.

Alxander
05.08.2016
23:22:30
Честно говоря мне сложно было понимать твой код. Много всяких примесей и всего такого. Но может дело в специфике шаблонизатора.

Котяй Негодяй
05.08.2016
23:24:13
Ну, код кое-где снабжён абстракциями. Наверное, не всегда к месту. Ещё есть вопросы к его разбиению по файлам. Шаблонизатор здесь не при чём. =)
Зато здесь есть вариант реализовать кеширование уже отрендеренного вывода отдельно для каждого блока.

KlonD90
05.08.2016
23:41:21
http://benediktmeurer.de/2015/12/25/a-new-approach-to-function-prototype-bind/ 7 месяцев назад вмержили такой подход
но уже походу снова переписали
хотя в ноде может и старее пользоваться или эта версия

Котяй Негодяй
05.08.2016
23:43:39
Там байндинг находится за пределами теста.
А у меня это часть нагрузки.

KlonD90
05.08.2016
23:44:06
дело не в тесте (смотри кот)

Котяй Негодяй
05.08.2016
23:44:07
Сам байндинг в смысле.

KlonD90
05.08.2016
23:45:02
У тебя операция один раз выполняется?
О_о
или тебя интересует кэширование bind функции?

Котяй Негодяй
05.08.2016
23:47:21
Нет. Я говорил о другом кешировании. =)
Это уже другая тема.
Байндинг выполняется при каждом создании экземпляра.
Таких созданий много.