The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск языка программирования Rust 1.34"
Отправлено Ordu, 14-Апр-19 16:44 
>> тебе не может запретить писать ООП код на C или на ассемблере
> Можно пожайлуста реализацию полиморфизама на C? Или инкапсуляции?

В качестве примера инкапсуляции в C, ты можешь взять любую функцию любого C'шного API. Или, если ты под инкапсуляцией понимаешь сокрытие членов структуры так, чтобы клиентский код не имел бы к ним доступа, даже если захочет, то это делается очень просто:

// myobject.h
struct MyObject;

struct MyObject* new_myobject();
void myobject_dance(struct MyObject*);
void myobject_die(struct MyObject*);

Ну и так далее.

А насчёт полиморфизма... Ты, как я понимаю, веришь в то, что ООП -- это "инкапсуляция, наследование, полиморфизм"? Алан Кай же рассказывал, что это бред сивой кобылы и считать это определением ООП, это значит не уважать его копирайты на аббревиатуру ООП. Ну, то есть, я утрирую несколько, но суть примерно такая. В точности ты можешь почитать здесь: http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay...

Требовать от ООП программы полиморфизма, это примерно то же самое, что требовать от ООП программы быть написанной на C++. Типа если не C++, значит не ООП. Полиморфизм по типу -- это попытка решить задачи диспатча в ООП статически. Без всякого полиморфизма ты можешь решать их динамически, это хуже только в том смысле, что иногда приводит к накладным расходам во время выполнения. Но это никак не противоречит ООП идеологически.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру