Ну выходит что все свелось опять к определению баланса, когда следует выделить кусок в метод, а когда - еще нет. Без необходимости переиспользования, т.к. в том случае все очевидно.
Подскажите, плз, как плагин для vsc называется, который с автокомплитом для джеркина? Пульский был, но винду переустановил, а сейчас на найду его в расширениях
У функции должен быть один уровень глубины и ответственности
Соглашусь, есть принцип GRASP, один из шаблонов этого принципа high cohesion утверждает именно это (да в парадигме ООП, но это сути не меняет). Так же SOLID нам о этом же говорит
Соглашусь, есть принцип GRASP, один из шаблонов этого принципа high cohesion утверждает именно это (да в парадигме ООП, но это сути не меняет). Так же SOLID нам о этом же говорит
Как это согласуется с функцией, внутри одной которой извлекаем квадратный корень и результат пишем в файл? Две строчки внутри нее должны быть заменены на две "более атомарных" функции или нет?
Подскажите, плз, как плагин для vsc называется, который с автокомплитом для джеркина? Пульский был, но винду переустановил, а сейчас на найду его в расширениях
Он же больше не нужен, теперь автокомплит прямо в ВА
Как это согласуется с функцией, внутри одной которой извлекаем квадратный корень и результат пишем в файл? Две строчки внутри нее должны быть заменены на две "более атомарных" функции или нет?
Я не рассматриваю какой-то конкретный случай, я говорю лишь, что подход верный
Как это согласуется с функцией, внутри одной которой извлекаем квадратный корень и результат пишем в файл? Две строчки внутри нее должны быть заменены на две "более атомарных" функции или нет?
Ну строчек там буде не две. Так что да, должны быть заменены
Ну строчек там буде не две. Так что да, должны быть заменены
Число строк вмещающееся в экран - это измеримый и понятный критерий. Как его применить вопросов не возникает - много текста разбиваем и вкладываем. А выше речь про какие-то "уровни глубины" и "уровни ответственности" - как этим пользоваться я так пока и не проникся.
Число строк вмещающееся в экран - это измеримый и понятный критерий. Как его применить вопросов не возникает - много текста разбиваем и вкладываем. А выше речь про какие-то "уровни глубины" и "уровни ответственности" - как этим пользоваться я так пока и не проникся.
Это, наверное на о сильных примерах надо смотреть (
Если "обязанность" функции вычислить квадратный корень, пусть вычисляет. Вопрос как она распорядиться с результатом, вернётся или запишет ф файл и вернёт имя файла мне кажется не столь принципиально. Конечно логично спросить а почему функция не может вернуть результат вызывающей стороне, а та пусть уже пишет в файл? Можно ж сделать типа обёртки над функцией
Число строк вмещающееся в экран - это измеримый и понятный критерий. Как его применить вопросов не возникает - много текста разбиваем и вкладываем. А выше речь про какие-то "уровни глубины" и "уровни ответственности" - как этим пользоваться я так пока и не проникся.
>это измеримый и понятный критерий Это крайне субъективный критерий
Если "обязанность" функции вычислить квадратный корень, пусть вычисляет. Вопрос как она распорядиться с результатом, вернётся или запишет ф файл и вернёт имя файла мне кажется не столь принципиально. Конечно логично спросить а почему функция не может вернуть результат вызывающей стороне, а та пусть уже пишет в файл? Можно ж сделать типа обёртки над функцией
Ну так вызывающая сторона - это и есть исходная рассматриваемая функция. Которая посчитает корень и запишет это в файл.