|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
andreykaTДа. к любому собесу в принципе неплохо бы подготовиться. просто с филосовскими вопросами можно не сойтись в некоторых аспектах с собеседующим. и если он малоадекватный, то ты в его глазах еще и дураком будешь впрочем, он в твоих будет самодуром как минимум. это к теме лисковых и строгих убеждений. разве не лучше для обеих сторон это выяснить быстро и сразу, на собеседовании ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:15 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
Не совсем согласен насчет "проблем". Я соглашусь, что можно не знать текста самой задачи и попросить ее переформуоировать в треминах межпроцессного взаимодействия, но как их решить то вы просто обязаны знать. Проблема парикмахера(как правильно шарить состояние между процессами\потоками) - на знание мьютексов, чтобы программа работала надо синхронизироваться на состоянии и допускать в критические блоки только один процесс Проблема философов(доступ к одним и тем же ресурсам из нескольких потоков\процессов) - на знание как избежать дэдлок(брать ресурсы в определенном порядке + таймаут). Ну и в принципе - если вы заявляете что обладаете знаниями многопоточного программирования, то странновато не знать классику ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:19 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabandreykaTДа. к любому собесу в принципе неплохо бы подготовиться. просто с филосовскими вопросами можно не сойтись в некоторых аспектах с собеседующим. и если он малоадекватный, то ты в его глазах еще и дураком будешь впрочем, он в твоих будет самодуром как минимум. это к теме лисковых и строгих убеждений. разве не лучше для обеих сторон это выяснить быстро и сразу, на собеседовании ? Выяснить что? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:20 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mayton, ну вот смотри, человека спрашивают про разницу между объектами, созданными методо1 и методом2, а он начинает че-то гнать насчет женитьбы и философии. 100500 неадекват же! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:22 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл никПроблема философов(доступ к одним и тем же ресурсам из нескольких потоков\процессов) - на знание как избежать дэдлок(брать ресурсы в определенном порядке + таймаут). Это как раз про то что "дефолтный порядок" породил дедлок. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:27 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл ник, выяснить насколько комфортно будет вместь работаться, и сработаетесь ли вообще ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:27 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabmayton, ну вот смотри, человека спрашивают про разницу между объектами, созданными методо1 и методом2, а он начинает че-то гнать насчет женитьбы и философии. 100500 неадекват же! Человека спрашивают про то как правильно создать объект в приложении, а он начинает задвигать про какие-то фабрики, синглтоны. HR, какого вы укурков опять допускаете? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:28 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabmayton, ну вот смотри, человека спрашивают про разницу между объектами, созданными методо1 и методом2, а он начинает че-то гнать насчет женитьбы и философии. 100500 неадекват же! Я нарисовал ответ картинкой. И это лучший ответ на данный вопрос. Я гарантирую это (с). Про старуху Лискову в принципе тоже верно но отвязано от реальности. У меня - реальный боевой пример. Иногда проще нарисовать чем говорить. Это из той-же области что объяснить ребёнку ОТО. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:29 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabзабыл ник, выяснить насколько комфортно будет вместь работаться, и сработаетесь ли вообще В больших компаниях в основном собеседуют те кто свободен или есть желание\опыт по конкретным технологиям. Иногда набирают в новую команду и т.д, личностные качества должны проверяться HR, это вообще не предмет собеседоания. Конечно если собеседуемый ведет себя странновато я скажу об этом HR, но это никак не должно влиять на оценки ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:30 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
maytonзабыл никПроблема философов(доступ к одним и тем же ресурсам из нескольких потоков\процессов) - на знание как избежать дэдлок(брать ресурсы в определенном порядке + таймаут). Это как раз про то что "дефолтный порядок" породил дедлок. Или я не понял тебя, или не дефолтный порядок породит дэдлок еще быстрее, поэтому я и говорю нужен порядок + таймаауты, одного недостаточно ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:32 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл никЧеловека спрашивают про то как правильно создать объект в приложении, а он начинает задвигать про какие-то фабрики, синглтоны. HR, какого вы укурков опять допускаете? необязательно, может человека спрашивают, что будет если создать объект неправильно про синглтоны и фабрики вообще до вас никто не упоминал (это на тему укурков) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:34 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл никНе совсем согласен насчет "проблем". Я соглашусь, что можно не знать текста самой задачи и попросить ее переформуоировать в треминах межпроцессного взаимодействия, но как их решить то вы просто обязаны знать. Проблема парикмахера(как правильно шарить состояние между процессами\потоками) - на знание мьютексов, чтобы программа работала надо синхронизироваться на состоянии и допускать в критические блоки только один процесс Проблема философов(доступ к одним и тем же ресурсам из нескольких потоков\процессов) - на знание как избежать дэдлок(брать ресурсы в определенном порядке + таймаут). Ну и в принципе - если вы заявляете что обладаете знаниями многопоточного программирования, то странновато не знать классику вот ты в двух словах всю интригу этих задачек объяснил и всё стало понятно. я думаю многие понимают и как работает дедлок и как его избежать и для чего нужны мьютексы в шейред ресурсах. а вот всё остальное - это демагогия и обертка. скажи проще и всё будет проще понимать. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:39 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabзабыл никЧеловека спрашивают про то как правильно создать объект в приложении, а он начинает задвигать про какие-то фабрики, синглтоны. HR, какого вы укурков опять допускаете? необязательно, может человека спрашивают, что будет если создать объект неправильно про синглтоны и фабрики вообще до вас никто не упоминал (это на тему укурков) Ну судя по тому что вы пока с трудом умеете проводить аналогии и вычленять абстракции, предположу что ваш уровень где-то между джуниором и мидл. На таком уровне, вопросы типо как создать объект правильно допустимы и имеют смысл. С точки зрения сеньора и выше, одним упоминанием принципа из SOLID\паттерна\"проблемы философа" он просто смывает пласт вопросов и малозначительных деталей для обьяснения, что позволяет сразу перейти к следующей теме. Все эти принципы для того и придуманы чтобы коммуникация между девелоперами была быстрее и эффективнее, и если вы "тонете" в этом то есть два возможных обьяснения - либо неопытность либо нежелание учиться. Первый случай это вполне нормально для определенных позиций, но выведывая детали собеседующий потратит кучу времени и на остальные важные темы просто не хватит времени. И это прямым образом повлияет на отзыв о вас в первую очередь, потому что если не уверен лучше не бери(с) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:42 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
andreykaTзабыл никНе совсем согласен насчет "проблем". Я соглашусь, что можно не знать текста самой задачи и попросить ее переформуоировать в треминах межпроцессного взаимодействия, но как их решить то вы просто обязаны знать. Проблема парикмахера(как правильно шарить состояние между процессами\потоками) - на знание мьютексов, чтобы программа работала надо синхронизироваться на состоянии и допускать в критические блоки только один процесс Проблема философов(доступ к одним и тем же ресурсам из нескольких потоков\процессов) - на знание как избежать дэдлок(брать ресурсы в определенном порядке + таймаут). Ну и в принципе - если вы заявляете что обладаете знаниями многопоточного программирования, то странновато не знать классику вот ты в двух словах всю интригу этих задачек объяснил и всё стало понятно. я думаю многие понимают и как работает дедлок и как его избежать и для чего нужны мьютексы в шейред ресурсах. а вот всё остальное - это демагогия и обертка. скажи проще и всё будет проще понимать. Согласен, я просто часто собеседую потому в курсе,\но когда не знаю что-то или вылетело из головы - то правильный ответ такой - "Извините, я уже немного устал, я точно слышал об этой проблеме и наверняка знаю как ее решать, но не помню точного описания. Будьте добры сформулируйте в терминах экзекьютор\поток бла-бла и скорее всего я скажу вам как ее решить". Если собеседующий сам не сведущ, то это еще и некислый троллинг получится. Ну и да, знать все нельзя, это очевидно. Иногда я спрашиваю веши напрямую не относящиеся к задаче, и не жду особо ответа, но если вдруг человек ответил, то это просто огромный плюс, значит он обучается\интересуется ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 13:46 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл ник, и как же ответить на вопрос изначально заданный ТС ??! (для человека претендующего на джуниора-мидла) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 14:50 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
mini.weblabзабыл ник, и как же ответить на вопрос изначально заданный ТС ??! (для человека претендующего на джуниора-мидла) Давайте, определимся, надо отвечать на вопрос ТС или на вопрос, который ему задавали на собеседовании? Вопрос ТС практически бессмысленен, он о форме, а не о содержании. Черт его знает что его там спрашивали и как он это понял. Вся тема суть попытка понять что он хотел узнать:) На собеседовании явно вопрос звучал не так. Что могли спросить на собеседовании так это - что такое полиморфизм и приведи пример на Java. Джун и мидл по идее ответили бы что-то типо - ну это когда наследуешься и переопределяешь методы и по одной ссылке можно вызвать разные методы. Подкованный школяр сказал бы что полиморфизм — это способность обьекта использовать методы производного класса, который не существует на момент создания базового. Если бы спрашивали меня - я бы спросил в ответ а какой полиморфизм интересует - subtyping, parametric или ad-hoc? Думаю на этом бы тема полиморфизма закончилась. ТС же скорее всего промямлил что-то невразумительное и собеседующие не поленились и стали вытягивать из него информацию, чтобы понять, понимает ли он полиморфизм хотя бы на уроне code monkey, привели пример, сделали сабклассы и начали задавать вопросы в стиле - а что вот тут вернется, а что если тут ссылку сделать на базовый класс. Вот и все ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:01 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
я помню как то брал курс на юдеми про многопоточку и там как раз чел рассказывал про эти две задачки. если честно, то бJльшей мудоты я не видал. но наверное это зависит и от рассказчика. вроде еще в канкарренс ин практиз эту тему поднимали (не уверен) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:15 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
...я про парикмахеров и философов ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:17 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл никmini.weblabзабыл ник, и как же ответить на вопрос изначально заданный ТС ??! (для человека претендующего на джуниора-мидла) а какой полиморфизм интересует - subtyping, parametric или ad-hoc? Думаю на этом бы тема полиморфизма закончилась. эх. еще бы это еще как то явно использовалось в реальных приложениях. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:19 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
andreykaTзабыл никпропущено... а какой полиморфизм интересует - subtyping, parametric или ad-hoc? Думаю на этом бы тема полиморфизма закончилась. эх. еще бы это еще как то явно использовалось в реальных приложениях. в скала как раз-таки все 3 и можно увидеть) Именно пересев на скалу я и понял чем они отличаются:) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:22 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
andreykaTя помню как то брал курс на юдеми про многопоточку и там как раз чел рассказывал про эти две задачки. если честно, то бJльшей мудоты я не видал. но наверное это зависит и от рассказчика. вроде еще в канкарренс ин практиз эту тему поднимали (не уверен) Да, это скорее всего рассказчик такой. Ну или на тот момент не в коня корм был. Иногда перечитываю чкнижки казавшиеся пару лет назад сложными и удивляюсь какие тривиальные вещи тут написаны. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:24 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
забыл никandreykaTпропущено... эх. еще бы это еще как то явно использовалось в реальных приложениях. в скала как раз-таки все 3 и можно увидеть) Именно пересев на скалу я и понял чем они отличаются:) Кстати да. Типизация тоже в Java существует но не так ярко выражена. Нет такой математичной строгости как в Scala или Haskell. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:29 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
andreykaT...я про парикмахеров и философов Да можно прорабоатать десятки лет в разработке конкурирующего ПО но так и не наступить на ту ситуацию которую нарисовали в философской задаче. Хм.. как вариант кольцевой список ресурсов. Но тоже.. редкость такая. В реальности коллекции ресурсов обычно имеют голову и хвост и поэтому такой проблемы не бывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 15:49 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
maytonзабыл никпропущено... в скала как раз-таки все 3 и можно увидеть) Именно пересев на скалу я и понял чем они отличаются:) Кстати да. Типизация тоже в Java существует но не так ярко выражена. Нет такой математичной строгости как в Scala или Haskell. для меня игры с тайпами в скале пока ограничиваются только алиасами. глянул эту дичь с тем, как они расширили функционал дженериков - мне стало дурно и я всё закрыл. думаю, через полгодика еще раз открою и перечитаю. )) кстати по дженерикам, как сказал гослинг на маракане: есть два типа людей: одни не знают как обращаться с генериками, другие думают что знают. в каких то базовых комбинациях я с этим всем еще дружу, как копнуть глубже - всё, приехали. в джаве я даж активно писал код на дженериках. в скале вот пока толи задач не было толи мозга не хватило. там где надо было хотел впилить в джава-стиле и обломился. по тайпклассам курил вот это: https://scalac.io/typeclasses-in-scala/ кстати там как раз и ссылаются на адхок подлиморфизм. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 17:59 |
|
Создание объекта Java Сабкласс = new Родитель(); разница с Сабкласс = new Сабкласс ();
|
|||
---|---|---|---|
#18+
maytonandreykaT...я про парикмахеров и философов Да можно прорабоатать десятки лет в разработке конкурирующего ПО но так и не наступить на ту ситуацию которую нарисовали в философской задаче. Хм.. как вариант кольцевой список ресурсов. Но тоже.. редкость такая. В реальности коллекции ресурсов обычно имеют голову и хвост и поэтому такой проблемы не бывает. а можно десятки лет проработать и не заниматься конкурирующим ПО в принципе. ну или на грани - делаем всё иммутабельным и идите вы в пень со своими локами и шаред ресурсами. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2019, 18:01 |
|
|
start [/forum/topic.php?fid=59&msg=39839917&tid=2121192]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
171ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
others: | 230ms |
total: | 509ms |
0 / 0 |