Как лучше всего объяснить термин «универсальный»? - PullRequest
2 голосов
/ 20 апреля 2009

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

Ответы [ 5 ]

7 голосов
/ 20 апреля 2009

Корень такой же, как «род» - это означает описание всех членов группы связанных вещей.

В терминах программирования это означает, что вы описываете целый набор вещей, которые имеют общий шаблон или шаблон, только с небольшими вариациями. Шаблоны C ++ и обобщения Java для программиста более или менее одно и то же: способ сказать: «какой бы ни был базовый тип, я хочу иметь возможность делать эти вещи». Методы реализации различны, но идея та же.

Так что идея сама по себе несколько общая.

2 голосов
/ 20 апреля 2009

Хотите ли вы «общее» определение или в определенном контексте?

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

В некоторой степени это является основой для объектно-ориентированного программирования. Однако многие языки программирования используют термин «универсальный» в гораздо более ограничительном смысле. В этих языках универсальный класс может быть строго типизирован во время выполнения для любого класса, который реализует известный «интерфейс» (в общем смысле ...), с которым подписчик знает, как взаимодействовать. Языки сильно различаются в зависимости от того, как они реализуют и поддерживают это, поэтому конкретные примеры могут не дать гораздо большего понимания, если вы заранее не определите нужный язык.

2 голосов
/ 20 апреля 2009

Пример использования контраста.

Определенно: StringCollection - это коллекция в .Net, которая может содержать только строки.

Generic: Generic.List (Of T) - это коллекция в .Net, которая может содержать любой тип данных T.

1 голос
/ 20 апреля 2009

Другое название для Generics - Параметризованные Классы. Я считаю, что UML использует этот термин.

0 голосов
/ 20 апреля 2009

A универсальный класс используется для определенной цели

...