본문 바로가기

flutter36

플러터 - Isolate 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 퓨처와 스트림은 한 줄기 수행 흐름에서 비동기 처리를 합니다. 다트 애플리케이션은 메인 함수부터 실행되는데 이 메인 함수의 수행 흐름을 메인 아이솔레이트(또는 루트 아이솔레이트)라고 합니다. 이 메인 아이솔레이트에서 퓨처나 스트림 등의 비동기 처리가 수행됩니다. 만약 메인 아이솔레이트 하위에 새로운 수행 흐름을 만들고 싶다면 별도의 아이솔레이트를 만들어야 합니다. 이처럼 새로운 아이솔레이트를 만들려면 spawn() 함수를 이용합니다. 그리고 아이솔레이트에서 처리할 로직은 함수로 작성합니다. 이 함수는 클래스의 맴버로 선언할 수도 있.. 2023. 3. 13.
플러터 - Future, FutureBuilder 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 퓨처 — Future 다트 언어에서 제공하는 Future, Stream, await, async는 모두 비동기 프로그래밍을 지원하는 기능입니다. 비동기 프로그래밍이란 시간이 오래 걸리는 작업을 실행한 후 끝날 때가지 기다리지 않고 다음 작업을 실행하는 것입니다. 비동기 프로그래밍과 반대되는 개념은 동기 프로그래밍으로 어떤 작업을 실행하고 끝날 때까지 기다렸다가 그다음 작업을 수행하는 것입니다. 먼저 동기로 실행되는 예를 들어 비동기 프로그래밍이 왜 필요한지 알아보겠습니다. 다음 코드에서 버튼을 클릭하면 onPress() 함수가 호출.. 2023. 3. 13.
플러터 - dio 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 앞에서 서버와 HTTP 통신할 때 http 패키지를 이용하는 방법을 알아봤는데, 만약 더 많은 기능을 제공하는 패키지가 필요하다면 dio가 있습니다. dio를 사용하는 구체적인 방법은 pub.dev/packages/dio에서 확인할 수 있으며 여기서는 기본 사용법만 소개하겠습니다. 우선 dio 패키지를 이용하려면 pubspec.yaml 파일에 다음처럼 추가합니다. dependencies: dio: ^4.0.4 간단하게 GET 방식으로 서버에 요청하는 코드는 다음과 같습니다. Dio 객체의 get() 함수를 호출하여 서버에 요청하며 .. 2023. 3. 13.
플러터 - Navigation 본 글은 [Do it! 깡샘의 플러터&다트 프로그래밍] 의 내용을 발췌한 것입니다. 책의 모든 내용을 저자 직강으로 진행한 강의는 ssamz.com 에서 들으실 수 있습니다. 라우트 이해하기 플러터에서는 화면과 관련된 모든 것이 위젯입니다. 화면을 구성하는 문자열, 이미지도 위젯이며 화면 전체도 위젯입니다. 이제껏 살펴본 것처럼 위젯은 계층 구조로 구성됩니다. 그런데 대부분의 앱은 여러 화면으로 구성됩니다. 예를 들어 쇼핑 앱이라면 다음 그림처럼 로그인, 상품 목록, 장바구니 화면 등으로 구성됩니다. 이런 화면도 하나의 위젯으로 만들어 계층 구조로 구성해야 합니다. 이 그림처럼 화면이 3개인 앱을 만든다고 가정해 보겠습니다. 각각의 화면을 MyLoginScreen, MyCatalogScreen, MyCa.. 2023. 3. 13.