Эталонная реализация

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Эталонная реализация (от англ. reference implementation) (реже используется образец реализации (sample implementation) или модель реализации (model implementation)) — реализация программного обеспечения, точно соответствующая спецификации некоторого стандарта (например, сетевого протокола, алгоритма кодирования или языка программирования), либо созданная для демонстрации этой спецификации в действии.

Цели создания эталонной реализации:

  • доказать реализуемость и адекватность задаче предлагаемого стандарта;
  • предоставить пример для сравнения с последующими реализациями, внесения изменений и дополнений;
  • выявить и исправить недостатки изначальной спецификации.

Нижеследующий пример демонстрирует такую спецификацию:

« Эталонная реализация есть, вообще говоря, реализация спецификации, используемая в качестве определенной интерпретации данной спецификации. В процессе разработки ... соответствующего тестового пакета необходима по крайней мере одна относительно надежная реализация каждого интерфейса для (1) обнаружения ошибок и двусмысленностей в самой спецификации, и (2) проверки корректности функционирования самого тестового пакета.[1] »
« Характеристики Эталонной Реализации: (1) Разработана одновременно со спецификацией и тестовым пакетом; (2) Демонстрирует, что спецификация реализуема; (3) Служит образцом при тестировании других реализаций тестовым пакетом; (4) Служит «Золотым Стандартом» при измерении других реализаций; (5) Улучшает наглядность спецификации, когда специально подготовленные тесты не подходят.[2] »

Эталонная реализация может как служить, так и не служить эталоном качества продукта. Например, эталонная реализация стандарта MP3 от организации Fraunhofer обычно не выдерживает никакого сравнения с другими реализациями, как например, LAME, в тестах на прослушивание, которые направлены на определение качества звука[источник не указан 59 дней].

Эталонная реализация может как быть промышленно применимым продуктом (BIND, ISC DHCPD), так и служить чистым «доказательством концепции». Эталонные реализации также могут быть запрещены для коммерческого использования лицензионным соглашением. Например, сервер приложений Sun Microsystems Java EE RI в учебной литературе упоминается как один из наилучших продуктов для Java EE. Однако он не может быть лицензирован для производственных целей.

Примечания[править | править исходный текст]

  1. Dalci, Eric; Fong, Elizabeth; Goldfine, Alan (2003). Requirements for GSC-IS Reference Implementations. National Institute of Standards and Technology, Information Technology Laboratory. [1]  (англ.)
  2. Curran, Patrick (2003). Conformance Testing: An Industry Perspective. Sun Microsystems. [2]  (англ.)