Русский [ править ]
Корень: -сигнатур-; окончание: -а [Тихонов, 1996] .
Произношение [ править ]
- МФА: [ sʲɪɡnɐˈturə ]
Семантические свойства [ править ]
Значение [ править ]
- матем. , универсальная алгебра заданный на носителе набор операций и отношений, удовлетворяющим некоторой системе аксиом; набор операций, предикатов и отношений, принятых в данной алгебраической системе ◆ Отсутствует пример употребления (см. рекомендации ).
- матем. , линейная алгебрачисловая характеристикаквадратичной формы или псевдоевклидова пространства, в котором скалярное произведение задано с помощью соответствующей квадратичной формы ◆ Отсутствует пример употребления (см. рекомендации ).
- полигр.цифра, порядковыйномер печатного листа издания, помещаемый на первой и третьей его страницах для контроля ◆ Отсутствует пример употребления (см. рекомендации ).
- фарм.ярлычок на приготовленном в аптеке лекарстве, представляющий собою копию рецепта, либо часть рецепта с указанием способа употребления лекарства ◆ Отсутствует пример употребления (см. рекомендации ).
Синонимы [ править ]
Антонимы [ править ]
Гиперонимы [ править ]
Гипонимы [ править ]
Родственные слова [ править ]
Этимология [ править ]
Происходит от лат. signatura «обозначение», далее из лат. signum «знак, отметка», из праиндоевр. *sekw- «указывать».
Фразеологизмы и устойчивые сочетания [ править ]
- сигнатура атаки
- сигнатура файла
- сигнатура функции
Что такое сигнатура функции? Signature (сигнатура) — это что?

