объект это в программировании



Объект в программировании

Автор Together задал вопрос в разделе Другие языки и технологии

Что является 'сущностью' в программировании для Вас? и получил лучший ответ

Ответ от Алексей Кузьминов[гуру]
Сущность - очень общее понятие.
С практической точки зрения, всё, что вы можете назвать, является сущностью.
Но не любая сущность является объектом.
Первая часть определения "объект" мне нравится:
- сущность БЕЗ СОСТОЯНИЯ - НЕ объект (примеры: алгоритм, операция)
- сущность БЕЗ ПОВЕДЕНИЯ - НЕ объект (примеры: переменная, исходный код программы)
Поведение и состояние сильно взаимосвязаны, одно без другого не существует.
Под поведением объекта понимается его создание, инициализация состояния, организация смены состояния и удаление (прекращение актуальности) .
Со второй частью хуже, так как:
1. Атрибуты объекта могут не существовать (пример - статический объект, вызов методов которого не меняет состояния)
2. Методы объекта могут относиться (а чаще всего относятся) к ТИПУ объекта, а не к нему самому
3. В некоторых языках (пример: JavaScript) атрибуты и методы можно добавлять, изменять и удалять в процессе жизни объекта (НЕ ТИПА!!!).

Ответ от Блэк Папа[гуру]
Эта сущность по имени С++ протрахала мой бедный моСК до дыр!

Ответ от Ѝльдар Бахмудов[активный]
То, что описано в Вики. К примеру, человек - это объект, или человек - это сущность, а его атрибуты - это видеть, слышать, и т. д, и его операции (методы) бегать как-то или над чем-то, прыгать, и т. д.
А виртуальном мире, то есть, в программировании, например, объект класса Worker, который используется для работы с работниками из БД - это одна сущность, объект класса Manager - другая сущность.

Ответ от ZZZ0oO1Z[гуру]
Именно так, как Вы написали. И даже структуры в языке Си (даже без ++) - тоже классы/объекты. Их поля - атрибуты, а функции типа void foo(MyStruct* ) - методы.
ООП это не конструкции языка, это стиль программирования.

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

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Что является 'сущностью' в программировании для Вас?
Информация на Википедии
Посмотрите статью на википедии про Информация
Объект программирование на Википедии
Посмотрите статью на википедии про Объект программирование
Окно в Париж на Википедии
Посмотрите статью на википедии про Окно в Париж
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*