Javascript-форум (https://javascript.ru/forum/)
-   Библиотеки/Тулкиты/Фреймворки (https://javascript.ru/forum/library-toolkit-framework/)
-   -   Что я хочу от JavaScript? (https://javascript.ru/forum/library-toolkit-framework/21912-chto-ya-khochu-ot-javascript.html)

CyberMaster 29.09.2011 11:30

Что я хочу от JavaScript?
 
Здравствуйте! Я являюсь разработчиком новой javascript-библиотеки. В ней будут собраны самые полезные и необходимые инструменты. Хочу слышать ваши пожелания и советы для нее. Буду рад читать ваши предложения!

Snipe 29.09.2011 11:52

Чем ваша библиотека будет лучше кучи уже существующих?

ksa 29.09.2011 13:45

Snipe, в ней будут учтены все твои пожелания... :D

da_ff 29.09.2011 14:15

Я хочу:
- чтобы она научила меня играть на скрипке;
- пожалуй пока хватит.

da_ff 29.09.2011 14:16

А можно только три желания?

ksa 29.09.2011 14:32

Цитата:

Сообщение от da_ff
А можно только три желания?

Пока вообще нет ограничений, записывают все пожелания...

Kolyaj 29.09.2011 14:34

+1 голос за скрипку.

CyberMaster 29.09.2011 15:55

Разные библиотеки имеют свои возможности, приемущества и недостатки. Я постараюсь учесть их и сделать новую библиотеку удобнее, функциональнее и более легкой в использовании.

ksa 29.09.2011 16:03

Цитата:

Сообщение от CyberMaster
Я постараюсь учесть их и сделать новую библиотеку удобнее, функциональнее и более легкой в использовании.

Ты мой кумир! :lol:

da_ff 29.09.2011 16:21

ksa,
Может быть это пришествие мессии. Жили мы жили, боролись с недостатками. Вот приходит спаситель и дарует нам совершенную библиотеку полную возможностей, преимуществ и начисто лишенную недостатков.

CyberMaster 29.09.2011 16:26

Возможно!

da_ff 29.09.2011 16:29

CyberMaster,
Что со скрипкой?

CyberMaster 29.09.2011 16:30

Хорощий юмор!

ksa 30.09.2011 09:54

da_ff, значит будем знакть кому "ку" делать... :)

Цитата:

Сообщение от da_ff
Что со скрипкой?

У меня желание попроще... Ремень ГРМ порвался. :( Пусть JS починит забесплатно. :D

melky 30.09.2011 09:55

только виртуально

CyberMaster 15.10.2011 20:58

библиотека уже в процессе. ее главное предназначение - эффекты и анимация.

da_ff 17.10.2011 12:46

CyberMaster,
Уже ночей не сплю в ожидании.

CyberMaster 26.10.2011 20:45

Народ, нужен ваш совет! Какой селекторный движок посоветуете интегрировать в мой шедевр? Движок должен быть быстрым и с поддержкой css3-селекторов.

CyberMaster 26.10.2011 20:48

Пока остановился на Sizzle, но судя по тестам он не самый быстрый. Читал, что движок библиотеки DOMAssistant самый быстрый.

melky 26.10.2011 21:12

YASS самый быстрый

CyberMaster 27.10.2011 21:09

Но yass понимает только селекторы css1, или я ошибаюсь? Вообще я уже встроил возможность смены селекторного движка. Каждый пользователь сможет менять движки "как перчатки".

CyberMaster 04.11.2011 13:11

Ага, спасибо за совет! Уже адаптирую YASS под библиотеку. Судя по тестам, это действительно самый быстрый селекторный движок.

CyberMaster 04.11.2011 13:12

Почемуто не везде работает фильтр :contains?

melky 04.11.2011 13:39

зачем он нужен ?

CyberMaster 05.11.2011 11:23

Бывает, пригождается для фильтрации коллекций.

CyberMaster 02.01.2012 14:09

Я останавливаюсь на YASS!!!

devote 02.01.2012 17:37

ни такой уж он и быстрый, а с учетом того что не все селекторы понимает, да и еще и не сортирует элементы после поиска... не считаю что это быстрый селектор
http://spb-piksel.ru/tests/speed2/

CyberMaster 03.01.2012 14:41

И че посоветуешь?

devote 03.01.2012 17:58

Цитата:

Сообщение от CyberMaster
И че посоветуешь?

смотри на тест и выбирай то что больше по душе

CyberMaster 06.01.2012 22:56

Тогда на QSA остановлюсь. Я о таком движке раньше и не слышал. Хорош, тем более по МИТ лицензии распространяется!

devote 07.01.2012 15:41

CyberMaster,
ну если заинтересовал, то обновления по нему появляются в этом топике, ну или на офф сайте будет всегда ссылка на самую свежую версию.

float 09.01.2012 03:39

devote,
У yass по умолчанию включен кэш. А в тесте кажется по 25 раз выборка делается...
Если кэш вырубить то картина будет СОООВСЕМ другая.
А ещё он возвращает объекты разных типов(массив/коллекция).

CyberMaster,
Чёт долго у вас процесс длиться;).

devote 09.01.2012 03:44

Цитата:

Сообщение от float
Если кэш вырубить то картина будет СОООВСЕМ другая.

В тесте кеш какраз таки и вырублен. И его использование я не считаю рациональным, ибо кеш он не проверяет когда его использует. Пример:

var elems = _(".myelems");
alert( elems.length ); // тут мы увидем что найдено N элементов
elems.length = 0; // очищаем массив
elems = _(".myelems"); // делаем снова тот же запрос
alert( elems.length ); // Тут мы получаем 0 элементов, ибо он просто взял с кеша старый массив, который я изменил, а он даже не удосужился проверить.

Вот так по идиотски работает с кешом этот Yass а в тестах у меня кеш отключен, что бы было видно реальную скорость его работы.

float 09.01.2012 03:51

Цитата:

В тесте кеш какраз таки и вырублен.
Странно. Я когда тестил у себя получил чуть другие результаты.
С приведением к массиву yass жёстко проигрывал почти по всем показателям. (да и без приведения)

CyberMaster,
Цитата:

ее главное предназначение - эффекты и анимация.
а что нибудь в этом направлении делалось?

devote 09.01.2012 03:56

Цитата:

Сообщение от float
Странно. Я когда тестил у себя получил чуть другие результаты.
С приведением к массиву жёстко проигрывал почти по всем показателям. (да и без приведения)

Не совсем понял кто проигрывал, но суть в том что я в своем тесте отключил везде кеш и использование нативной функции querySelectorAll тоесть в моих тестах показана реальная скорость работы именно скриптов выборки элементов. Конечно же если включить кеш и нативную функцию, они в большинстве случаев будут работать все с одинаковой скоростью.

devote 09.01.2012 09:03

Цитата:

Сообщение от float
А ещё он возвращает объекты разных типов(массив/коллекция).

Удивил, QSA так же умеет возвращать любой тип объекта
var out = qsa.querySelectorAll('a[href*="blah"]', document, { length: 0 } );

вернет объект(не массив) с элементами, хотя возможно и не нужно указывать свойство length честно говоря не проверял. Но уверен что будет нормально работать. Ну так же можно просто в параметр extra засунуть совершенно любой объект, он в него просто добавит элементы.

float 09.01.2012 14:34

devote,
я имел ввиду, что это плохо:). тип должен быть 1-н - массив.

devote 09.01.2012 19:01

Цитата:

Сообщение от float (Сообщение 149101)
devote,
я имел ввиду, что это плохо:). тип должен быть 1-н - массив.

Ты скорее всего имел ввиду что он возвращает NodeList иногда. То да не есть гуд.

У меня такого нет, только то что указано в третьем параметре. Ну а по дефолту он работает с массивом, просто никто не запрещает работать не с массивом... Ибо на скорость работы это никак не влияет.

CyberMaster 13.01.2012 17:37

Я только начинаю делать фреймворк и сейчас написал самые основные функции, типа each, random, extend..., на которых он базируется. Буквально недавно собрал полигон, на котором тестируется валидность функций и тестирую библиотеку на различных движках. Уже написал алгоритмы нового движка Seleneon Engine, смысл которого опишу на оффициальном сайте. Думаю в 2013 все будет готово!

CyberMaster 13.01.2012 17:40

От селекторного движка мне нужно лишь одно - массив найденных элементов по селектору, а уже оболочку будет формировать мой фреймворк с учетом своего предназначения.


Часовой пояс GMT +3, время: 10:41.