Size: a a a

2020 October 08

VS

Vlad Sobenko in symfony
Sergey Zolotov
pagespeed insight или lighthouse пройдитесь по сайту и посмотрите рекомендации

чтобы была компрессия, кеширование пожизненное, оптимизация бандлов, хттп2 и все такое

тогда юзер пытаясь зайти на сайт попадает на ближайшую точку cloudfront дистрибуции (условно в минске, а не в сан франциско), определяет что у него контент уже есть в кеше и стартует приложение за десяток мс

плюс еще визуальная составляющая. с spa ты можешь загрузить весь каркас и только потом догружаешь данные. с твигом ты ждешь сразу все, а это может занимать больше времени
Скорее не подходит. У нас монстр с кучей гидраций в различных частях, на большей части приложения вообще без реакта. Хотелось бы пока сср, как простое решение.
источник

D

Dmitry in symfony
Sergey Zolotov
если сделан "не разумно" то в любом случае это нужно менять) иначе это черная дыра в проекте и рефакторить что-либо зная что IDE и прочие инструменты не смогут найти использования методов/пропертей и удаляя/переименовывая можно похерить чего-либо

это сильно связывает руки
тесты сильно помогают, мне вот начальство выкатило вчера под вечер - логин систему хотим переделать, полностью, и валидацию схему тоже меняем

ой как тесты выручают :))
источник

VS

Vlad Sobenko in symfony
Dmitry
тесты сильно помогают, мне вот начальство выкатило вчера под вечер - логин систему хотим переделать, полностью, и валидацию схему тоже меняем

ой как тесты выручают :))
Хорошие да, плохие только делают хуже)
источник

D

Dmitry in symfony
Vlad Sobenko
Хорошие да, плохие только делают хуже)
любые помогают, в данном случае. они хотя бы показывают что сломалось
источник

VS

Vlad Sobenko in symfony
Dmitry
любые помогают, в данном случае. они хотя бы показывают что сломалось
Не, плохие ничего не показывают. А просто ломаются десятками на каждый чих. Берёшь и выбрасываешь.
источник

SZ

Sergey Zolotov in symfony
Vlad Sobenko
Скорее не подходит. У нас монстр с кучей гидраций в различных частях, на большей части приложения вообще без реакта. Хотелось бы пока сср, как простое решение.
конкретно в нашем кейсе мы сильно выиграли, хотя на это потратили прилично усилий

ssr рассматривали только для совместимости с ботами типа гугла
источник

D

Dmitry in symfony
Vlad Sobenko
Не, плохие ничего не показывают. А просто ломаются десятками на каждый чих. Берёшь и выбрасываешь.
годится, пускай ломаются, это помогает видеть где какая часть системы зацеплена твоим изменением, отрефакторить тесты по результатам изменений не составляет труда ведь
источник

SZ

Sergey Zolotov in symfony
у нас сейчас на все request/response структуры есть своя типизированная DTO с паблик пропертями
все это дело описано в openapi v3
по openapi схеме генерируем(самописная тулза) typescript интерфейсы и типы, которые фронты юзают

когда меняем что-то на бекенде, вместе с этим меняется и схема, и каскадом компилируется фронт. если поломалась совместимость (удалили лишнего то что использовалось например), то проект не скомпилируется

фронты полностью от нас отделились. это очень упростило работу на проекте и скорость выкатки фичей

а весь сложный бекенд фактически упростился до тупых крудов)

в планах есть инвестигейт добавить прослойку между фронтом и бекендом
источник

VS

Vlad Sobenko in symfony
Dmitry
годится, пускай ломаются, это помогает видеть где какая часть системы зацеплена твоим изменением, отрефакторить тесты по результатам изменений не составляет труда ведь
Составляет. У хорошего теста - одна причина для поломки.
источник

D

Dmitry in symfony
Vlad Sobenko
Составляет. У хорошего теста - одна причина для поломки.
я за вас рад, у меня складывается впечателение что вы никогда не работали с легаси кодом. :)
источник

VS

Vlad Sobenko in symfony
Dmitry
я за вас рад, у меня складывается впечателение что вы никогда не работали с легаси кодом. :)
Как раз сейчас и работаю)
источник

D

Dmitry in symfony
ну вот когда вам попадется проект 8 лет от рождения, без тестов, размером на пару сотен к строк, я посмотрю кому вы начнете молиться :)
источник

SZ

Sergey Zolotov in symfony
Dmitry
ну вот когда вам попадется проект 8 лет от рождения, без тестов, размером на пару сотен к строк, я посмотрю кому вы начнете молиться :)
люблю такие проекты)
источник

SZ

Sergey Zolotov in symfony
с нуля с проектом работать скучно
источник

D

Dmitry in symfony
так что я утвердаю - любые тесты хороши которые могут показать что где-то что-то пошло не так как ожидалось
источник

D

Dmitry in symfony
Sergey Zolotov
люблю такие проекты)
но я держусь, я все еще не уверовал :)
источник

AL

Alexandr Loginov in symfony
Sanan
@sasaloginov симфони требует чтобы в сущностях был параметр идетификатор
сделал ID все равно та же ошибка
источник

D

Dmitry in symfony
Sergey Zolotov
у нас сейчас на все request/response структуры есть своя типизированная DTO с паблик пропертями
все это дело описано в openapi v3
по openapi схеме генерируем(самописная тулза) typescript интерфейсы и типы, которые фронты юзают

когда меняем что-то на бекенде, вместе с этим меняется и схема, и каскадом компилируется фронт. если поломалась совместимость (удалили лишнего то что использовалось например), то проект не скомпилируется

фронты полностью от нас отделились. это очень упростило работу на проекте и скорость выкатки фичей

а весь сложный бекенд фактически упростился до тупых крудов)

в планах есть инвестигейт добавить прослойку между фронтом и бекендом
а вот кстати, есть что на примете для конвертации аннотаций сваггера 2.0 в опенапи 3.0 файлик ?
я видел в гугле, но может уже юзали что
источник

VS

Vlad Sobenko in symfony
Dmitry
так что я утвердаю - любые тесты хороши которые могут показать что где-то что-то пошло не так как ожидалось
Есть такие тесты, которые будут ломаться, хотя код рабочий.
источник

D

Dmitry in symfony
Vlad Sobenko
Есть такие тесты, которые будут ломаться, хотя код рабочий.
да хрен с ними, пускай ломаются. я их пересмотрю, перепишу чтобы не ломались
источник