Cloud In Pants

Пользователь

Регистрация: 01.05.2016

Сообщения: 1199

Рейтинг: 467

Cloud In Pants

Регистрация: 01.05.2016

Сообщения: 1199

Рейтинг: 467

Проблемы вкатывальщиков

Smiluk сказал(а):

как называется способ решения коллизий в хешмапе. И ответ какой-то тупой, "метод цепочек".

Нажмите, чтобы раскрыть...

Если б имел ИТ-шную вышку, то проблем бы не было, т.к. это база. Страдай, че поделать.

+ Ещё и джабу выбрал, кек

ostermal

Пользователь

Регистрация: 24.04.2015

Сообщения: 1131

Рейтинг: 607

ostermal

Регистрация: 24.04.2015

Сообщения: 1131

Рейтинг: 607

Хз, какие-то ненужные вопросы для стажера. Автоклоз точно. На самом деле солидарен с тем, что надо на практике показать знания. Я когда собес проходил на джуна, мне задали буквально 3-4 вопроса, а потом дали задачи решать. Теорию можно тупо зазубрить, а задачи уже позволяют понять, шаришь ты или нет

BigBadaBOOM

Пользователь

Регистрация: 26.01.2014

Сообщения: 723

Рейтинг: 396

BigBadaBOOM

Регистрация: 26.01.2014

Сообщения: 723

Рейтинг: 396

Кеквейт, элементарные вопросы, я с высоты дотнет колокольни даже бы на них ответил 

Armagedonby_ZERGS

Пользователь

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

Armagedonby_ZERGS

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

ostermal сказал(а):

Хз, какие-то ненужные вопросы для стажера. Автоклоз точно. На самом деле солидарен с тем, что надо на практике показать знания. Я когда собес проходил на джуна, мне задали буквально 3-4 вопроса, а потом дали задачи решать. Теорию можно тупо зазубрить, а задачи уже позволяют понять, шаришь ты или нет

Нажмите, чтобы раскрыть...

А задачи с литкода типо нельзя зазубрить? Та что ты. 

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

AMDkrolyan сказал(а):

 

можно, если ты собираешься этот объект как ключ в хешмапу ложить

Нажмите, чтобы раскрыть...

что можно?

AMDkrolyan

Пользователь

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

AMDkrolyan

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

Aragorn_ сказал(а):

что можно?

Нажмите, чтобы раскрыть...

можешь юзать только его в хешкоде и equals без умножений, ибо не понял вопрос твой

 

но лучше использовать Objects.hash() метод, там уже за тебя все делают

Armagedonby_ZERGS сказал(а):

А задачи с литкода типо нельзя зазубрить? Та что ты. 

Нажмите, чтобы раскрыть...

 

меняешь условие немного и все, поэтому сложнее, но хз кто зубрит вообще

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

AMDkrolyan сказал(а):

можешь юзать только его в хешкоде и equals без умножений, ибо не понял вопрос твой

 

но лучше использовать Objects.hash() метод, там уже за тебя все делают

Нажмите, чтобы раскрыть...

Хибернейт шаришь?

AMDkrolyan

Пользователь

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

AMDkrolyan

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

Aragorn_ сказал(а):

Хибернейт шаришь?

Нажмите, чтобы раскрыть...

ну и

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

AMDkrolyan сказал(а):

ну и

Нажмите, чтобы раскрыть...

как создать хэшкод, когда id еще не создан хибером и при этом больше никаких полей нельзя юзать?

Armagedonby_ZERGS

Пользователь

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

Armagedonby_ZERGS

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

AMDkrolyan сказал(а):

меняешь условие немного и все, поэтому сложнее, но хз кто зубрит вообще

Нажмите, чтобы раскрыть...

Так о чем и речь. Что ты зная дефолтные алгоримты будешь решать задачки даже очень высокого уровня сложности. А олимпиадные на математику - тебе давать не будут. 

AMDkrolyan

Пользователь

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

AMDkrolyan

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

Aragorn_ сказал(а):

как создать хэшкод, когда id еще не создан хибером и при этом больше никаких полей нельзя юзать?

