Последние комментарии

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


Максим

Очень понравилась первые главы, надеюсь на продолжения книги ) Хочу изучать ASP.NET Core вмести с вами. Мне ваше книги очень нравиться вы рассказываете, все понятно и просто! Так что жду продолжения  


StagnantIce

Бери oppo find x


Владимир_

Браузер - Firefox
Хорошо если вы ведете реальный диалог. Некоторые его не ведут, а ждут пока им скажут то, что они хотят услышать. В итоге все сведется к вопросу в каких случаях что полезно использовать. Если вести диалог. А если перечислять ответы по пунктам, типа "в интерфейсах нельзя создавать приватные методы", это мало о чем скажет. Просто я с таким сталкивался, когда собеседующий спрашивал такой абстрактный вопрос и ждал конкретного заготовленного ответа.
"у интерфейса не может быть реализации методов" - это похоже на заготовленный ответ. И я так понял, если так на него ответят, этого будет для вас достаточно. Вот только это вообще не показывает реальные отличия. Не понятно, нафига вообще интерфейс.


Михаил Фленов

Какой у тебя браузер, у меня ничего не сохраняется.

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

+ Единственное, что ты сказал четко, это "Или в интерфейсах нельзя создавать приватные методы". Да, это правильно и без вопросов.

- "А вот интерфейсы - не механизм наследования" - как так, если интерфейсы можно наследовать, что ты имеешь ввиду?

- "Потому что интерфейс это чисто механизм полиморфизма" - а есть чистые и грязные полиморфизмы? Классы не обладают полиморфизмом? Интрфейсы не обладают полиморфизмом? Какое отличие ты хотел тут показать?

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

ПОВТОРЮСЬ - не нужно отвечать на вопросы, которые я задал в этом комментарии, это просто пример того, куда ведет вопрос и какой выстраивается диалог с человеком, с которым я провожу интервью.


Владимир_

Все думают по разному и у всех разный опыт. Да, я понимаю, что и на мой вопрос можно навыдумывать ответов. Я лишь за то, чтобы конкритизировать то, на что конкретно вы хотели бы получить ответ.
А по поводу новой фишки, реализация по умолчанию в интерфейсах не заменяет абстрактные классы. Можете спрашивать у собеседников - почему


Владимир_

Да, после ввода все убирается. Я обновил страницу, чтоб написать еще комент, и текст остался в полях ввода. Так, наверное, и задумано. Просто не очень удобно


Владимир_

Классы - да. А вот интерфейсы - не механизм наследования. Этим и отличается. А вот вопрос мне не нравится, потому что это вопрос из категории: "угадай что хочет услышать человек его задавший". Хорошо было бы задавать  вопросы, на которые можно дать однозначный ответ.
А как можно ответить на вопрос чем отличается? Ну например ключевым словом. Вы это хотели услышать? Или в интерфейсах нельзя создавать приватные методы. Эти ответы говорят о понимании, что такое интерфейс или абстрактный класс?


Михаил Фленов

2Владимир_

Я не знаю, что у тебя не очистилось, потому что все поле для ввода комментария должно убираться и вместо него появлятся твой комментарий. Какой браузер используешь? Может где-то JS ошибка.


Михаил Фленов

2Евгений рнд

Ой горят на этом вопросе, потому что не понимают разницу. И раньше достаточным ответом было: Интерфейс - это чистый declaration - ты только объявляешь протокол, как что-то должно работать. Абстрактный класс - это класс с реализаций по умолчанию, хотя некоторые могут использовать это и в качестве протокола (не является хорошим тоном, но не запрещается). Когда появится в интерфейсах реализация, то мое утверждение уже становится условностью. Да, это то, для чего они создавалиссь, но не и плоскогубцами можно забивать гвозди.

2Владимир_

Вопрос вполне корректен и он как раз на понимание, когда и что использовать. А классы разве не механизм полиморфизма в чистом виде? Тем более абстрактные. Ты же сам говоришь, что абстрактный класс нужен больше для насследования и может выполнять роль в полеморфизме. Так где же чистая разница?


Владимир_

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


О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

Без проблем вступаю в неразборчивые разговоры по e-mail. Стараюсь отвечать на письма всех читателей вне зависимости от страны проживания, вероисповедания, на русском или английском языке.

Пишите мне