Size: a a a

2020 October 30

А

Алексей in atinfo chat
Это как на задачку переворота строки один чел внезапно выдал мне решение с 3мя вложенными циклами
источник

А

Алексей in atinfo chat
формально он решил. Только к коду своего проекта я его подпускать не стал :)
источник

EK

Elbrus K2 in atinfo chat
Алексей
изначальное решение генерирует 1 + size() запросов вместо 1го. На собесе например это означает полное непонимание работы ЯП кандидатом
А я вот не парюсь, просто во время дебага я сделаю -1 от индекса
источник

EK

Elbrus K2 in atinfo chat
Просто если собес проводят задроты, то тут придирок можно найти еще десяток.
источник

S

Sergei in atinfo chat
Алексей
в джаве? один раз, очевидно же. JIT жы
а в каком году это появилось? а то похоже что в 11-м еще не было https://stackoverflow.com/questions/8426693/is-the-loop-condition-calculated-each-loop-for-for-sentence-in-java
источник

А

Алексей in atinfo chat
Elbrus K2
А я вот не парюсь, просто во время дебага я сделаю -1 от индекса
рано или поздно начнете париться. Все начинают. Сначала ты джун автоматизатор и пишешь абы как, главное чтоб работало хоть иногда и какие то резалты выдавало. Потом уже поднабравшись опыта - пишеь более стабильное решение, которое работает постоянно, и выдает норм результаты, включаешь параллельку во фреймворке. Дальше в один день ты понимаешь, что регресс селеном по 8+ часов даже со включенной параллелизацией фреймворком - это не айс, надо как то ускорять. И в ход начинают идти оптимизации.
источник

А

Алексей in atinfo chat
ты хоть вопрос и ответы в своей ссылке на староверфлоу прочитай...
источник

EK

Elbrus K2 in atinfo chat
Алексей
рано или поздно начнете париться. Все начинают. Сначала ты джун автоматизатор и пишешь абы как, главное чтоб работало хоть иногда и какие то резалты выдавало. Потом уже поднабравшись опыта - пишеь более стабильное решение, которое работает постоянно, и выдает норм результаты, включаешь параллельку во фреймворке. Дальше в один день ты понимаешь, что регресс селеном по 8+ часов даже со включенной параллелизацией фреймворком - это не айс, надо как то ускорять. И в ход начинают идти оптимизации.
Я сам собеседую людей и поверь, это наименьшее на что я обратил бы внимание, это надо быть просто очень сильно обиженным на людей, чтобы к таким вещам придираться. Если ты такой или вдруг тебе такие попадались - сочувствую, я такой дичи не встречал и не устраиваю.
источник

S

Sergei in atinfo chat
Алексей
ты хоть вопрос и ответы в своей ссылке на староверфлоу прочитай...
именно это и сделал objects.size() is called every loop
источник

EK

Elbrus K2 in atinfo chat
Алексей
ты хоть вопрос и ответы в своей ссылке на староверфлоу прочитай...
objects.size() is called every loop
А сам читал?
источник

А

Алексей in atinfo chat
Elbrus K2
Я сам собеседую людей и поверь, это наименьшее на что я обратил бы внимание, это надо быть просто очень сильно обиженным на людей, чтобы к таким вещам придираться. Если ты такой или вдруг тебе такие попадались - сочувствую, я такой дичи не встречал и не устраиваю.
Нет, надо писать сложные вещи для проектов, где цена ошибки достаточно высока (иногда даже - жизни людей). Там качественный код - залог поддерживаемости и читаемость. А когда код база из десятков тысяч тестов, позволить себе генерировать лишние запросы к апи - нельзя :)
источник

А

Алексей in atinfo chat
Elbrus K2
objects.size() is called every loop
А сам читал?
там в вопросе
"then if other thread change"
при конкарренте конечно JIT не будет отрабатывать, и надо каждый раз дергать сайз на случай изменения коллекции другим тредом
источник

EK

Elbrus K2 in atinfo chat
Алексей
Нет, надо писать сложные вещи для проектов, где цена ошибки достаточно высока (иногда даже - жизни людей). Там качественный код - залог поддерживаемости и читаемость. А когда код база из десятков тысяч тестов, позволить себе генерировать лишние запросы к апи - нельзя :)
Ой басни то какие, у меня медицина, жизни людей, ты все равно еще дебажить будешь. А у тебя какие-то сказки про критические ошибки и жизни людей 😂👍
источник

EK

Elbrus K2 in atinfo chat
Код разработчиков посмотришь: 4 ифа и слипы на каждом шагу, а ты паришься про +1 индекс списка
источник

А

Алексей in atinfo chat
далее дергать сайз - это одно. дергать кешированный сайз - совсем другое. я рекомендуб посмотреть, когда и как джава машина кеширует сайз коллекции, как хранится length в array (нижележащая структура под коллекциями джавы). Если интересно - рекомендую лекции Шипилева
источник

А

Алексей in atinfo chat
Elbrus K2
Ой басни то какие, у меня медицина, жизни людей, ты все равно еще дебажить будешь. А у тебя какие-то сказки про критические ошибки и жизни людей 😂👍
то есть ты даже не задумываешься, что софт для медицины, авто и самолетов таки кто то тестит? :)
источник

А

Алексей in atinfo chat
Elbrus K2
Код разработчиков посмотришь: 4 ифа и слипы на каждом шагу, а ты паришься про +1 индекс списка
нанимайте нормальных разработчиков. Я с такими постоянно работаю - отлично пишут код, не забывают про юниты, есть чему поучится в плане кода
источник

EE

Escudo Escobar in atinfo chat
господа. посовветуйте какой подход применить.
Например сайт, пусть будет для продажи автомобилей.
Есть фильтр, например по марке.
Как проверить. что фильтр работает ?
Выбрать значение например Toyota и чекать все 20-30 страниц по 20 результатов. что там именно Toyota а не BMW или Audi ?
конечно это достаточно просто проверить в selenide, но если таких страниц 300 или 400... это ж сколько времени уйдет...
источник

ВШ

Вадим Шевчук... in atinfo chat
Escudo Escobar
господа. посовветуйте какой подход применить.
Например сайт, пусть будет для продажи автомобилей.
Есть фильтр, например по марке.
Как проверить. что фильтр работает ?
Выбрать значение например Toyota и чекать все 20-30 страниц по 20 результатов. что там именно Toyota а не BMW или Audi ?
конечно это достаточно просто проверить в selenide, но если таких страниц 300 или 400... это ж сколько времени уйдет...
Уже был спор тут, предлагали дергать апи, стучатся в бд, но думаю целесообразно использовать Boundary-value analysis, либо проверять рандомное значение - соответственно 100% не проверишь
источник

EK

Elbrus K2 in atinfo chat
Алексей
нанимайте нормальных разработчиков. Я с такими постоянно работаю - отлично пишут код, не забывают про юниты, есть чему поучится в плане кода
У тебя просто какое-то инженерное представление через розовые очки, мы не пишем красивый код ради кода, мы решаем бизнес цели клиента, ему всё равно что там внутри, если он работает. Быть может если у тебя маленький проект и 1 тест в неделю, то ты сидишь вылизываешь его и занимаешься оптимизацией, а в большинстве контор кроме тестов у тебя еще много активностей 😉 и поверь мне +1 лишний индекс это даже не 1% от всех проблем на проекте
источник