Size: a a a

2018 December 04

Е

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

Е

Евгений in pro.elixir
аргументация в стиле "это похоже на goto, а значит плохо" порочна, потому что все конструкции ветвления (и не только они) похожи на goto
источник

ŹR

Źmićer Rubinštejn in pro.elixir
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Принцип 6. Все перечисленные конструкции должны иметь один вход и один выход.
источник

ŹR

Źmićer Rubinštejn in pro.elixir
break, return и throw нарушают этот принцип
источник

ŹR

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

ŹR

Źmićer Rubinštejn in pro.elixir
что-то делаем

if проверка return

что-то делаем


Ярчайший пример
источник

Е

Евгений in pro.elixir
То есть ты применил супер силу: это плохо, патамушта так написано в википедии? :)
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Это плохо, потому что нарушает принцип структурного программирования
источник

(

( in pro.elixir
Евгений
То есть ты применил супер силу: это плохо, патамушта так написано в википедии? :)
Ваша была сильнее: "это плохо, потому что я так считаю"
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если для тебя это не аргумент - это твое мнение
источник

Е

Евгений in pro.elixir
(
Ваша была сильнее: "это плохо, потому что я так считаю"
не так, а аргументирую это тем, что вы на самом деле делаете также. :) просто не желаете этого признавать
источник

ŹR

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

DS

Dmitry Shpagin in pro.elixir
Можем голосование провести, я сторонник подхода, которое выбирает сообщество, полагаю, что raise будет в меньшенстве
источник

(

( in pro.elixir
Евгений
не так, а аргументирую это тем, что вы на самом деле делаете также. :) просто не желаете этого признавать
Неправда. Я привел нормальные аргументы, почему туплы отличаются от ранних ретурнов и исключений, после чего вы ответили
источник

(

( in pro.elixir
Евгений
возврат туплы с ошибкой - это всегда ранний return либо костыльный заменитель в виде монад или байпасса этой туплы через последующие функции.
Вот это
источник

PS

Petr Stepchenko in pro.elixir
обожаю эксепшен флоу, в логах сервера тишина, а у пользователей в апи выдаются строки лога
источник

Е

Евгений in pro.elixir
Źmićer Rubinštejn
Скажи "мне насрать на принципы структурного программирования" на следующем своем собеседовании, и мы все узнаем)
я такого не говорил, я не приемлю категорического "так никогда низзя"
источник

ŹR

Źmićer Rubinštejn in pro.elixir
В Эликсире тоже есть return. Но так как он автоматический, и стоит в конце блока, он не может нарушить этот принцип.
источник

AB

Alexey Bolshakov in pro.elixir
делайте голосование. я проголосую за третий вариант. потому что есть случаи, когда мне проще сделать raise вначале, чтоб дальше всё не обходить. можете сказать, что я не умею правильно проектировать. но я проголосую за третий вариант: "по ситуации. но, в целом, за структурное программирование"
источник