Size: a a a

Programming Offtop

2021 January 25

VP

Vladimir Petrakovich in Programming Offtop
Алексей
linq никогда-никогда не используется?
На практике, насколько мне известно, обычно нет
источник

А

Алексей in Programming Offtop
хм
источник

ch

central hardware in Programming Offtop
Vladimir Petrakovich
Ну вот в C#, где есть "человекочитаемый" LINQ и цепочки операций, как в джаве (точнее, наоборот), почему-то все предпочитают второй вариант
у linq по моему огромная жопа с производительностью
источник

VP

Vladimir Petrakovich in Programming Offtop
central hardware
у linq по моему огромная жопа с производительностью
Так это же просто сахар вроде
источник

VP

Vladimir Petrakovich in Programming Offtop
Vladimir Petrakovich
Так это же просто сахар вроде
Да, в доке это явно отмечено
источник

AN

Alexander Nozik in Programming Offtop
Yaroslav Nikitenko
Filter после list?
не важно в каком порядке. Это комбинирование операций - pipeline, где все операции равноправны.
источник

I

Igor in Programming Offtop
central hardware
у linq по моему огромная жопа с производительностью
В плане? Вы костит про linq синтаксис или расширения для коллекций?
источник

AM

Andrew Mikhaylov in Programming Offtop
Konstantin Dovnar
Это отлично.
myList = filter(lambda x: x % 2 == 0, myList)
myList = map(lambda x: x + 1, myList)
myList = list(myList)

(опционально хоть третий шаг со вторым склеить, хоть все три в один)
источник

ch

central hardware in Programming Offtop
Igor
В плане? Вы костит про linq синтаксис или расширения для коллекций?
¯\_(ツ)_/¯
источник

YN

Yaroslav Nikitenko in Programming Offtop
Alexander Nozik
не важно в каком порядке. Это комбинирование операций - pipeline, где все операции равноправны.
Ну нет, если мы сначала отфильтруем чётные или в конце, то у нас будут либо нечетные, либо чётные.
источник

А

Алексей in Programming Offtop
Andrew Mikhaylov
myList = filter(lambda x: x % 2 == 0, myList)
myList = map(lambda x: x + 1, myList)
myList = list(myList)

(опционально хоть третий шаг со вторым склеить, хоть все три в один)
немного вербозно конечно
источник

KD

Konstantin Dovnar in Programming Offtop
Andrew Mikhaylov
myList = filter(lambda x: x % 2 == 0, myList)
myList = map(lambda x: x + 1, myList)
myList = list(myList)

(опционально хоть третий шаг со вторым склеить, хоть все три в один)
А третий шаг зачем?
источник

А

Алексей in Programming Offtop
Konstantin Dovnar
А третий шаг зачем?
затем что операции ленивые
источник

KD

Konstantin Dovnar in Programming Offtop
Понял.
источник

AN

Alexander Nozik in Programming Offtop
Yaroslav Nikitenko
Ну как в SQL. Val +1... where...
SQL - так себе пример. Его писали в те времена, когда про проблемы парсера думали больше, чем про проблемы пользователя.
источник

А

Алексей in Programming Offtop
ленивость как раз в этом случае круче, в том плане что эффективнее получается
источник

KD

Konstantin Dovnar in Programming Offtop
Andrew Mikhaylov
myList = filter(lambda x: x % 2 == 0, myList)
myList = map(lambda x: x + 1, myList)
myList = list(myList)

(опционально хоть третий шаг со вторым склеить, хоть все три в один)
Это ещё куда ни шло. Конечно, если действий в операции будет больше, то это снова станет слабо-читаемым, но так хотя бы можно сразу понять где и что происходит.
источник

AM

Andrew Mikhaylov in Programming Offtop
Там генератор возвращается, в духе котлиновского сиквенса по сути.
источник

А

Алексей in Programming Offtop
Konstantin Dovnar
Это ещё куда ни шло. Конечно, если действий в операции будет больше, то это снова станет слабо-читаемым, но так хотя бы можно сразу понять где и что происходит.
не станет
источник

А

Алексей in Programming Offtop
будет тоже самое, только больше строчек
источник