Три ключевых принципа хорошего кода DRY, KISS, YAGNI
Vložit
- čas přidán 27. 07. 2019
- Разработка веб-приложения на PHP. Посмотрите уроки: webformyself.com/minikurs/php...
Исходники к уроку тут: webformyself.com/tri-klyuchev...
Данный урок - это логическое продолжение, ранее вышедшего, цикла видео по принципам SOLID, соблюдение которых дает возможность правильно спроектировать архитектуру создаваемого проекта. Принципы, которые будут рассмотрены сегодня, по сути, не накладывают каких либо определений на общую структуру и взаимодействие между классами - их цель это правильная организация всего кода проекта.
Хотел бы отметить, что, не говоря о каком-либо конкретном проекте, сложно сказать, как именно необходимо организовать код, что бы он был «хорошим», так как все зависит от поставленных задач. Но, соблюдение трех ключевых принципов DRY, KISS YAGNI - это довольно большой и уверенный шаг в сторону хорошего кода.
DRY - Don’t repeat yourself - принцип призывает Вас не повторяться при написании кода. Все что Вы пишите в проекте, должно быть определено только один раз.
KISS - keep it short simple - делайте вещи проще. Порой наиболее правильное решение - это наиболее простая реализация задачи, в которой нет ничего лишнего.
YAGNI - You ain’t gonna need it - вам это не понадобится. Все что не предусмотрено техническим заданием проекта, не должно быть в нем.
Виктор, очень полезный контент! Начинающим обязательно следует ознакомиться)
Спасибо!
Если в case присутствует return, то break не нужен
switch obrabativayet konkretniy vxodashiye daniy ti doljen v konse obyavit retun kajdiy raz posle case obyavlat return et kakbi ne to
Теперь меня эти слова не пугают). Спасибо
Благодарю за твои видео.
Thank you SO MUCH!!!
Все понятно и доступно, спасибо 👍
Просто и понятно, спасибо.
Как найти баланс между архитектурами(MVC, MVP, MVVM, MVI, VIPER) и этими принципами?
Здравствуйте!
Ответ довольно простой, проектируя архитектуру, необходимо соблюдать принципы, оговоренные в уроке. При этом конечно же некторые из них могу не в полной мере соблюдаться. Это приходит с опытом.
Спасибо! Пожалуйста в следующих видео сделайте шрифт побольше. С телефона смотреть неудобно :(
Поверни телефон, чтобы видео было на весь экран и все будет хорошо видно;) Я именно так смотрю с телефона:)
@@LavSExpert наверное еще с iphone 5
У меня была. кстати, такая ситуация, когда попросили на собеседовании показать код и сразу спросили: "Как его можно упростить?"
и что было дальше? как прошло собес? Прошло 3 года ты в программировании вообще или забросил))
@@wickedtorpedo75 , я тогда, можно сказать, что наполовину прошел собес. Я периодически забрасывал программирование. Но возвращался - знакомые подкидают задачи и отдельные проекты, так что пытаюсь себя держать в форме :))
нужен ли break если до этого стоит return? хотя и return в теле switch не очень решение. лучше завести переменную и вернуть ее после switch (присвоив во switch ей значение) вроде более красивое решение. (не беря во внимание второй вариант)
return ето выход из функции ниже него код не работает, после breack код работает дальше
А данном случае break не нужен
Всем привет
слишком много зумных букв, смысл которых и так очевиден
а я думал, что за буквами скрывается что-то более сложное и которое надо знать
смысл букв
не копипасти
пиши проще
не делай того, что не просили (свистелки и перделки)
Да, все верно
Ещё одну проблему часто наблюдаю: народ в маленький проект подтягивает тяжёлый класс или несколько классов и использует из него 1-2 функции максимум, ибо лениво эти функции писать самому или выдергивать из класса.
В итоге получаем совсем маленькую софтинку, которая за собой тащит дикое количество библиотек и зависимостей.
Не надо так делать.
Самое сложное тут это DRY. Трудность проявляется когда проект написан и есть куча повторений, если извлечь одну часть в отдельный класс, то 70% скажут спасибо все идеально, а остальные 30% будут говорить: ты идиот?
вообще свитч это плохо и точно не кисс😂, можно просто массив сделать и выводить его по входящему нлмеру
Зачем плохому учишь? Если нужно сделать "что-то", то нужно создать класс, который будет отвечать за это "что-то" и только за него. Прости дружище, дальше 2+2 смотреть не стал...
Так в видео ведь ничего и не делалось. был по сути всего лишь один готовый пример, и то он поместился в одну функцию. Урок не о классах и не о том как что т осделать, урок о принципах хорошего кода.