The OpenNET Project / Index page

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



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

Оглавление

Вторая редакция патчей для ядра Linux с поддержкой языка Rust, opennews (?), 05-Июл-21, (0) [смотреть все]

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


23. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  –10 +/
Сообщение от Аноним (23), 06-Июл-21, 00:20 
ура, наконец линукс пошел в верную сторону - инновации !

пора и ООП в ядро вводить !

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

24. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +6 +/
Сообщение от Онаним (?), 06-Июл-21, 00:21 
Да и вообще переписать на жаваскрипте, чего уж там.
Ответить | Правка | Наверх | Cообщить модератору

51. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +3 +/
Сообщение от Ordu (ok), 06-Июл-21, 01:43 
> пора и ООП в ядро вводить!

Давно уже там. Загугли kobject. Но даже до kobject'а существовали character и block девайсы, которые по сути абстрактные классы с методами использующими динамический диспатч. И реализованы они при помощи vtable -- таблички указателей на функции. Если ты заглянешь в код vfs, ты увидишь там как vtable vtable'ом vtable vtable vtable vtable. Ну, а как ещё ты реализуешь единую абстракцию файла для файлов лежащих на разных файловых системах, для специальных файлов, типа пайпов, фифо, unix-сокетов, девайс-нодов, среди которых есть символьные (и их подтип tty) и блочные? Ах да, ещё же есть /proc, с кучей файлов, каждый из которых имеет свой собственный набор методов open/read/write/close.

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

58. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +2 +/
Сообщение от Ivan_83 (ok), 06-Июл-21, 02:04 
Чувак просто думает что ООП это классы в крестах.
Он же не понимает что даже описатель файла + все функции куда оно засовывается в вин95 это уже ООП.
Ответить | Правка | Наверх | Cообщить модератору

93. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  –1 +/
Сообщение от lockywolf (ok), 06-Июл-21, 05:47 
Closures are poor man's objects.
Ответить | Правка | Наверх | Cообщить модератору

290. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (290), 06-Июл-21, 18:25 
А при чем тут замыкания?
Ответить | Правка | Наверх | Cообщить модератору

333. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (192), 06-Июл-21, 22:38 
Казалось бы, при чем тут корень слова "зам(ы/о)к", даже если расшифровать аббревиатуру ООП, и еще немного подумать.

А не просто тупо повторять мантру Буча более чем 20-ти летней давности с примерами на первых версиях Java, специально разработанной тогда для тех, кто не осилил тогда С++, даже без дженериков(templates), для тех, кто не знал про Smalltalk, и прочих малоизвестных тогда языках, а другие из ныне популярных если и были, то тогда еще только в зародышах.

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

332. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +1 +/
Сообщение от Аноним (192), 06-Июл-21, 22:28 
> Чувак просто думает что ООП это классы в крестах.
> Он же не понимает что даже описатель файла + все функции куда оно засовывается в вин95 это уже ООП.

Чувак все правильно думает. Что ООП - это про объекты, а не про классы.

Про "классы в крестах" подумали вы, и пошли дальше свою мысль развивать, ничего больше не замечая вокруг.

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

226. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (266), 06-Июл-21, 14:27 
>которые по сути абстрактные классы с методами использующими динамический диспатч. И реализованы они при помощи vtable -- таблички указателей на функции

Только с инкапсуляцией беда. Чтобы проинициализировать указатели на функции, нужно сначала эти функции с глобально видимыми именами сделать.

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

247. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +1 +/
Сообщение от Ordu (ok), 06-Июл-21, 15:19 
Не, не надо.

static int my_method(struct my_struct *this) { ... }

static struct my_vtable vtable = {
    .method = my_method;
};

// единственная extern функция
void initialize_my_struct(struct my_struct *this) {
    this->vtable = vtable;
}

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

249. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (266), 06-Июл-21, 15:24 
my_method не глобальное имя?
Ответить | Правка | Наверх | Cообщить модератору

250. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Ordu (ok), 06-Июл-21, 15:36 
> my_method не глобальное имя?

static, написано же. Только в одном модуле компиляции доступна. Грубо говоря, в одном .c файле работает. poor man's namespaces

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

334. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (192), 06-Июл-21, 22:40 
Слепой слепых ведет.
Ответить | Правка | Наверх | Cообщить модератору

329. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (192), 06-Июл-21, 22:24 
С инкапсуляцией во всех языках (кроме совсем реликтовых)
- даже в тех, которые официально не считаются объектными!

Если понимать, что такое инкапсуляция на самом деле, и как ее готовить.

А если не понимать, то можно запросто промазать с инкапсуляцией даже в "классических".
Не заметить этого, и шпарить дальше, а потом удивляться, почему над вами смеются.

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

70. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +2 +/
Сообщение от Аноним (68), 06-Июл-21, 02:45 
Так в Rust нет ООП? Точнее наследования нет в чистом виде, а перечисления
и вызов по ссылке есть и в обычном C.

Так что слышал звон, но не разобрался. Поди почитай книжку.

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

151. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноньимъ (ok), 06-Июл-21, 10:36 
Наследование к ООП никакого отношения не имеет. Вы путаете ООП с системой типов Страуструпа.
Ответить | Правка | Наверх | Cообщить модератору

160. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (160), 06-Июл-21, 11:07 
>Наследование к ООП никакого отношения не имеет.

Тут бы вам привести пару примеров ООП языков без наследования.
И вот чего сразу Страуструп. Что скажете (в контексте ООП и наследования) про Java, Python, C#, ObjectPascal ?

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

182. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноньимъ (ok), 06-Июл-21, 12:48 
>Тут бы вам привести пару примеров ООП языков без наследования

Что такое по вашему "ООП язык" ?
Ну пусть лисп схема будет например, хотя и коммон лисп подходит, если не считать clos частью языка.

Причём тут вообще язык? Наследование удобный механизм, но он не нечто концептуально неотделимое от ООП.

В ракет схеме например структуры могут наследовать друг друга, это ООП или не ООП?

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

348. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  –1 +/
Сообщение от Аноним (192), 07-Июл-21, 02:27 
Наследование противоречит инкапсуляции. Нифига оно неудобно.
Оно лишь достаточно примитивно для понимания средне-статистическим мясо-кодером.

Что такое ООП следует из его названия. Если не вводить лишних сущностей и понятий, когда их нет.
Все остальное - лишь добавки к ООП, либо его частные случаи.

Само ООП не является тоже Святым Граалем, поскольку оно не единственно возможный базис.
Хотя с точностью до определенных противоречий вполне самодостаточный.
С определенными хаками из ортогональных базисов - очень самодостаточный вместе с этим хаками, и легко осваиваемый без какой либо предварительной подготовки, этим и объясняется его популярность. Его можно освоить даже, не умея читать и считать. Собственно обучение письму и счету, и подразумевает уже загруженную библиотеку ООП.

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

411. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Прохожий (??), 08-Июл-21, 05:27 
Какую несусветную чушь ты здесь несёшь. Каким образом наследование противоречит инкапсуляции? И почему ты решил, что оно неудобно? Неосилятор?

Популярность ООП обусловлена не лёгкостью его освоения, это бред. Оно обусловлено прежде всего относительной лёгкостью моделирования сущностей реального мира.

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

420. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (418), 08-Июл-21, 11:04 
> Какую несусветную чушь ты здесь несёшь. Каким образом наследование противоречит инкапсуляции?
> И почему ты решил, что оно неудобно? Неосилятор?

Если эти вопросы перенаправить вам, в вашу сторону, вы сразу запутаетесь.
Видно, что вы даже не думали о сути тех вещей, которые фигурируют в ваших вопросах.

> Популярность ООП обусловлена не лёгкостью его освоения, это бред. Оно обусловлено прежде всего относительной лёгкостью моделирования сущностей реального мира.

