Flutter5 비동기 진화사: async/await은 정말 비동기일까? // 가짜 API 호출Future fetchUserData() async { await Future.delayed(Duration(seconds: 2)); return '사용자 데이터';}Future loadData() async { print('데이터 로딩 시작'); String user = await fetchUserData(); print('받은 데이터: $user'); print('데이터 로딩 완료');}void main() async { await loadData();} 이 코드를 살펴보자, 이 코드는 비동기일까 동기일까?async / await 키워드가 사용되었으므로 당연히 비동기 동작이다. 하지만 뭔가 이상하다. 이 코드를 dartpad에서 실행시켜보면 아래와 같이 실행된.. 2025. 7. 24. [Flutter]Instance member can't be accessed using static access. 문제:ApiService의 getTodaysToons method를 다른 클래스에서 호출하려 했더니 제목의 에러가 발생함. 에러 뜻풀이:인스턴스 멤버는 정적 접근으로 사용할 수 없다.인스턴스 멤버: 클래스의 객체를 생성해야만 사용할 수 있는 변수나 메서드정적 접근: 클래스 이름으로 직접 접근하는 방식 (객체 생성 없이)즉, 위 상황에서 ApiService의 멤버 함수인 getTodayToons는ApiService의 객체를 통해서만 접근이 가능한데객체를 생성하지 않고 접근하려 하기 때문에 에러가 발생하는 것이다. 인스턴스를 생성하는 방법은 ApiService 뒤에 ()를 붙여 생성자를 호출하면 된다.처리해주면 이렇게 에러가 사라진 모습을 볼 수 있음 만약 getTodayToons 메서드에 정적으로 접근하.. 2025. 7. 19. [Flutter]app_time_stats 자꾸 디버그 창에 1초에 한번씩 뜨길래 한번 찾아보았다. 결론부터 말하자면 Android 에뮬레이터의 그래픽 성능 로그라고 한다.버튼 누르기나, 화면 스크롤 등의 동작을 통해 앱이 화면을 업데이트할 때마다에뮬레이터가 이번엔 화면 그리는데 몇 밀리초 걸렸나? 를 측정해서 로그로 찍어주는 것 스택 오버플로우에 따르면 해당 라인을 클릭해서 아래와 같이 안나오게 설정할 수 있다고 한다. https://stackoverflow.com/questions/70376084/why-am-i-seeing-egl-emulation-app-time-stats-in-the-log-when-running-on-an-andro Why am I seeing EGL_emulation app_time_stats in the log wh.. 2023. 12. 8. [Error] Error launching application on sdk gphone64 arm64. avd에서 wipe data 해주면 해결 https://poruttugi.tistory.com/9 Error launching application on sdk gphone x86 arm cmd : Can't find service: activity Error: ADB exited with code 1 Performing Streamed Install Error Launching application on sdk gphone x86 arm 플러터로 개발하다보면 갑자기 이런 에러메세지가 나오면서 안되는 경우가 있다. 원 poruttugi.tistory.com 2023. 9. 27. 다트 기초(C언어와의 차이점을 중심으로) 이 글은 제가 유일하게 아는 언어인 C언어와 구별되는 Dart의 특징적 개념만을 정리하였으므로 프로그래밍 자체가 처음이신 분들은 이해하기 어려울 수 있습니다. dynamic type vs var type 둘 다 데이터 타입을 명시적으로 지정하지 않고, 컴파일러가 할당된 값의 데이터 타입을 기반으로 타입을 추론하도록 한다. 이로써 코드를 간결하게 작성할 수 있는 장점이 있다. 그러나 var type으로 선언된 변수는 한 번 초기화했을 당시의 자료형만 계속 쓸 수 있다. var name = 12; // 위와 같이 integer로 초기화되어 있다면 // name이라는 변수에는 string이나 bool 같은 자료형의 데이터는 저장할 수 없다. name = 43; [O] name = 'string'; [X] na.. 2023. 9. 3. 이전 1 다음