Комментарии 17
FizzBuzzEnterpriseEdition во всей красе.
Забавно, спасибо за ссылку! Согласна, во многом в моем примере применение принципов SOLID выглядит как усложнение. Его, конечно, стоит воспринимать как мини-модель и учебное пособие, а не как реальный кейс использования.
Или ваш комментарий относился не к примеру, а в целом к SOLID?
Вы адепт if/else? Ну case ведь в вашем примере лучше? Плюшки: удобочитаемость, расширяемость, дефолтное значение. Ну я еще и сторонник POM, <driver.findElement(By.id("profile")).click(); > селектор еще не раз пригодится
Нет, не адепт:) спасибо за комментарий, действительно, в моем случае case подошел бы больше. C POM тоже согласна, хорошее дополнение
Это qa что ты хотел
Сейчас QA(junior) идут со знанием ЯП, очень близко к Junior разработчика.
Не надо путать мягкое с теплым. Если qa могут немного в процедурщину, и зацепли ООП по верхам, чтобы не пладить спагетти код, это еще не делает их на уравне jun dev. Максимум trainee и то не уверен что они понимают в многопотчке
Как по мне, главный принцип разработки на все времена - это KISS. С его помощью и код лучше работает, и расширяемость высокая, да и тестировать проще. Как то так.
Сейчас, да, в принципе, как и всегда, компании используют те продукты которые внедрили, переобучение стоит дорого, но б..ть, очень нужно. Я даже кукумбер и серенити, да что уж и джедая поизучал. И мне не важен подход, результат зависит от общего стека и вовлеченности команды
Пожалуй. Даже может быть из KiSS растет и SOLID
Мне кажется, что не совсем. Скорее это два конкурирующих подхода по большому счёту. KISS при всей своей простоте самодостаточен (Ну как бы на то и KISS), а вот SOLID вполне способен при "должном" применении нужными людьми превратить любой проект в FizzBuzzWriteOnlyCorporateEdition.
Спасибо за статью! Получилось полезно и познавательно! Классно что снабдили статью репо в гитхабе, можно идти по репо и читать, от чего увеличивается comprehension статьи. На пальцах изложены принципы SOLID с примерами - это облегчает их понимание, особенно полезно для начинающих разработчиков.
Обратная связь. Когда я увидел код, который предстояло прогнать через SOLID мне хотелось ругаться и прекратить чтение статьи, но стадия агрессии прошла быстро, т.к. смысл статьи как раз и заключается в том чтобы шаг за шагом применять SOLID и улучшать код. Однако первые два принципа утоноли в проблемах изначального кода. Т.е. вроде бы применили принципы, но код не стал особо лучше.
За объяснение принципа LSP отдельное спасибо. Действительно простое и понятное объяснение.
Про принцип инверсии зависимостей считаю что изложено неполно и неточно. Но это болезнь всех SOLID-статей. Авторы пытаются за один раздел объяснить обширную тему, которая "не всасывается" читателем за 5 минут. Если кратко по существу: инверсия зависимостей может быть на уровне модулей(библиотек) и на уровне классов(пакетов). То есть, есть два модуля, и разработчик управляет "направлением" зависимости. Если хочет прямую - делает прямую, хочет обратную - делает обратную. В каждом случае - свое решение, главное выбрать направление так, чтобы оно решало задачу и было архитектурно обоснованно. И не обязательно всегда "разворачивать" зависимость в обратную сторону. Вообще формулировка принципа, представленная в статье, мне крайне не нравится. Она не вносит понимания, на мой взгляд. Если хотите погрузиться в инверсию зависимостей и понять эту тему хорошо, советую изучить статью (там 2 части) https://habr.com/ru/post/591137/ И желательно прочитать ее пару раз.
В любом случае статья полезная. Я разработчик, но не прохожу мимо статей от тестировщиков на разработческие темы, потому что они заставляют взглянуть на тему под другим углом, а также освежают знания. Статья будет полезна также как точка входа в тему, чтобы заинтересовать читателя, чтобы вызвать у него ряд вопросов для дальнейшего изучения и экспериментов.
Спасибо за статью, всё просто и понятно описано
Взгляд тестировщика на SOLID