일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- widget test
- retorift
- 플러터 테스트
- pubspec
- SOLID 원칙
- 테스트 주도 개발론
- TDD 개발 방법론
- Flutter
- dart test
- 8시간 삽질
- dart
- 배움순서
- 2D 그래픽 라이브러리
- Android
- refresh 토큰
- 인코딩방지
- permission_handler
- 안드로이드
- 토큰갱신
- 다트
- Same parameter
- Parameter specified as non-null is null
- Refresh Tocken
- 안드로이드를 위한
- 객체 지향 설계
- pubspec.yaml
- 2D graphics library
- 플러터
- 에러 메시지를 잘보자 ^^
- 다트 테스트
- Today
- Total
목록플러터 (8)
Landroid
플러터에는 크게 3가지의 테스팅 기법이 있습니다. 유닛 테스트, 위젯 테스트, 통합 테스트. 하지만 이것을 가지고 TDD를 작성하기는 매우 어렵습니다. (플러터 TDD 정보가 너무 부족해....) 그래서 해외 자료들과 공식문서, 국내 블로그(특히 티스토리)를 참고하여 플러터에서 TDD를 적용하는 방법에 대해 설명하겠습니다. 1. 유닛 테스트 (UnitTest) 유닛 테스트, 단위 테스트라고 불리는 이 테스팅 기법은 메소드, 클래스 같은 작은 단위를 테스트할 때 쓰입니다. 하지만 서버통신이나 DB 접근이 필요한 테스트일 경우, 의존성 때문에 작성하기 더 어려워집니다. 그래서 Mockito 같은 테스트 프레임워크로 의존성을 줄이고 테스트를 작성할 수 있습니다. 유닛 테스트를 구현하기 위해서는 기본적인 테스트..
선행지식(위젯 트리) 플러터는 어떻게 위젯을 렌더링할까? + 발표 영상 플러터는 어떻게 위젯을 렌더링할까요? UI가 업데이트되었을 때 Widget, Element, Render Object, 3가지 트리가 어떤 방식으로 동작하는지 알아봅시다. medium.com 모든 것은 위젯이다. 라기에는 우리 눈에 굉장히 불편한 위젯이 하나 있습니다. StatefulWidget & State class Some extends StatefulWidget { @override _SomeState createState() => _SomeState(); } class _SomeState extends State { @override Widget build(BuildContext context) { return ...; } ..
github에서 .gitignore를 추가하면 template 에는 flutter가 없습니다. 하지만 이미 플러터에서 플러터 전용 gitignore가 있습니다. flutter/flutter Flutter makes it easy and fast to build beautiful apps for mobile and beyond. - flutter/flutter github.com 그래서 이걸 이제 어떻게 사용하느냐 우선 프로젝트를 생성할 폴더에서 아무것도 쓰이지 않은 .gitignore를 만듭니다. 1. github에서 .gitignore를 추가한 채 생성, 클론 후 로컬에 저장 2. 프로젝트를 생성할 폴더에서 git init 한 다음, .gitignore 생성 이제 비어있는 .gitignore를 생성하셨..
Future 함수를 Future Builder를 통해 호출하시는 경우가 있습니다. 하지만 정작 실행해보면 함수에서 호출될 값까지 가져오기 까지 여러번 호출되는 것을 보실 수 있습니다. 이는 자원 낭비로 이어질 수 있기 때문에 가능하면 해결하시는 것이 좋습니다. Future Builder에서 함수를 중복 호출 방지하는 방법이 2가지 있습니다. 하나는 initState로 Future 함수를 변수에 저장하는 방법입니다. class FutureSample extends StatefulWidget { // Create instance variable @override _FutureSampleState createState() => _FutureSampleState(); } class _FutureSampleSta..
Skia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms. It serves as the graphics engine for Google Chrome and Chrome OS, Android, Flutter, Mozilla Firefox and Firefox OS, and many other products. Skia는 다양한 하드웨어 및 소프트웨어 플랫폼에서 공통 API를 제공하는 오픈 소스 2D 그래픽 라이브러리입니다. 구글 크롬, Chrome OS, Android, Flutter, Firefox, Firefox OS 등 많..
플러터로 테스트와 디버깅하는 방법에 대해 설명하겠습니다. 테스트 종류 앱 테스트하기(플러터 공식문서) 유닛 테스트: 단위 기능, 방법 또는 클래스를 테스트합니다. 위젯 테스트 : 단일 위젯을 테스트합니다. 통합 테스트 : 완성된 앱이나 앱의 상당 부분을 테스트합니다. 1-1. 유닛 테스트 단위 테스트 소개 Mockito 우선 pubspec.yaml 파일에서 dev_dependencies에 test 라이브러리를 추가합니다. dev_dependencies: test: 그다음 테스트할 클래스나 메서드가 있으면 가져다가 테스트 코드에 작성하시면 됩니다. 저는 공식 페이지에 있는 예제를 그대로 가져다 쓰겠습니다. // lib/counter.dart class Counter { int value = 0; void ..
플러터를 처음 공부할 때 가장 어려웠던 것 중 하나가 권한요청입니다 ㅠㅠ. 정확히는 어렵다기 보다 내장기능이 없고 라이브러리를 끌고 와서 사용해야 한다는 점이 안드로이드랑 좀 달라서 당황스러웠습니다. 그럼 플러터에서 권한 요청하는 대표적인 라이브러리인 Permission_handler에 대해 알아보겠습니다. 우선 원하는 라이브러리를 찾기 위해 아래 사이트에 접속해서 permission이라고 검색을 합니다. https://pub.dev/ Dart packages Pub is the package manager for the Dart programming language, containing reusable libraries & packages for Flutter, AngularDart, and gener..
플러터를 알고 있다고 가정하고 생명주기에 대해 설명하겠습니다. 화면상 모든 것은 위젯 화면상에 표현되는 모든 것들을 위젯이라는 것은 아실 겁니다. 위젯은 StatelessWidget과 StatefulWidget로 크게 나눌 수 있습니다. 이 두 가지에 따라 위젯들은 상태를 가질 수도 있고 가지지 않을 수 있습니다. Stateless 의미만 봐선 상태가 없다는 뜻입니다. StatelessWidget은 상태를 가지지 않은 위젯이란 뜻입니다. 그럼 여기서 상태가 무엇일까요? 위젯에서 상태란 위젯에 대한 속성을 의미합니다. 예를 들어 Text 위젯에는 text가 상태겠네요. text만 상태일까요? style, font, color 등 해당 위젯이 가지고 있는 속성을 모두 상태라고 부릅니다. 이렇게 위젯은 모두 ..