Dart:
Организация кода в функции
Как:
Базовая Функция
В Dart функция определяется с использованием ключевого слова void
, если она не возвращает значение, или иначе указывается тип возвращаемого значения. Вот простая функция, которая выводит приветственное сообщение:
void greet(String name) {
print('Привет, $name!');
}
void main() {
greet('Алиса'); // Вывод: Привет, Алиса!
}
Возвращение Значения
Функции могут возвращать значения. Следующий пример принимает два целых числа в качестве входных данных и возвращает их сумму:
int add(int a, int b) {
return a + b;
}
void main() {
var sum = add(5, 3);
print(sum); // Вывод: 8
}
Анонимные Функции
Dart поддерживает анонимные функции (также известные как лямбда-выражения или замыкания), которые могут быть удобны для коротких, спонтанных функциональностей. Вот как использовать анонимную функцию с методом forEach
списка:
void main() {
var fruits = ['яблоко', 'банан', 'вишня'];
fruits.forEach((item) {
print(item);
});
// Вывод:
// яблоко
// банан
// вишня
}
Синтаксис Стрелки для Функций с Одним Выражением
Для функций, содержащих только одно выражение, Dart предлагает краткий синтаксис с использованием нотации “стрелки” (=>
). Это особенно полезно для коротких функций или передачи функций в качестве аргументов:
int square(int num) => num * num;
void main() {
print(square(4)); // Вывод: 16
}
Использование Сторонних Библиотек
Для более сложных или специализированных функциональностей программисты Dart часто полагаются на сторонние библиотеки. Рассмотрим библиотеку http
для выполнения HTTP-запросов. Сначала добавьте http
в файл pubspec.yaml в раздел зависимостей:
dependencies:
http: ^0.13.3
Затем вы можете использовать его для получения данных из Интернета:
import 'package:http/http.dart' as http;
Future<void> fetchUserData() async {
var response = await http.get(Uri.parse('https://api.example.com/users/1'));
print(response.body);
}
void main() {
fetchUserData();
// Ожидаемый вывод: JSON данные пользователя. Фактический вывод будет зависеть от ответа API.
}
Помните, организуя ваш код в Dart в функции, думайте о возможности повторного использования, ясности и принципе единственной ответственности. Это не только делает ваш код чище, но и проще для понимания и поддержки другими людьми (и вами в будущем).