Size: a a a

Советский Angular

2020 January 10

ЕУ

Евгений Удалов... in Советский Angular
ну все равно, геморненько. и опять же не на пару часов
источник

ЕУ

Евгений Удалов... in Советский Angular
Денис Макаров
я уже не помню когда юзал forEach
обычно большая часть задач сводится к тому, что нужна иммутабельность
я даже for юзал 😂
источник

ДМ

Денис Макаров... in Советский Angular
Евгений Удалов
я даже for юзал 😂
я чет подумал, что ты про метод forEach)
for то я постоянно юзаю, особенно for of)
источник

ЕУ

Евгений Удалов... in Советский Angular
Денис Макаров
я чет подумал, что ты про метод forEach)
for то я постоянно юзаю, особенно for of)
ну метод, да
источник

DT

Dmitry Teplov in Советский Angular
Денис Макаров
я уже не помню когда юзал forEach
обычно большая часть задач сводится к тому, что нужна иммутабельность
потому что часто делают такое:
array
 .map(toUserModel)
 .filter(isActive)
 .map(addPropOne)
 .map(addPropTwo);
источник

DT

Dmitry Teplov in Советский Angular
и в итоге итерируются 4 раза вместо 1
источник

ДМ

Денис Макаров... in Советский Angular
Dmitry Teplov
потому что часто делают такое:
array
 .map(toUserModel)
 .filter(isActive)
 .map(addPropOne)
 .map(addPropTwo);
ну если массивы мелкие, то не страшно)
источник

DT

Dmitry Teplov in Советский Angular
ну страшно не страшно
привыкаешь писать и потом уже не думаешь, что это может стать проблемой
декларативность в ущерб перфомансу на маленьких массивах это мб ок, конечно
но у меня пригорает)
источник

ДМ

Денис Макаров... in Советский Angular
Dmitry Teplov
ну страшно не страшно
привыкаешь писать и потом уже не думаешь, что это может стать проблемой
декларативность в ущерб перфомансу на маленьких массивах это мб ок, конечно
но у меня пригорает)
мне не хватает образцов как в хаскеле) это вообще классная тема)
источник

ДМ

Денис Макаров... in Советский Angular
Dmitry Teplov
потому что часто делают такое:
array
 .map(toUserModel)
 .filter(isActive)
 .map(addPropOne)
 .map(addPropTwo);
а так согласен, хоть и декларативно, но я бы на for заменил
источник

L

Let me take you into... in Советский Angular
Денис Макаров
а так согласен, хоть и декларативно, но я бы на for заменил
Это не меняет проблемы)
источник

L

Let me take you into... in Советский Angular
А лиш подменяет
источник

ДМ

Денис Макаров... in Советский Angular
Let me take you into the light
Это не меняет проблемы)
а какая у нас проблема?
источник

DT

Dmitry Teplov in Советский Angular
Да, выглядит менее понятно, императивщина
Но можно хэлперов добавить, будет меньше логики

const admins = [];

array.forEach(item => {
 const user = toUser(item);

 if (!isActive(user)) {
   return;
 }

 let admin = new Admin(user);

 admin = addPropOne(admin);
 admin = addPropTwo(admin);

 admins.push(admin);
})
источник

L

Let me take you into... in Советский Angular
Денис Макаров
а какая у нас проблема?
4 цыкла
источник

L

Let me take you into... in Советский Angular
Dmitry Teplov
Да, выглядит менее понятно, императивщина
Но можно хэлперов добавить, будет меньше логики

const admins = [];

array.forEach(item => {
 const user = toUser(item);

 if (!isActive(user)) {
   return;
 }

 let admin = new Admin(user);

 admin = addPropOne(admin);
 admin = addPropTwo(admin);

 admins.push(admin);
})
Ну это не декларативно
источник

L

Let me take you into... in Советский Angular
Но
источник

L

Let me take you into... in Советский Angular
Зато
источник

L

Let me take you into... in Советский Angular
за 1 проход)
источник

L

Let me take you into... in Советский Angular
Но в этом коде тоже есть проблемы иногда
источник