Что такое тривиальная абстракция (Leaky abstraction Context) - PullRequest
0 голосов
/ 06 декабря 2018

Я читал статью Закон об утечках , и я читал что-то, говорящее

Все нетривиальные абстракции, в некоторой степени, протекают.

Так, что означает Тривиальная абстракция?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Слово тривиальное используется для его общего словарного определения.Это не имеет ничего общего с C ++ (или математикой).

Trivial

  • малой ценности или важности.
  • синонимы : неважно, незначительно, несущественно, незначительно.

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

0 голосов
/ 06 декабря 2018

У меня есть ощущение, что этот вопрос будет помечен как спорный или что-то в этом роде, но я собираюсь попытаться ответить любым способом:

В контексте статьи «утечка» в абстракции не являетсяутечка памяти, а точнее, абстракция, страдающая от ограничений базовой реализации.

Чем больше вы пытаетесь скрыть базовую реализацию, тем менее «тривиальной» становится абстракция - тем больше работы она выполняет.

Итак, мне кажется, что «тривиальная» абстракция - это такая, которая на самом деле не делает ничего, кроме того, что делает базовая реализация.

Взяв первый пример статьи - тривиальная абстракциядля IP будет какая-то библиотека, которая позволит вам легко создавать IP-пакеты, не собирая один байт за байтом, но ничего больше не будет делать - без повторов, без протокола проверки доставки, без нумерации пакетов для повторной сборки в порядке, как это делает TCP.

Но, в конце концов, так как статья не предоставляет ACОпределение слова «тривиальный» и «нетривиальный» находится в глазах смотрящего.Вы судите, где находится строка, и сколько абстракции нужно добавить поверх абстрагированной реализации, прежде чем она станет нетривиальной ...

Кстати, это не специфический для C ++ вопрос.

...