The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Нарушена работа поиска пакетов по Python-репозиторию PIP, opennews (??), 30-Дек-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


71. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +2 +/
Сообщение от A.Stahl (ok), 31-Дек-20, 08:29 
В Си нет struct? Чего тебе ещё ООП-специфичного сильно не хватает?
Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

82. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +2 +/
Сообщение от Аноним (82), 31-Дек-20, 09:50 
В struct нет нормальной икапсуляции для методов. Нет наследования вообще.
Ответить | Правка | Наверх | Cообщить модератору

89. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +5 +/
Сообщение от A.Stahl (ok), 31-Дек-20, 10:51 
Наследование заменяется композицией в большинстве случаев без каких-либо проблем.
Нормальной инкапсуляции нет, но в масштабе небольших Си программ это не трагедия.
В общем жить можно и без сахара. Просто не так сладко.
Ответить | Правка | Наверх | Cообщить модератору

92. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (92), 31-Дек-20, 11:51 
Проблема сладкоежек, сугубо их проблема. Почему отсутствие ООП - совершенно другой парадигмы должно считаться каким-то недостатком? Структурная парадигда полностью самодостаточна.
Ответить | Правка | Наверх | Cообщить модератору

95. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (82), 31-Дек-20, 12:08 
А зачем тогда мучаться, если есть C++?
Ответить | Правка | К родителю #89 | Наверх | Cообщить модератору

96. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от A.Stahl (ok), 31-Дек-20, 12:12 
Да 100500 причин: от "тут так принято" и "потому что 99% проекта уже написано на Си" до "не знаю я никаких ваших плюсов, деды писали на Си, вот и я пишу на Си"


Ответить | Правка | Наверх | Cообщить модератору

102. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +1 +/
Сообщение от Аноним (102), 31-Дек-20, 13:02 
Томпсон терпел и нам велел!
Ответить | Правка | К родителю #95 | Наверх | Cообщить модератору

97. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  –1 +/
Сообщение от lockywolf (ok), 31-Дек-20, 12:54 
Наследование делается через member field.

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

Полиморфизм делается через union.

Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

104. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (-), 31-Дек-20, 13:35 
Наследование классов - зло. Нормальным является только наследование интерфейсов
Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

126. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (82), 01-Янв-21, 11:07 
Множественное наследование - зло, линейное - естественно.
Ответить | Правка | Наверх | Cообщить модератору

129. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  –1 +/
Сообщение от Аноним (129), 01-Янв-21, 12:06 
> Множественное наследование - зло, линейное - естественно.

Гораздо прикольнее когда кто-нибудь оверрайд операторов сделает. После этого любой obfuscated C code contest отдохнет - код, вроде, как на ладони но делать может ну вот вообще совсем не то что вы там себе вообразили.

Ответить | Правка | Наверх | Cообщить модератору

128. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (-), 01-Янв-21, 12:04 
> В struct нет нормальной икапсуляции для методов.

Указатель на функцию тебе в рожу, гомоморфный.

Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

141. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (82), 01-Янв-21, 19:10 
И что? Это, всё равно, приводит к реализации этих функций с длинными глобальными именами, чтобы те указатели ими проинициализировать. И ручками передавать указатель на экземпляр самой стоуктуры, вместо того, чтобы это делал компилятор.
Ответить | Правка | Наверх | Cообщить модератору

146. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (-), 03-Янв-21, 17:56 
> И что? Это, всё равно, приводит к реализации этих функций с длинными
> глобальными именами, чтобы те указатели ими проинициализировать.

Имена будут ровно такие как напишешь.

> И ручками передавать указатель на экземпляр самой стоуктуры, вместо того, чтобы это делал компилятор.

Кто ж это ручками указатели то прописывает, кроме очень сильно некоторых случаев? Так то их тоже компилятор заполнит.

Более того - с указателями то на функцию можно и чего поинтереснее, типа "динамического импорта" из вон той либы (и вообще куска кода). А попробуй так с твоим си++, расскажешь как получилось.

Ответить | Правка | Наверх | Cообщить модератору

142. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (82), 01-Янв-21, 19:12 
Я же сказал _нормальной_, а не костыльной.
Ответить | Правка | К родителю #128 | Наверх | Cообщить модератору

147. "Нарушена работа поиска пакетов по Python-репозиторию PIP"  +/
Сообщение от Аноним (-), 03-Янв-21, 17:57 
> Я же сказал _нормальной_, а не костыльной.

Ну, э, получается что все .so'шки/DLL-ы, особенно с импортируемыми в рантайме функциями - костыль? Вы не слишком там расшумелись, вебабизянки?

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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