gsomix
и шо б я делал без этого чатика?
Shub
та это ты просто гиперсенситивный
gsomix
До лисповых реплов не дотягивает, конечно.
gsomix
Да, репл тащит, быстрая разработка, т.к. сразу видишь результат
gsomix
https://tonsky.livejournal.com/316868.html
Ayrat
И вообще, динамика это нестрашно
Ayrat
Но JS исключение
gsomix
Ayrat
gsomix
gsomix
Если на динамику повесить хорошие штуки вроде строгой типизации и иммутабельности, то становится неплохо.
Roman
Roman
изменится, например, сигнатура функции, а узнаешь об этом в рантайме только. Или я че-то не понимаю?
gsomix
Roman
тесты это тоже рантайм, да и их писать и поддерживать надо
gsomix
gsomix
Вне зависимости от типизации.
gsomix
Вопрос в количестве. :)
Roman
ну блян, со статичиской типизацией их меньше ощутимо
Roman
в фш надо ощутимо меньше тестов писать при правильном дизайне типов, чем в том же сишарпе, хоть у обоих есть строгая типизация
gsomix
Roman
куда и почему?
Vladislav
Даже с аннотациями
gsomix
Ну, мы не про сравнение C# сейчас, а то я опять сгорю.
Roman
да божимой не срача ради ну
Ayrat
Я когда-то думал что всякие там C# и Java это прям СТРОГАЯ типизация.
Сейчас я смотрю на все эти неявные боксинги, имплисит касты через сабтипы и не понимаю где там строгость на самом деле. Очень много дичи позволяется
gsomix
В динамике еще можно так делать: описываешь контракты и тестируешь в интеграции на генерируемых данных.
Roman
мой опыт подсказывает, что на тесты очень часто кладется хер
gsomix
Ayrat
Roman
оно и понятно — когда тебе человекочасов не хватает, чем ты жертвуешь в первую очередь? Функционалом, качеством архитектуры или тестами?
Roman
gsomix
Roman
ладно, мы воду в ступе гоняем
Roman
ясен хуй что все всегда зависит
gsomix
Ну, вот тут не пишешь.
gsomix
В динамике еще можно так делать. Описываешь контракты и тестируешь в интеграции на генерируемых данных.
Ayrat
моё мнение, лучше доехать до прода и чинить, чем не доехать и выхолащивать.
Идеально конечно иметь роадмап проекта, где и на тесты времени остаётся, но как показывает практика, юнит тесты переоценены.
А вот интеграционные НЕДООЦЕНЕНЫ. На интеграционные смотрят как на говно, а по-моему они гораздо важнее этих ваших бесполезных юнит тестов, которые реально строгой типизацией решаются
gsomix
Ayrat
короче, я за хуяк-хуяк в продакшн, но с интеграционными тестами.
gsomix
gsomix
Динамика тут хорошо работает.
Ayrat
gsomix
При том, что рантайм контракты богаче по возможностям, чем распространенные системы типов.
Ayrat
Особливо радуют надрачивающие на dotCover, coverity и прочие процентажи покрытия кода тестами. Более бесполезной характеристики не придумать
Ayrat
цифра ради цифры
Ayrat
KPI, премии вот это вот всё
Roman
На одном проекте много че у нас делалось через ажур функции. Само собой кругом сплошное ООП с абьюзом DI и в хвост и в гриву, такая карусель из наследования и дженериков, что навигация по коду иногда просто не работала никак.
Поскольку функции дебажить заебно — им инпут подавай и все такое, каждый запуск дебаг сессии отнимает минут 5, я написал тесты на DI контейнер, которые проверяют, что все, что там зарегано, контейнер может разрезолвить, пушто дико бесила ситуация, когда по 5 раз запускаешь, только чтобы узнать, что забыл зарегать очередной кусок говна.
Так этот тест не прошел ревью, потому что он не юнит, ведь никакой юнит он не тестирует. Никогда у меня так долго жопа не горела
Roman
gsomix
Ayrat
Ayrat
т.е. я вот ковыряю бекенд для продукта который из себя рекламу по сути представляет. Не сайтик, но по уровню ответственности примерно там же
Roman
было бы забавно, если б в какой-нить америке была подписка на EAP мед оборудование с бесплатным лечением) Типа страховка не нужна, платить тоже, но риски берешь на себя)
Vladislav
Ayrat
где не было гальв развязки
Ayrat
нам чот в универе с 1го курса об этом рассказывали. Походу никто в универах не учился из тех кто эту еботу проектировал
Ayrat
Pavel
ну тут хз. по хорошему в компе тоже развязка должна быть
Ayrat
но её там нет. В чайнике например тоже нет
Ayrat
во, нашёл. Называют конечно от души, хер найдёшь
https://habr.com/post/427195/
gsomix
Всегда радуюсь, что он моей работы не зависят жизни людей.
Vladislav
Vladislav
I HOPE I HOPE I HOPE
Vladislav
Думаю тогда было легко присесть на очко из-за отсутствия инструментов
Vasily
Ayrat
Вот это реально страшно
я в начале не поверил, это как выпускать в наше время лифт без ловушек между этажами. Типа камон, эти ловушки механические нихуя не стоят, кучу жизней спасли, вы серьёзно ебанулись и не сделали их?
Ayrat
типа в каждом доме стоят, в каждом стандарте описаны, какого хера?
Ayrat
Т.е. ни у кого мысли не возникло что что-то не так
Ayrat
Это правда страшно
Ayrat
Хотя это очевидно для человека который посещал пары в универе
Vasily
Возможно, те, кто проектировал, никогда не соединяли два компа через rs 232 без развязки