Skip to content

Conversation

@iatsdotfatr
Copy link
Contributor

Убрал вопрос, не имеющий отношения к теме.

Убрал вопрос, не имеющий отношения к теме.
@iatsdotfatr iatsdotfatr requested a review from Znack August 16, 2021 09:45
@Znack
Copy link
Contributor

Znack commented Aug 17, 2021

На самом деле в целом тему состояния оч важно в контексте ООП обсудить. Если этот вопрос убираем, то где-то этот вопрос обсуждается? Если нет, может тогда лучше переформулируем? @alextsk @prodderman @hersveit как думаете, в каком формате лучше вопрос сделать про состояние в контексте ООП?

* Чем композиция отличается от наследования?
* Что такое полиморфизм? Для чего он используется?
* Что такое инкапсуляция? Какие проблемы решаются с ее помощью?
* Что такое состояние программы? Как оно влияет на программу?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Всё таки я не хотел бы этот вопрос убирать. Возможно вопрос потерял смысл спустя несколько поколений, так как сформулирован криво, но мы в первых итерациях всегда в теме про ооп говорили о связи Поведения и Состояния, как и зачем объекты это реализуют, зачем это разделять и тд. Вот список статей на эту тему которые я сейчас нагуглил (особо не вчитывался, но про состояние как одно из главных свойств объекта там явно везде говорится)

https://habr.com/ru/company/otus/blog/525336/
Каждый объект обладает тремя cоставляющими: идентичность (identity), состояние (state) и поведение (behaviour).

https://habr.com/ru/post/111162/
https://habr.com/ru/post/111125/

Давай лучше переформулируем вопрос так, чтобы подсветить нужную сторону и все?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ну так, вроде бы, про составляющие объекта рассказывается, когда отвечаешь на вопрос, что такое объект? Единственное, когда я отвечал, про идентичность говорить не стал, хотя и читал про нее, но она не во всех источниках упоминается.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Давай тогда явно просто туда перенесем? Ну то есть чтобы в вопросе про объекты были явные подвопросы про состояние, поведение (и их противопоставление) и айдентити?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можно как-то так:
Объект

  • Что такое идентичность?
  • Что такое состояние? Какие проблемы с ним связаны?
  • Что такое метод? Рассказать про аксессоры, мутаторы, менеджеры (насчет менеджеров не совсем уверен, по крайней мере конструктор больше к классу относится).
    И про проблемы можно добавить вот эту ссылку, раздел Problems. Отдельно такого подробного описания проблем в одном месте не нашел.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Давай явно в вопросе еще про "поведение" упомянем, можно как раз сравнив и противопоставив поведение и стейт

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

И про проблемы можно добавить вот эту ссылку, раздел Problems. Отдельно такого подробного описания проблем в одном месте не нашел.

Там на самом деле прямо другое, хотя очень связанные темы. Там про State в узком понимании паттерна (кажется из банды четырех даже), и хотя это похоже, но всё же там своя специфика :)

Copy link
Contributor Author

@iatsdotfatr iatsdotfatr Oct 13, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Я именно про раздел Problems этой статьи, там, кажется, про общие проблемы состояния и указано. А дальше уже про паттерн. А других ссылок с явным описанием проблем я не нашел, поэтому или дать эту, или не давать ничего.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ну я тоже про раздел Problems, там где про конечный автомат :) То есть про то, что у тебя есть специально обозначенные теги состояния, которые говорят о том, как поведение меняется в зависимости этого тега. В целом это часто одна из проблем стейта, но только всё же это частный случай

image

Copy link
Contributor Author

@iatsdotfatr iatsdotfatr Oct 18, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Похоже, я ссылку перепутал, там было вообще другое, хотя сайт, кажется, тот же).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Сделал новый коммит

Copy link
Contributor

@Znack Znack left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ага, гуд, спасибо!

@Znack
Copy link
Contributor

Znack commented Oct 19, 2021

@alextsk @prodderman посмотрите тоже плиз

@iatsdotfatr iatsdotfatr merged commit 0389126 into master Mar 31, 2022
@FanManutd FanManutd deleted the iatsdotfatr-patch-2 branch October 18, 2023 07:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants