The OpenNET Project / Index page

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



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

Оглавление

Исправление в ядре Linux привело к проблемам с некоторыми графическими планшетами, opennews (??), 05-Ноя-23, (0) [смотреть все]

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


12. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Аноним (12), 05-Ноя-23, 19:19 
Юнит-тесты - это слишком смузивато. Диды не какие-нибудь там смузилюбители.
Ответить | Правка | Наверх | Cообщить модератору

21. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +1 +/
Сообщение от Tron is Whistling (?), 05-Ноя-23, 19:46 
Юнит-тесты - это смузивато, факт. Оно годно только там, где логика более-менее линейная.
Ответить | Правка | Наверх | Cообщить модератору

100. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  –1 +/
Сообщение от Аноним (100), 06-Ноя-23, 05:25 
Оно годно там, где соблюдаются принципы проектирования ПО.

Понятно, что код с цикломатической сложностью 100500 покрыть тестами невозможно. Но такой код и вручную оттестировать невозможно. В любом случае, итог - баги вылезут у конечных пользователей.

Просто не надо так писать, надо уметь в декомпозицию. Это тот же unix way, только не на уровне программы, а на уровне ее модулей.

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

110. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Tron is Whistling (?), 06-Ноя-23, 09:00 
Декомпозиция декомпозиции рознь. Овердекомпозиция, которая сейчас в моде - лютейшее зло, потому что вместо логики получается лапша из 100500 бессмысленных в отрыве сущностей.

В итоге вылезают трудноустранимые косяки, просто уже не в самих сущностях (покрыть три строчки юнит-тестами действительно проблем нет), а в монструозной финальной рекомпозиции этих сущностей. Потому что тот, кто весь этот хлам потом пытается собрать воедино - не представляет вообще, что там через 100500 уровней декомпозиции делается.

Ну и плюс юнит-тесты - не панацея, всех возможных комбинаций входных данных и состояния вы всё равно не учтёте. Теоретическое моделирование и алгоритмическое тестирование юнит-тестами не заменить.

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

119. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +1 +/
Сообщение от Аноним (119), 06-Ноя-23, 10:18 
Это проблема неправильной декомпозиции. Любую идею можно довести до бреда.

Да, правильно мало кто делает. Потому что этому очень сложно научить. Тут только опыт и интуиция.

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

139. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Tron is Whistling (?), 06-Ноя-23, 14:24 
> Это проблема неправильной декомпозиции. Любую идею можно довести до бреда.

К сожалению, всё современное смузихлёбство именно такой бред и представляет.


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

140. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Аноним (119), 06-Ноя-23, 14:47 
это проблемы смузихлебов
Ответить | Правка | Наверх | Cообщить модератору

111. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  –1 +/
Сообщение от Tron is Whistling (?), 06-Ноя-23, 09:02 
Про итог согласен. Хоть что делай, баги всё равно вылезут.
В ядре я честно говоря не вижу _больших_ проблем с декомпозицией, учитывая не-ООП. Всё более-менее стройно.
Ответить | Правка | К родителю #100 | Наверх | Cообщить модератору

124. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Шарп (ok), 06-Ноя-23, 12:04 
> учитывая не-ООП

Анти ООП борцуны как всегда веселят. Linux написан в ООП стиле Object-oriented design patterns in the kernel https://lwn.net/Articles/444910/

Ты же не настолько маня, чтобы думать, что ООП это когда в языке есть ключевое слово class, а если этого слова нет, то значит код не ООП.

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

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

137. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  –1 +/
Сообщение от Tron is Whistling (?), 06-Ноя-23, 14:09 
Для начала хотя бы оригинал прочитай, чего там в "patterns".
Да, кое-что притянуто, но в целом это low-level no-OOP structure mangling.
То, что оно низкоуровневую реализацию ООП напоминает, не важно - сахарка нет совсем.
Ответить | Правка | Наверх | Cообщить модератору

144. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Аноним (144), 06-Ноя-23, 16:58 
> в целом это low-level no-OOP structure mangling.

Когда не в зуб ногой, но пыли в глаза напустить надо...

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

158. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  –1 +/
Сообщение от Tron is Whistling (?), 07-Ноя-23, 19:44 
Ну нет, так нет.
Продолжайте стенания.
Ответить | Правка | Наверх | Cообщить модератору

149. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Аноним (149), 06-Ноя-23, 19:33 
Лишь бы C++ не использовать! Пацан сказал - пацан сделал!
Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

55. "Исправление в ядре Linux привело к проблемам с некоторыми гр..."  +/
Сообщение от Аноним (55), 05-Ноя-23, 22:34 
А ещё лучше если юнит-тесты используются с BDD подходом и то, для библиотек, которые множество раз могут переиспользоваться.
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

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

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




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

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