Нажмите, чтобы раскрыть...

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

 

к слову, если тебе надо все же как-то работать с уникальными ентити и т.д. (и нет возможности проверять все поля), ты можешь юзать UUID как ключ, а не автоинкремент

Armagedonby_ZERGS сказал(а):

Так о чем и речь. Что ты зная дефолтные алгоримты будешь решать задачки даже очень высокого уровня сложности. А олимпиадные на математику - тебе давать не будут. 

Нажмите, чтобы раскрыть...

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

Armagedonby_ZERGS

Пользователь

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

Armagedonby_ZERGS

Регистрация: 23.03.2015

Сообщения: 11371

Рейтинг: 4428

AMDkrolyan сказал(а):

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

 

к слову, если тебе надо все же как-то работать с уникальными ентити и т.д. (и нет возможности проверять все поля), ты можешь юзать UUID как ключ, а не автоинкремент

 

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

Нажмите, чтобы раскрыть...

Но это же гугл. 

При том сами ФААНГИ перестали гонять без конца по алгоритмам. По той же причине почему я написал выше. Люди стали просто задротить все ~500 задачек на литкоде, и могут любую "типовую" задачу посчитать с приемлимым исходомм по сложности. 

А уж про наши конторы, так и смысла говорить нету. 

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

ostermal сказал(а):

Хз, какие-то ненужные вопросы для стажера. Автоклоз точно. На самом деле солидарен с тем, что надо на практике показать знания. Я когда собес проходил на джуна, мне задали буквально 3-4 вопроса, а потом дали задачи решать. Теорию можно тупо зазубрить, а задачи уже позволяют понять, шаришь ты или нет

Нажмите, чтобы раскрыть...

посмотрел недавно на ютубе интервью вкатывальщика на джаве

кринжа невероятнаяPepeCringe.png?1598477741

AMDkrolyan сказал(а):

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

 

к слову, если тебе надо все же как-то работать с уникальными ентити и т.д. (и нет возможности проверять все поля), ты можешь юзать UUID как ключ, а не автоинкремент

Нажмите, чтобы раскрыть...

Ну например для JoinTable

AMDkrolyan сказал(а):

к слову, если тебе надо все же как-то работать с уникальными ентити и т.д. (и нет возможности проверять все поля), ты можешь юзать UUID как ключ, а не автоинкремент

Нажмите, чтобы раскрыть...

у тебя уже используется autoincrement, ты не можешь просто так заменить это в базе).

 

UUID как решение, но есть еще в лоб решение = константный hashcodeHAhaa.png?1616514247 

pochemyzamenya

Пользователь

Регистрация: 25.02.2016

Сообщения: 4459

Рейтинг: 4062

pochemyzamenya

Регистрация: 25.02.2016

Сообщения: 4459

Рейтинг: 4062

Aragorn_ сказал(а):

кринжа невероятнаяPepeCringe.png?1598477741

Нажмите, чтобы раскрыть...

По таймкодам вроде норм вопросы, или там ответчик кринжовый?

А шо нынче у вкатывальщиков на интервью спрашивают?

tDmn///

Пользователь

Регистрация: 31.07.2012

Сообщения: 830

Рейтинг: 138

tDmn///

Регистрация: 31.07.2012

Сообщения: 830

Рейтинг: 138

Aragorn_ сказал(а):

как создать хэшкод, когда id еще не создан хибером и при этом больше никаких полей нельзя юзать?

Нажмите, чтобы раскрыть...

Хэшкод (и сам метод equals) нужен для проверки эквивалентности объекта. Если твоя проверка эквивалентности проверяет непосредственно id - тебе не кажется, что это какая то некорректная проверка? А если именно id является твоим качественным параметром эквивалентности - в чем твоя проблема? Все объекты с id=null (или 0, хз, что там за поле) будут считаться эквивалентными.

Aragorn_ сказал(а):

А если взять хибере, который генерит первичный ключ и в ентити классе только id является уникальным?HAhaa.png?1616514247

Нажмите, чтобы раскрыть...

Если твой предыдущий вопрос об этом, то:

