[flutter] get_it과 웹소켓 통신의 연동
이번 포스트에서는 Flutter 애플리케이션에서 get_it 패키지를 사용하여 웹소켓 통신을 연동하는 방법에 대해 알아보겠습니다.
get_it 패키지 소개
get_it은 Flutter 애플리케이션의 의존성 관리를 위한 패키지로, 의존성 주입을 단순화하여 코드를 모듈화하고 테스트하기 쉽게 합니다.
get_it을 사용하여 웹소켓 통신 연동하기
먼저, pubspec.yaml
파일에 get_it 패키지를 추가합니다.
dependencies:
get_it: ^7.2.0
이제 get_it을 사용하여 웹소켓 통신을 위한 서비스 클래스를 만들어보겠습니다.
import 'package:get_it/get_it.dart';
import 'package:web_socket_channel/web_socket_channel.dart';
class WebSocketService {
final _channel = GetIt.instance.get<WebSocketChannel>();
void sendMessage(String message) {
_channel.sink.add(message);
}
Stream<dynamic> get receiveStream => _channel.stream;
}
void setupServices() {
GetIt.instance.registerLazySingleton(() => WebSocketChannel.connect(Uri.parse('ws://your-websocket-url')));
GetIt.instance.registerLazySingleton(() => WebSocketService());
}
WebSocketService
클래스는 get_it을 이용하여 WebSocketChannel
인스턴스를 주입받아 메시지 전송(Sending)과 수신(Receiving) 기능을 제공합니다.
마지막으로, 앱이 시작될 때 setupServices
함수를 호출하여 get_it을 설정합니다.
void main() {
setupServices();
runApp(MyApp());
}
결론
get_it을 사용하여 웹소켓 통신을 연동하면 코드를 더 모듈화하고 테스트하기 쉬워집니다. 의존성 주입을 통해 코드의 유연성을 높이고, 앱의 확장성을 향상시킬 수 있습니다.
이상으로 get_it과 웹소켓 통신의 연동에 대해 알아보았습니다. 감사합니다.