Что именно означает «Длина тела типа» в Swiftlint?

Мы только что добавили Swiftlint в наш проект и хотим следовать всем правилам, но я не уверен, что подразумевается под предупреждением 'type_body_length'. Я не носитель английского языка, поэтому я нахожу это немного запутанным.

Также существует правило для длины файла, так чем же они отличаются? Что подпадает под это определение?

введите описание изображения здесь


person andromedainiative    schedule 21.12.2018    source источник
comment
Меня минусуют за то, что я не знаю английского языка? Это кажется довольно суровым. Тело типа, вероятно, я бы понял на своем родном языке, но Тип и Тело для меня очень общие. На самом деле тип может означать что угодно, я думаю, что тело должно означать основной блок кода. Но если это означает, например, только всю длину класса, как это отличается от длины файла? Являются ли расширения исключенными из этого правила?   -  person andromedainiative    schedule 21.12.2018
comment
Нарушение type_body_length означает, что в классе слишком много строк. Я не думаю, что это учитывает расширения   -  person Scriptable    schedule 21.12.2018
comment
Спасибо. Я искал четкий ответ и определение. Вы можете опубликовать этот комментарий в качестве ответа, и я приму его.   -  person andromedainiative    schedule 21.12.2018


Ответы (1)


Нарушение type_body_length означает, что в классе слишком много линии в нем. Я не думаю, что это учитывает расширения, комментарии или пробелы.

Имя типа должно содержать только буквенно-цифровые символы, начинаться с прописной буквы и иметь длину от 3 до 40 символов.

Документация по rule-directory.html" rel="noreferrer">правила, ссылка на которую приведена здесь и выше, также содержит примеры того, что можно и что нельзя быть принятым (запуск и не запуск). - Изменить, предложенную @GoodSp33d, спасибо

person Scriptable    schedule 21.12.2018
comment
@andromedainiative Вероятно, также неплохо обратиться к примерам Triggering & NonTriggering в документации. Если из текста не понятно (правда и для меня), помогут примеры. - person GoodSp33d; 21.12.2018
comment
Спасибо, я не буду публиковать их все здесь, но я добавлю примечание, чтобы ссылаться на них, так как документация будет обновляться со временем. - person Scriptable; 21.12.2018
comment
Я вообще не понимаю разницы в примерах. Вообще. - person Daniel Springer; 19.02.2020
comment
Тип — это перечисление, класс, структура, протокол и т. д. То, что вы определяете. Тело такого типа не может быть слишком длинным. - person Scriptable; 19.02.2020
comment
Немного странно, что, кажется, лучше иметь полную загрузку расширений, чем один класс, структурированный с прагматическими метками. - person brainray; 11.01.2021