Size: a a a

2020 June 12

F

Fenrir in pro.elixir
На практике особой пользы от этого скорее всего нет.
источник

NM

Natalia Maximenko in pro.elixir
def fall_velocity(%Tower{height: h, planemo: p}) do
IO.puts(h)
IO.puts(p)
end
источник

LL

Lama Lover in pro.elixir
Вообще матчинг в аргументах работает быстрее чем поле через точку
источник

F

Fenrir in pro.elixir
учту
источник

AD

Anastasiya Dyachenko in pro.elixir
Źmićer Rubinštejn
Назови хоть одну причину по которой t.height лучше чем просто height
Слишком длинная строка когда много аргументов матчится)
источник

LL

Lama Lover in pro.elixir
Anastasiya Dyachenko
Слишком длинная строка когда много аргументов матчится)
Можно переносить на следующие строчки
Типа
%Module{
 key1: value1,
 key2: value2
}
источник

IK

Ihor Katkov in pro.elixir
Я за то, что бы в аргументах матчить только тип
источник

IK

Ihor Katkov in pro.elixir
в обратном случае, этим можно злоупотреблять
источник

IK

Ihor Katkov in pro.elixir
def foo(%Foo{
 bar: bar,
 bar: bar,
 bar: bar,
 bar: bar
})
источник

IK

Ihor Katkov in pro.elixir
и такая конструкция может быть довольно большая. Это мешает чтению и пониманию что делает функция
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ihor Katkov
def foo(%Foo{
 bar: bar,
 bar: bar,
 bar: bar,
 bar: bar
})
Вот, это то что надо
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Всегда так делаю
источник

IK

Ihor Katkov in pro.elixir
особенно, когда есть зависимость от какого-то филда
источник

IK

Ihor Katkov in pro.elixir
Źmićer Rubinštejn
Всегда так делаю
я тоже так когда-то делал, но потом понял, что это мешает пониманию и чтению 😛
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Вот пример:

https://github.com/BucklerBot/buckler/blob/master/apps/buckler_bot/lib/buckler_bot/handlers/private.ex#L16

Как не странно, я все еще понимаю что делает эта функция
источник

PG

Pig Greenest in pro.elixir
Отчасти проблема в количестве полей
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Короче это может быть выглядит и ущербно, но на понимание точно не влияет
источник

IK

Ihor Katkov in pro.elixir
вот тут трейдофф. В аргументе ты ожидаешь именно такой request payload. Все остальное - ошибка
источник

IK

Ihor Katkov in pro.elixir
другими словами, тут ок
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Вопрос в том, сколько на выходе переменных. Если их не много, то как бы глубоко они не были зарыты - все равно понятно что происходит в функции
источник