Как известно, интерфейс прикладного программирования, именуемый API, включает в себя библиотеки функций и классов с описанием семантики и сигнатуры (signature) . В данной статье мы поговорим, что же такое сигнатура и для чего она нужна. Об этом написано уже много слов, но мы уверены, что чтение нашего текста тоже не будет для вас бесполезным.
Сигнатура — это часть общего объявления функции, которая позволяет средствам трансляции выполнять идентификацию этой самой функции среди других. В разных языках программирования есть различные представление о сигнатуре (signature).
Сигнатура (signature): какая она бывает?
Существует как сигнатура реализации, так и сигнатура вызова (обычно эти понятия различают).
Signature вызова в большинстве случаев формируется из синтаксической конструкции вызова функции, при этом учитывается сигнатура области её видимости, а также имя функции и последовательность фактических типов аргументов в самом вызове и в типе результата.
Если говорить о сигнатурах (signatures) реализации, то здесь участвуют следующие элементы, входящие в синтаксическую конструкцию объявления функции: — имя; — последовательность формальных типов аргументов; — спецификатор области видимости функции.
Signature в разных языках программирования
В языке программирования С++ простая функция распознаётся компилятором по последовательности типов её аргументов и её имени, что и составляет в данном языке сигнатуру или сигнату функции. И если функция — это метод некоторого класса, то в Signature участвует и имя класса.
Если говорить о языке программирования Java, то тут сигнатура метода составляется из его имени и последовательности типа параметров. То есть тип значение в signature не участвует.
Однако давайте подробнее остановимся на том, зачем нужна сигнатура в JavaScript.
Signature в JavaScript: особенности применения signature
Когда программист на Javascript овладевает самыми глубокими секретами функционального программирования, он всё чаще встречает стрелки с типом, которые написаны над функциями. Первая мысль: «Что такое? Я же мастер по динамически типизированному Javascript, который свободен от ограничений типов».
На самом деле, всё просто, а такие записи не что иное, как сигнатура типов. С помощью signature можно рассказать о функции, причём сама по себе сигнатура значит в функциональном программировании гораздо больше, чем можно подумать.
Почему Signature полезна в коде?
Signature определяет возвращаемые и входящие типы для функции, включая иногда типы, число и порядок аргументов, которые содержатся в функции. Таким образом, signature используется для отслеживания работы функции.
Сигнатура типов основана на системе Хиндли-Милнера. Если вы обнаружите функцию, которая задокументирована Signature и будете уметь понимать её, это даст вам самое наглядное представление о работе данной функции.
Signature и простые функции
Смотрим пример использования signature:
// length :: String → Number const length = s => s.length;В вышеуказанном примере функция принимает строку, возвращая число. И если мы посмотрим на этот участок кода с signature внимательнее, то увидим следующее: 1. Вначале записывается имя функции, потом :: . 2. Далее перед стрелкой signature записывается входящий тип. 3. После этого возвращаемый тип записывается после стрелки signature либо в самом конце.
Собственно говоря, вполне нормально, когда функция имеет множественные signatures, пока это удобно. Но если она становится чересчур гибкой, следует использовать произвольные переменные Хиндли-Милнера.
Выводы о signature
Умение понимать signature полезно как в JavaScript, так и в прочих функциональных языках. И если нам нужно заимствовать любую чистую функцию, мы можем всего лишь обратиться к её signature, чтобы понять, с каким участком кода нам надо работать.
Сигнатура (функции) -- что это в программировании
Сигнатура функции - это описание её заголовка, в которое обычно входят:
- имя функции
- число и тип и порядок следоваения передаваемых в неё параметров (в т.ч. и то как именно они передаются, напр. по ссылке или по значению)
- тип возвращаемого значения
Таким образом, сигнатура - это все что нужно знать (и не более того) о функции вызывающему её коду (т.е. для вызывающего кода важна только сигнатура, сама же реализация может быть черным ящиком).
Примеры
CPU (char* design, int freq)показывает, что метод получает один параметр типа char* и один параметр типа int - при этом функция никаких значений не возвращает (слева от CPU тип возвращаемого значения не указан)
Пример сигнатуры функции, возвращающей значение
public double[] myFunction(int m, int n, int p)-- это функция возвращает double[] (массив вещественных чисел)
Key Words for FKN + antitotal forum (CS VSU):
- сигнатура функции
- что это такое. сигнатура функции определение
- сигнатура определение
Сигнатура функции — Основы PHP
В этом уроке мы научимся работать с сигнатурой функции. Также мы узнаем, как функция принимает и возвращает значения. Мы разберем функции abs() и round() .
Функция abs()
Функция abs() , которая возвращает абсолютное значение, принимает параметр — число. Если вызывать abs() без параметров, то PHP выдаст следующее:
Так интерпретатор сообщает, что функция ожидает один параметр, а мы вызвали ее без параметров.
Параметрами abs() могут быть только числа. Если мы попробуем передать в нее строку, это приведет к следующей ошибке:
Результат вызова этой функции — тоже всегда число. Другая функция может иметь иное число параметров и другие типы параметров. Например, может существовать функция, которая принимает три параметра: число, строку и еще одно число.
Откуда мы знаем, сколько и каких параметров нужно функции abs() и какого типа будет возврат? Мы посмотрели в сигнатуру этой функции. Сигнатура определяет входные параметры и их типы, а также выходной параметр и его тип.
О функции abs() можно почитать в официальной документации PHP . В разделе «Описание» есть такой текст:
Это сигнатура функции и короткое пояснение на русском языке.
Информация расшифровывается так:
- Функция называется abs
- Функция принимает параметр: число (num)
- Функция возвращает число
- Функция возвращает абсолютное значение num
Если параметров больше одного, то передавать их можно только в той последовательности, в которой они определены в сигнатуре. Любая функция возвращает всегда только одно значение. Это ограничение существует на уровне языка, и не может нарушаться.
Аргументы по умолчанию
Рассмотрим функцию round() . Она округляет переданное число:
$result = round(10.25, 0); // 10
Мы передали в нее два аргумента: число и точность округления. 0 означает, что округление будет до целого значения.
Чаще всего нужно округлять именно до целого числа, поэтому создатели функции round сделали второй аргумент необязательным и задали ему внутри функции значение по умолчанию 0 . Значит, можно не указывать второй аргумент, а результат будет тем же:
$result = round(10.25); // 10
А если нужна другая точность, то можно передать аргумент:
$result = round(10.25, 1); // 10.3
Если функция в PHP принимает необязательные аргументы, то они всегда стоят после обязательных. Их количество может быть любым. Это зависит от самой функции. Но такие аргументы всегда идут рядом и в конце списка аргументов.
![]()
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
Об обучении на Хекслете
- Статья «Как учиться и справляться с негативными мыслями»
- Статья «Ловушки обучения»
- Статья «Сложные простые задачи по программированию»
- Вебинар « Как самостоятельно учиться »
Открыть доступ
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно
- 130 курсов, 2000+ часов теории
- 1000 практических заданий в браузере
- 360 000 студентов
Наши выпускники работают в компаниях: