Программирование дротиков - Функции

Функции - это строительные блоки читаемого, поддерживаемого и повторно используемого кода. Функция - это набор операторов для выполнения определенной задачи. Функции организуют программу в логические блоки кода. После определения функции могут быть вызваны для доступа к коду. Это делает код многоразовым. Более того, функции позволяют легко читать и поддерживать код программы.

Объявление функции сообщает компилятору об имени функции, типе возвращаемого значения и параметрах. Определение функции предоставляет фактическое тело функции.

Старший Нет Функции и описание
1 Определение функции

Определение функции указывает, что и как будет выполняться конкретная задача.

2 Вызов функции

Функция должна быть вызвана для ее выполнения.

3 Возврат функций

Функции также могут возвращать значение вместе с управлением обратно вызывающей стороне.

4 Параметризованная функция

Параметры - это механизм передачи значений функциям.

Дополнительные параметры

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

В Dart есть три типа необязательных параметров:

Старший Нет Параметр и описание
1 Дополнительный позиционный параметр

Чтобы указать необязательные позиционные параметры, используйте квадратные скобки [].

2 Необязательный именованный параметр

В отличие от позиционных параметров, имя параметра должно быть указано во время передачи значения. Фигурную скобку {} можно использовать для указания необязательных именованных параметров.

3 Необязательные параметры со значениями по умолчанию

Параметрам функции также могут быть присвоены значения по умолчанию. Однако такие параметры также могут быть явно переданными значениями.

Рекурсивные функции Dart

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

пример

void main() { 
   print(factorial(6));
}  
factorial(number) { 
   if (number <= 0) {         
      // termination case 
      return 1; 
   } else { 
      return (number * factorial(number - 1));    
      // function invokes itself 
   } 
}

Должно получиться следующее output -

720

Лямбда-функции

Лямбда-функции - это краткий механизм для представления функций. Эти функции также называются функциями стрелок.

Синтаксис

[return_type]function_name(parameters)=>expression;

пример

void main() { 
   printMsg(); 
   print(test()); 
}  
printMsg()=>
print("hello"); 

int test()=>123;                       
// returning function

Должно получиться следующее output -

hello 123