Тёмный

Форматирование кода при командной работе. Чистый код 4 -  

through the Eyes of a freelancer
Подписаться 2,7 тыс.
Просмотров 835
50% 1

Продолжаем разбирать книгу Роберта Мартина "Чистый код". Сегодня поговорим о форматировании кода (5-ая глава книги).
Но о чём здесь разговаривать в наш век IDE? Какие трудности могут быть связаны с форматированием? С самим форматированием - никаких. Более того, современные IDE предоставляют нам такой комфорт в этом деле, что грех жаловаться.
Проблемы начинаются, когда над кодом работает команда, разные участники которой могут использовать разные настройки IDE. Как и разные IDE, впрочем.
Вот и давайте разбираться, как избежать затруднений в этом деле.
Получать анонсы новых видео можно на нашем телеграм-канале "Глазами фрилансера": t.me/freelance...
#ГлазамиФрилансера

Опубликовано:

 

12 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 8   
@romanchubich2013
@romanchubich2013 Год назад
Спасибо за урок! Наибольшие сложности в форматировании у меня вызывают sql запросы. Что бы я ни делал с настройками IDE, их отображение всегда приходится править руками. А в контексте командной работы было бы очень интересно узнать про работу с githab. Вы как-то упоминали про разруливание конфликтов при помощи phpstorm. Как-то раз меня эти конфликты напугали настолько, что с тех пор я пушу только в мастер.
@freelancer_eyes
@freelancer_eyes Год назад
Да, если мы вставляем чистый, нативный SQL в PHP-код, то насколько я помню, IDE o n JetBrains не слишком хорошо справляются. Другое дело, что я практически никогда... Да что там, никогда этого не делаю, если работаю на фреймворке, использующем ORM или Active Records. Всегда использую QueryBuilder (строитель запросов) или подобные инструменты, доступные во фреймворке. Что касается разруливания конфликтов. Вы видели ролик "Прощай, GitFlow"? Я там показываю на примерах, как конфликты разруливаются с помощью IDE. Ролик длинный, но вы смело включайте скорость 1.5 или выше и посмотрите, как IDE помогает. Потому что пуш в мастер - это в принципе нормально (увидите в ролике), но подавляющее большинство команд к такой работе не готово, поэтому конфликты будут. И чтобы их не бояться (а они действительно страшные по началу), лучше научиться с ними бороться.
@romanchubich2013
@romanchubich2013 Год назад
@@freelancer_eyes единственный толковый опыт с ORM у меня был только с laravel eloquent. Это безусловно даёт ряд преимуществ как в отношении синхронизации версий между php и бд благодаря миграциям, так и потенциальном использовании написанных запросов в другой СУБД. Но это, как я понял, целесообразно в проектах, где бд используется как хранилище состояния моделей. В моём случае получается иначе. Я очень активно использую бд для вычислений. Запросы часто имеют кучу джоинов и подселектов. И часто выполнить такой запрос средствами ORM крайне проблематично и приходится ограничиваться PDO. Это особенно ощутимо, когда в бд используются тригеры, это вызывает определенные сложности и в тестировании, когда при изменении состояния объекта изменяется и состояние бд. Но отказаться от вычислительных способностей бд крайне сложно: часто то, что можно вычислить одним сложным запросом в бд, в ORM приведёт к сотням (если не тысячам) запросов, и описание логики вычислений в php потребует огромного количества кода.
@alexanderbashkatov5981
@alexanderbashkatov5981 3 месяца назад
Хороший ролик. Актуальные проблемы
@viper_vlad
@viper_vlad Год назад
Александр, отличный ролик, спасибо! А вообще да, Laravel Pint + Git hooks - это прям то, что доктор прописал)
@freelancer_eyes
@freelancer_eyes Год назад
Можно обобщить. PHP-CS-Fixer + Git hooks - и репозитории будут красивыми и шелковистыми.
@arta4649
@arta4649 Год назад
Вначале я подумал а зачем это видео, если есть "Laravel Pint - инструмент форматирования кода от сообщества Laravel". А потом понял что в целом идет разговор, а не только о ларавел. Поэтому пришёл к выводу что эти два видео взаимодополняемы! Спасибо:)
@freelancer_eyes
@freelancer_eyes Год назад
Да, именно так! Спасибо за поддержку!
Далее
[ENG sub] Closures in PHP.
23:01
Просмотров 2,5 тыс.
a hornet bit me on the nose 👃😂
00:16
Просмотров 2,6 млн
Goodbye, Gitflow! Hello, Trunk-based development!
52:38