повторюсь, что equals и hashcode - это методы проверки эквивалентности. Если все поля, кроме ид, одного объекта, равны всем полям другого объекта - они эквивалентны, т.е. имеют одинаковое состояние. Привязывать понятие эквивалентности к суррогатному id - это еще надо подумать, надо ли оно тебе в данной задаче.

В любом случае, твой вопрос какой то странный. Каким образом уникальность поля связана с тем, что написал кролян?

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

pochemyzamenya сказал(а):

По таймкодам вроде норм вопросы, или там ответчик кринжовый?

А шо нынче у вкатывальщиков на интервью спрашивают?

Нажмите, чтобы раскрыть...

ответы)

 

tDmn/// сказал(а):

Хэшкод (и сам метод equals) нужен для проверки эквивалентности объекта. Если твоя проверка эквивалентности проверяет непосредственно id - тебе не кажется, что это какая то некорректная проверка? А если именно id является твоим качественным параметром эквивалентности - в чем твоя проблема? Все объекты с id=null (или 0, хз, что там за поле) будут считаться эквивалентными.

Нажмите, чтобы раскрыть...

т.е. по твоему Person(id=null, name"tDmn).equals(Person(id=null, name"Aragorn") должно быть == true?, потому что hashcode берется от null?(т.е. 0)

 

 

 

tDmn///

Пользователь

Регистрация: 31.07.2012

Сообщения: 830

Рейтинг: 138

tDmn///

Регистрация: 31.07.2012

Сообщения: 830

Рейтинг: 138

Aragorn_ сказал(а):

Ну например для JoinTable

Нажмите, чтобы раскрыть...

ОМГ, JoinTable это аннотация, которая имя таблицы принимает для соединения, где ты тут хешкод используешь?

Aragorn_ сказал(а):

UUID как решение, но есть еще в лоб решение = константный hashcodeHAhaa.png?1616514247 

Нажмите, чтобы раскрыть...

Надеюсь, ты нигде это не сделаешь, кроме своих пет проектов...

 

Aragorn_ сказал(а):

т.е. по твоему Person(id=null, name"tDmn).equals(Person(id=null, name"Aragorn") должно == true?

Нажмите, чтобы раскрыть...

По моему данная проверка не должна сравнивать ид вообще. Она должна сравнивать либо имя, либо имя+ид, если у тебя могут быть 2 юзера с одинаковым именем. Только второй случай уже попахивает.

Еще раз прочитай "А если именно id является твоим качественным параметром эквивалентности - в чем твоя проблема? Все объекты с id=null (или 0, хз, что там за поле) будут считаться эквивалентными." Если твоя логика подразумевает именно проверку id - ты сам такую логику придумал (UPD: т.е., если твоя логика подразумевает, что 2 объекта с одинаковым id эквивалентны).

Я же про это мягко намекнул "Если твоя проверка эквивалентности проверяет непосредственно id - тебе не кажется, что это какая то некорректная проверка?"

 

UPD: Эквивалентность != идентичность.

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

tDmn/// сказал(а):

ОМГ, JoinTable это аннотация, которая имя таблицы принимает для соединения, где ты тут хешкод используешь?

 
Нажмите, чтобы раскрыть...

В чем проблема? У тебя может быть Map< Entity, Enitity >.

У тебя может быть HashSet< Entity >, где будет использоваться твой hashcode...

 

tDmn/// сказал(а):

Надеюсь, ты нигде это не сделаешь, кроме своих пет проектов...

Нажмите, чтобы раскрыть...

Что именно? 

 

tDmn/// сказал(а):

По моему данная проверка не должна сравнивать ид вообще. Она должна сравнивать либо имя, либо имя+ид, если у тебя могут быть 2 юзера с одинаковым именем. Только второй случай уже попахивает.

Еще раз прочитай "А если именно id является твоим качественным параметром эквивалентности - в чем твоя проблема? Все объекты с id=null (или 0, хз, что там за поле) будут считаться эквивалентными." Если твоя логика подразумевает именно проверку id - ты сам такую логику придумал.

Я же про это мягко намекнул "Если твоя проверка эквивалентности проверяет непосредственно id - тебе не кажется, что это какая то некорректная проверка?"

Нажмите, чтобы раскрыть...

Я тебе дал условие - ентити имеет только id в виде unique значения, значит id(которое null) + любое поле дает в любом случае большой шанс совпадения хэшкодов, но при этом не управляемое(значит безсмысленное).

Если хэшкоды равны это не гарантирует то, что объекты равны, почитай контракты equals and hashcode.

Поэтому в хибернейте есть такое решение(оно суперредкое и относительное мемное), что есть смысл установить константное int значение hashcode. И если использовать это с умом, не набивая хэшмапу миллионами данных(а например туда записывать до 10 объектов), чтобы сильно не повлиять на перформанс, тогда все будет ок.

tDmn/// сказал(а):

Я же про это мягко намекнул "Если твоя проверка эквивалентности проверяет непосредственно id - тебе не кажется, что это какая то некорректная проверка?"

Нажмите, чтобы раскрыть...

С каких пор проверка эквивалентности по id не корректна?) Это уникальное значение 

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Габен задушил сказал(а):

Не лезь, оно тебя сожрет. Ты выбрал язык с самой высокой планкой вката на работу и жалуешься на это. Да наизусть нужно знать тонны информации и пока ты не выучишь, тебя не возьмут. Сфера применения джава просто не может позволить, чтоб левый Васян влез в какие-то банки и там все сломал.

Нажмите, чтобы раскрыть...

Уахаха джава с высокой планкой? Это самый простой язык программирования из всех что сейчас востребованы

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Pudgewerksaw сказал(а):

Уахаха джава с высокой планкой? Это самый простой язык программирования из всех что сейчас востребованы

Нажмите, чтобы раскрыть...

А какой сложный? Кроме плюсов

Габен задушил

Пользователь

Регистрация: 25.07.2020

Сообщения: 223

Рейтинг: 364

Габен задушил

Регистрация: 25.07.2020

Сообщения: 223

Рейтинг: 364

 

Pudgewerksaw сказал(а):

Уахаха джава с высокой планкой? Это самый простой язык программирования из всех что сейчас востребованы

Нажмите, чтобы раскрыть...

Удачи устроиться на работуroflanPominki.png?1616515180

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Aragorn_ сказал(а):

А какой сложный? Кроме плюсов

Нажмите, чтобы раскрыть...

Джава максимально консервативна там нет никаких суперфич, да там вообще ничего нет. Программист на любом языке может читать java код, ибо это максимально минималистичный язык где нет ничего лишнего.

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Pudgewerksaw сказал(а):

Джава максимально консервативна там нет никаких суперфич, да там вообще ничего нет. Программист на любом языке может читать java код, ибо это максимально минималистичный язык где нет ничего лишнего.

Нажмите, чтобы раскрыть...

Ну да ты прав.

1. В том, что джава читабельней большинства языков

 

Минималистичный язык, че за кринж ты написал?

Конечно, если сравнивать с С++ - минималистичный. Если сравнивать со всеми частоиспользуемыми - JS, Go, PHP, Python, так это они минималистичны, а не Джава.

 

И если ты по такому принципу определяешь сложность языка и его стэка, то удачи остаться вкатывальщиком без работы))0

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2308

Рейтинг: 991

Нарушения: 90

Габен задушил сказал(а):

 

Удачи устроиться на работуroflanPominki.png?1616515180

Нажмите, чтобы раскрыть...

Удачи учить язык который даже учить не надо. Там весь язык умещается на листочке А5. 

AMDkrolyan

Пользователь

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

AMDkrolyan

Регистрация: 21.04.2013

Сообщения: 7662

Рейтинг: 2908

Нарушения: 10

Aragorn_ сказал(а):

посмотрел недавно на ютубе интервью вкатывальщика на джаве

кринжа невероятнаяPepeCringe.png?1598477741

 

Ну например для JoinTable

 

у тебя уже используется autoincrement, ты не можешь просто так заменить это в базе).

 

UUID как решение, но есть еще в лоб решение = константный hashcodeHAhaa.png?1616514247 

Нажмите, чтобы раскрыть...

 

Если у тебя join значит у тебя уже есть id