Вы выдаете себя своим отношением к "моделированию". Да еще и целого "реального мира"!
То есть "сущности" самого ООП к "реальному миру" вы не относите. У вас "реальный мир" отдельно, а ООП отдельно. Очень типичное восприятие дилетантов ООП.

(Сразу предсказываю, при попытке оправдываться обычно еще больше запутываются, так что подумайте хорошенько сначала, прежде чем в бешенстве начнете что-то отвечать.)

Да, настоящее ООП, которое "про объекты" таким как вы, бывает освоить очень не легко.
Если вам вам трудно было освоить даже не_настоящее ООП, за "удобство" (для вас) которого вы держитесь - тогда настоящее ООП.

Но есть люди, которым легко осваивать! И это определяется сразу. Чем труднее вам, тем легче им.

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

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

428. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (-), 08-Июл-21, 12:40 
> Оно обусловлено прежде всего относительной лёгкостью моделирования сущностей реального мира.

Ага, сферической формы и (желательно) в вакууме ...

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

271. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (266), 06-Июл-21, 16:42 
Три столпа ООП:
- наследование;
- инкапсуляция;
- полиморфизм.
Ответить | Правка | К родителю #151 | Наверх | Cообщить модератору

303. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +2 +/
Сообщение от Анонимemail (303), 06-Июл-21, 20:01 
Накостылирование, инкостылировпние, поликостылирование
Ответить | Правка | Наверх | Cообщить модератору

413. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Прохожий (??), 08-Июл-21, 05:33 
Ещё один неосилятор.
Ответить | Правка | Наверх | Cообщить модератору

426. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (418), 08-Июл-21, 11:56 
Еще один такничегоинепониматор.
Ответить | Правка | Наверх | Cообщить модератору

323. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +1 +/
Сообщение от Аноним (192), 06-Июл-21, 21:28 
Вас обманули школьные преподаватели, преподавателей которых обманывали Паскалем.
А эти "новые" остались в школе, думая что они в программировании все поняли, пока тоже там не состарились.

Это очень старое заблуждение, на котором поимели в свое время очень много бабла и хайпа пока не успокоились и не разобрались.

ООП - это любое! _объектно_ ориентированное, то есть все, где есть объекты (а где их нет?).

Наследование - это (из) наследуемо-ориентированное программирование.
Инкапсуляция - это (из) инкапсулированно-ориентированное программирование.
Полиморфизм - это (из) полиморфно-ориентированное программирование.

И даже
классы - классово-ориентированное программирование.

Вообще, британские ученые после запуска Хаббла и Коллайдера обнаружили еще 10500 различных видов программирования, и образовательная система уже готова к следующему столетию изучить еще пять наиболее часто встречающихся видов после первых трех.

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

412. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Прохожий (??), 08-Июл-21, 05:32 
Ну и бред. Надо великого анонимного эксперта с Опеннета слушать? Смешно.
Ответить | Правка | Наверх | Cообщить модератору

421. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (418), 08-Июл-21, 11:08 
> Ну и бред. Надо великого анонимного эксперта с Опеннета слушать? Смешно.

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

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

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

325. "Вторая редакция патчей для ядра Linux с поддержкой языка Rus..."  +/
Сообщение от Аноним (192), 06-Июл-21, 22:00 
Ах, так во вы про что:

>> пора и ООП в ядро вводить !

Ну да, он все правильно понял.
Если вы надеялись, что вам можно будет его (настоящее ООП, а не то как вы его понимали) не учить, и все для вас останется по прежнему - увы.

> Так в Rust нет ООП?

Таки получается есть! (Несколько человек тут вам уже объяснили)

> Точнее наследования нет в чистом виде,
> а перечисления и вызов по ссылке есть и в обычном C.

Это как раз тот самый "звон".

> Так что слышал звон, но не разобрался. Поди почитай книжку.

Так что получается, вы это сказали про себя самого.

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

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

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




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

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