Ale
мы ж технари
Ale
а не фанатики
Anonymous
На самом деле проще разбираться в лапше, чем в тысяче файлов. Даже структура с папками сильно не спасет. Для меня норма это 200-300 строчек в файле
Ohar
надо понимать откуда у этих правил ноги растут
Да оттуда же — чтобы было легко читать и удалять
Ale
легко это все относительно
Ale
coupling & cohesion
Ale
если у тебя функции на 5 строк тесно связаны друг с другом
Ale
и таких функци 100
Ale
то тебе не помогает их размер
Ale
или один модуль на 1000 строк, с единой точкой входа
Ale
зачем лол?
Anonymous
В общем, даже если бы мне попался какой-нибудь код обьемом 800 строчек, но который весь работает с каким-нибудь http, например, я бы оставил в одном файле. Я даже не знаю как его разделить так, чтобы понятно было что в каком искать
Ohar
Затем что у него есть логические куски, которые мало связаны между собой
Ohar
И каждый раз когда ты что-то в нём правишь, это трогает только один такой кусок
Ohar
А остальные тебе в этот момент не нужны и отвлекают
Anonymous
Затем что у него есть логические куски, которые мало связаны между собой
Если абстрагировать такие куски, то в проекте будет каша. Непонятно где что искать, очень тяжело читать и поддерживать
Ohar
Ну тоже верно
Ohar
Надо как всегда компромисс искать
Ohar
Мне мелкие модули на 1 задачу очень удобны
Ohar
Становится не нужным — удаляешь его и тест к нему
Ohar
И всё
Ohar
Весь рефакторинг
Oleg
Странные у вас проекты ребята если 60 строк в файле
Oleg
И 1 функция
Anonymous
Это не у нас, а у черепушки выше
Oleg
Может это особый такой подход
Oleg
Но в целом, по мне, адекватно когда до 300 строк, это с комментами
Oleg
400 уже выглядит тяжеловато, больше - плохо
Oleg
При этом 25% могут быть комменты
Oleg
Без комментов - 200-300
Oleg
Типизация
Oleg
Описание всех параметров
Oleg
Функций
Oleg
Класса
Oleg
За исключением ядра где комменты могут быть в половину ибо там примеры использования
Oleg
И прочее
Ohar
ничего себе вы там
Anonymous
CMMetadataFormatDescriptionCreateWithMetadataFormatDescriptionAndMetadataSpecifications();
Anonymous
Люблю это
Ohar
Java detected
Serhii
Какие то рельсы
Oleg
Такой нейминг говорит о том что нужно разрезать класс на несколько классав
Viktor
ахах, у меня аж слеза накатала
Anonymous
Plain C
Serhii
Ruby.createAppAndDeployItPSDontForgetToDoThis()
Oleg
И там сразу нейминг становится в 2-3 слова
Serhii
MultiHyperSerializatorr
Oleg
А может сам метод там нужно резать, выполняет больше одного дейтвия
Oleg
Но может и другое - там цепочка действий исполняется
Oleg
Тогда класс, да
Anonymous
А может сам метод там нужно резать, выполняет больше одного дейтвия
Обычно если посмотреть на имена методов популярных Obj-C библиотек, там вот подобные методы
Oleg
Тлен и боль
Oleg
Впрочем, есть ещё 1 кейс
Oleg
Самодокументирование
Oleg
Вместо комментов - делать длиннющие имена методов
Oleg
Которые явно указывают на то что происходит
Oleg
Есть люди что считают иначе
Oleg
Не то чтобы я поддерживаю это
Andrew
Есть люди что считают иначе
Самодокументировние - это способ уменьшить объем коммментов, с помощью правильно подобранных имен.
Ale
необязательно длиннющие, но не надо делать function f()
Andrew
Анти-паттерн
почему анти-паттерн?
Ale
почему анти-паттерн?
все - анти-паттерн, если используется неправильно :)
Ale
это и про 60 строк на функцию, и про самодокументирование, и про tdd будет правильно
Anonymous
ThisisaFunctionThatReturnsColor = function() { return this.color; }
Anonymous
🌚
Viktor
вот так и живем)))
Anonymous
)
Anonymous
Кто юзает #ternjs?
А ВОТ ТЕПЕРЬ ПАБЛИК
зачем в вебшторме ternjs?
Anonymous
Я ибу?
Anonymous
Я на атоме.
А ВОТ ТЕПЕРЬ ПАБЛИК
Я ибу?
нинад
А ВОТ ТЕПЕРЬ ПАБЛИК
Я на атоме.
ну он не нужен