Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #111 (permalink)  
Старый 23.09.2014, 10:20
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от melky Посмотреть сообщение
kobezzza, как можно быстро понять $C? какая кривая обучения?
Ну с моей точки зрения, что самое сложное в понимании $C - это не $C, а сама концепция функционального программирования. По моим личным наблюдениям многие люди из всех методов массивов юзают всего 2:

forEach
some - причём some юзают, как forEach который можно сбросить

А всякие map / reduce / filter в глаза не видели и не знают.

Потом нужно понять, что $C - это антоним Unix Way, т.е.

// Классический Unix Way, супер избыточно и не эффективно
filter().filter().map().slice()

// $C, ни одной лишней операции, супер эффективно и быстро
map(filter(), filter(), slice())


А остальное - это дело техники. Ну просто нужно потратить некоторое время и поиграться: может день/два и всё, всё таки библиотека не большая и есть подробная русская документация.

С другой стороны можно взять сборку Collection.core, где в составе 1 forEach, а сама либа весит всего 10кб и юзать В отличии от нативного forEach Collection поддерживает все существующие виды коллекций, работает супер быстро и поддерживают кучу опций.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 23.09.2014 в 10:51.
Ответить с цитированием
  #112 (permalink)  
Старый 23.09.2014, 19:05
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
мб есть какие-то функции, которые используются при написании кода чаще всего?
Ну у меня самое частое это forEach, map, reduce, search, get, length, extend.

Вообще полную сборку библиотеки по функционалу можно разбить на блоки:

1) Итерационное API - набор методов, большинство из которых напоминают нативные для массивов, для итерациям по коллекциями, самая главная часть

2) Контекстное API - набор методов для работы внутри итератора

$C([ ... ]).forEach(function () {
    this.break();
});


3) Ссылочное API - небольшой набор методов для универсального доступа к свойствам объектов

var obj = {a: new Map([[1, [1, 2, 3, 4]]])};

$C(obj).get(['a', 1, 0]);


4) Кластерное API - набор методов, для инкапсуляции разные параметров внутри экземпляров $C

$C().addFilter({
    filter1: function () { ... },
    filter2: function () { ... }
})

$C([ ... ]).get('filter1 && filter2')


5) API для хранения данных - набор методов для загрузки / выгрузки коллекций в различные локальны хранилища

$C({ ... }).save({
    namespace: 'myData',
    lib: 'indexedDB'
})

...


$C().load({
    namespace: 'myData',
    lib: 'indexedDB'
})


6) Статичные методы - полезные функции, вроде extend

Цитата:
я б мог заняться этим на досуге - заодно и выучу её
Ну, если сделаешь, то честь и хвала Хотя мне кажется, что для тебя выучить $C будет вопросом дня

Цитата:
есть ли какой-нибудь сайт для $C (gh-pages), чтобы начать?
Когда то был, но я его потёр, когда перешёл на Gh, сейчас всё в вики.

Цитата:
PS. кстати, $C выглядит очень даже многообещающе, серьёзно говоря. и отлично подходит, например, для React
Спасибо Но мне кажется, что $C это в первую очередь очередь универсальных хэлпер для коллекций, т.е. замена underscore / lodash и т.д. Т.е. библиотека на каждый день: ну я собственно её так и юзаю
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 23.09.2014 в 19:21.
Ответить с цитированием
  #113 (permalink)  
Старый 24.09.2014, 10:05
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

В канарейке хрома новые виды коллекций и генераторы уже работают без включённого флага --harmony. Ура!
__________________
kobezzza
code monkey
Ответить с цитированием
  #114 (permalink)  
Старый 05.10.2014, 14:50
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Выпустил патч 5.2.9
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 05.10.2014 в 16:30.
Ответить с цитированием
  #115 (permalink)  
Старый 05.10.2014, 17:12
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

kobezzza, ты в travis ci тестируешь? видел коммит в поддписке)
Ответить с цитированием
  #116 (permalink)  
Старый 05.10.2014, 17:20
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от melky Посмотреть сообщение
kobezzza, ты в travis ci тестируешь? видел коммит в поддписке)
Угу, хотя для Collection пока просто биндинг добавил

travis удобен тем, что можно забить сразу несколько версий ноды для теста + автоматическая синхронизация с комитами гита.
__________________
kobezzza
code monkey
Ответить с цитированием
  #117 (permalink)  
Старый 22.10.2014, 15:40
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Выпустил патч 5.2.10
__________________
kobezzza
code monkey
Ответить с цитированием
  #118 (permalink)  
Старый 31.10.2014, 13:31
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Выпустил патч 5.2.12
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 31.10.2014 в 16:00.
Ответить с цитированием
  #119 (permalink)  
Старый 01.11.2014, 22:01
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Выпустил версию 5.3.1.

Добавлен новый метод .contains
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 02.11.2014 в 00:10.
Ответить с цитированием
  #120 (permalink)  
Старый 05.11.2014, 23:42
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Выпустил патч 5.3.7
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 08.11.2014 в 22:19.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закрытие и открытие дива по клику OLDBOY Общие вопросы Javascript 30 28.09.2016 19:41
Collection v4 kobezzza Ваши сайты и скрипты 50 13.02.2014 20:10
как обновлять collection каждые 5 секунд sergey_magic Backbone.js 1 29.07.2013 14:31
Collection – фреймворк для управления данными kobezzza Ваши сайты и скрипты 155 10.05.2013 08:59
Удаление всех options в select Ceргей Элементы интерфейса 9 28.11.2012 08:36