Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Collection – фреймворк для управления данными (https://javascript.ru/forum/project/27848-collection-%E2%80%93-frejjmvork-dlya-upravleniya-dannymi.html)

tenshi 31.10.2012 15:54

> Одна выборка всех пользователей.

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

и вообще ты тут изобрёл хмл-велосипед - на яваскрипте этот код выглядит куда лаконичней:

this.renderUsers= function( userlist ){
    var users= new Collection(userList)
    this.renderUserList( user.get(':el.age >= 18') )
    this.renderUserList( user.get(':el.age < 18') )
}

B~Vladi 31.10.2012 15:55

Цитата:

Сообщение от tenshi
она в любом случае будет

Где в моем примере копипаста?

Цитата:

Сообщение от tenshi
открой для себя хотябы двухпроходной xslt - это классно

Это отстой. А с чего ты взял, что я с этим не знаком? Судя по твоим словам, ты с другими подходами не сталкивался.

Ты, случайно, не из команды лего? Они как раз любят так делать.

tenshi 31.10.2012 16:00

> На сайте в учебнике

конкретной ссылки я так и не дождусь? скажи ещё "всё есть в интернете"

> например, начиная с конца массива, отбросив первые 10 успешных итераций и если итерация меньше 20-ти применить сортировку по фильтру и возвести в n степень

как это будет выглядеть с использованием сабжа?

> Проблема больших данных - это проблема архитектуры приложения, а не моей библиотеки

ок, так бы и написал, что для больших данных она не предназначена. вопросов больше нет.

B~Vladi 31.10.2012 16:05

Цитата:

Сообщение от tenshi
то же самое на js могло бы выглядеть проще

Где же проще? У тебя получается 2 цикла (внутри renderUserList) + forEach, а у меня всего 2 цикла. К тому же этот код ты будешь копипастить для каждого случая.

И если оно проще выглядит - это не значит, что проще разрабатывается и поддерживается.

Цитата:

Сообщение от tenshi
вместо группировки как у меня

Если Collection позволяет так группировать - будет "как у тебя".

Цитата:

Сообщение от tenshi
на яваскрипте этот код выглядит куда лаконичней

Т.е. ты собираешься описывать структуру страницы в программном коде, а не в шаблоне? Тебе не кажется, что это тупиковый путь?

kobezzza 31.10.2012 16:24

Цитата:

Сообщение от tenshi (Сообщение 213268)
конкретной ссылки я так и не дождусь? скажи ещё "всё есть в интернете"

http://www.collection-js.com/manual/part-3.html
http://www.collection-js.com/manual/part-5.html

Цитата:

Сообщение от tenshi (Сообщение 213268)
как это будет выглядеть с использованием сабжа?

http://www.collection-js.com/manual/part-2.html

Цитата:

Сообщение от tenshi (Сообщение 213268)
ок, так бы и написал, что для больших данных она не предназначена. вопросов больше нет.

Слив засчитан.

tenshi 31.10.2012 16:24

> Где в моем примере копипаста?

там где ты делаешь запросы и рендеришь шаблоны. за показа "всех пользователей сообщества такого-то" тебе и мне придётся этот блок копипастить и допиливать

> А с чего ты взял, что я с этим не знаком?

потому что говоришь, что
> Это отстой.

> Ты, случайно, не из команды лего? Они как раз любят так делать.

нет, но я рад, что они таки решились отделить мух от котлет. вот поговори с ними, почему они решили воспользоваться двумя проходами.

к слову, я сейчас не использую 2 прохода, ибо браузеры не поддерживают exslt, и очень от этого страдаю. приходится извращаться с mode(

kobezzza 31.10.2012 16:30

Цитата:

Сообщение от B~Vladi (Сообщение 213270)
Если Collection позволяет так группировать - будет "как у тебя".

Позволяет:)

tenshi 31.10.2012 16:30

> У тебя получается 2 цикла (внутри renderUserList) + forEach, а у меня всего 2 цикла.

выборка в Collection как мы выяснили происходит без ключей, а значит будет перебор всего массива в цикле

> И если оно проще выглядит - это не значит, что проще разрабатывается и поддерживается.

полноценный язык программирования всяко проще разрабатывается и поддерживается, чем сильно ограниченный xml велосипед.

> Т.е. ты собираешься описывать структуру страницы в программном коде, а не в шаблоне? Тебе не кажется, что это тупиковый путь?

а это не важно где, хоть в xml конфиге, хоть в json, главное - не мешать её с шаблонами.

tenshi 31.10.2012 16:31

> Если Collection позволяет так группировать - будет "как у тебя".

пример кода?

kobezzza 31.10.2012 16:33

Цитата:

Сообщение от tenshi (Сообщение 213277)
пример кода?

// Сгруппировать по отношению старше/младше
// и выбрать по ключу
group(':el.age > 18').get('true')


Цитата:

Сообщение от tenshi (Сообщение 213277)
выборка в Collection как мы выяснили происходит без ключей, а значит будет перебор всего массива в цикле

Мы выяснили, что ты не умеешь читать


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