LINUX.ORG.RU

История изменений

Исправление GPFault, (текущая версия) :

это классический синтаксический сахар. ничего странного в этом нет.

странного нет, я имел ввиду немного другое: может иметь смысл разделять объявление синтаксического сахара и покрывающих функционал методов. Как именно - не скажу, т.к. не знаю специфики языка. Но общая идея такая:

  • интерфейс включает минимально логически необходимый набор методов, они могут быть не самые удобные, но содержать все необхоимые гибкост (например принимать опциональные аргументы).

  • рядом с интерфейсом объявляется дополнительный код, который этот логичный интерфейс делает более удобным в использовании, добавляя к нему синтаксический сахар. Как именно, зависит от языка. В С# это extension-методы, в С++ это свободные функции в том же namespace.

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

Исходная версия GPFault, :

это классический синтаксический сахар. ничего странного в этом нет.

странного нет, я имел ввиду немного другое: может иметь смысл разделять объявление синтаксического сахара и покрывающих функционал методов. Как именно - не скажу, т.к. не знаю специфики языка. Но общая идея такая:

  • интерфейс включает минимально логически необходимый набор методов, они могут быть не самые удобные, но содержать все необхоимые гибкост (например принимать опциональные аргументы).

  • рядом с интерфейсом объявляется дополнительный код, который этот логичный интерфейс делает более удобным в использовании, добавляя к нему синтаксический сахар. Как именно, зависит от языка. В С# это extension-методы, в С++ это свободные функции в том же namespace. Но суть в тмо что интерфейс описывает логическую модель макимально понятным, пусть и переусложнённым образом, а синтаксический сахар добавлеятся отдельно от объявления интерефейса. Это у меньшает перегруженность интерфейсаи делает его более понимаемым.