LINUX.ORG.RU

Есть ѣООП, есть !ѣООП. ѣООП это io, self, smalltalk и еще язык великага царя ѣООП анонiмуса.

Все остальное !ѣООП и не рекомендуется к употреблению никому, кто не считает себя приматом.

Как-то так.

anonymous
()
Ответ на: комментарий от Debasher

Нет. Учи матчасть

Метод привязан к объекту или классу. Функция вне класса, принимающая на вход переменную какого-то типа - это просто функция.

И мне сейчас абсолютно лень цитировать книги почему это именно так.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Debasher

но всё это есть и в не-ООП-коде

Т.е. ты уже сам понимаешь, что такое не-ООП-код и тему можно закрывать? ;-)

m0rph ★★★★★
()

Как найти ту тонкую грянь которая разделит ОО-код от иного?

Для начала нужно понять, а зачем вам эту грань понадобилось искать?

Принадлежность системы к ООП, ФП, ЛП и пр. всегда довольно условно.

anonymous
()
Ответ на: комментарий от anonymous

Для начала нужно понять, а зачем вам эту грань понадобилось искать?

чтобы понимать о чём говорят

Debasher ★★★★★
() автор топика
Ответ на: комментарий от heaven__12

как мы инкапсулируем её переменные health и sex?

от кого?
кому они должны быть видны (белый список)?

Debasher ★★★★★
() автор топика
Ответ на: комментарий от Pinkbyte

Метод привязан к объекту или классу. Функция вне класса, принимающая на вход переменную какого-то типа - это просто функция.

То есть CLOS - это не ООП?

hateyoufeel ★★★★★
()
Ответ на: комментарий от anonymous

там просто набор определений
или надо чекать код и на каждое опредление делать +1 если такое есть — и если число больше N — код ОО?

Debasher ★★★★★
() автор топика
Последнее исправление: Debasher (всего исправлений: 1)

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

ckotinko ☆☆☆
()
Ответ на: комментарий от heaven__12

не ясно
структура впринципе не может видеть, это просто данные

Debasher ★★★★★
() автор топика
Ответ на: комментарий от heaven__12

Инкапсуляция

static int x = 0;
void setX(int value)
{
    x = value;
}

полиморфизм
наследование

typedef struct {
    void (*bar)();
} foo;
void xxx(void)
{
}
...
fooInstance->bar = xxx;
deep-purple ★★★★★
()
Ответ на: комментарий от Debasher

а что делает объект объектом?

объективная объективность этого объекта, очевидно же

mbivanyuk ★★★★★
()
Ответ на: комментарий от Gvidon

инкапсуляция

На уровне чего?

полиморфизм

Какой именно?

наследование

Чего, между кем?

Deleted
()

Никак. Инкапсуляция, по большому счету.

arturpub ★★
()
Ответ на: комментарий от Debasher

Класс - та же структура, только какая-то часть данных сокрыта от «внешнего мира». Допустим, я говорю экземпляру структуры man: someMan.kick(). При этом внутри структуры у инкапсулированной переменной health отнимается какое-то значение. Далее я спрашиваю экземпляр: someMan.isAlive() она отвечает да или нет основываясь на своей переменной health. Важно, что при этом класс не демонстрирует всем направо и налево, что у него есть переменная health.

heaven__12
()
Ответ на: комментарий от deep-purple

Не вижу противоречия. Ты написал ООП код. Да, на C можно писать в ООП-стиле, более того, почти все большие проекты на С, которые я видел, объектно-ориентированы по самые помидоры.

Gvidon ★★★★
()
Ответ на: комментарий от deep-purple

А я думал ООП это не стиль

Ты думал неверно. Называть можно как угодно, и реализация тоже может быть самой разной. В основе ООП лежит базовая идея. Следуешь этой идее — используешь ООП.

Gvidon ★★★★
()
Последнее исправление: Gvidon (всего исправлений: 2)

Как найти ту тонкую грянь которая разделит ОО-код от иного?

Это когда ты мыслишь объектами и их взаимодействием, нет императивного кода оторванного от объектов

umren ★★★★★
()
Ответ на: комментарий от arturpub

obj1 посылает сообщение синтаксически не важно как

Как же так — синтаксически объекта нет, а эмпирически(?) он вдруг появился.

deep-purple ★★★★★
()
Ответ на: комментарий от Gvidon

Называть можно как угодно

Так это просто название такое? Вот эти ваши объекты — мыльный пузырь чтоли?

deep-purple ★★★★★
()
Ответ на: комментарий от Debasher

Класс с точки зрения ООП это синглтон-фабрика (ман паттерны).

arturpub ★★
()
Ответ на: комментарий от Debasher

Только если ее можно хранить и посылать ей сообщения. Ну ты понел.

arturpub ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.