일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- android
- 분할정복
- C++
- 파이썬
- 안드로이드
- cos pro
- codingtest
- DFS와BFS
- issue
- cos pro 1급
- AndroidStudio
- django
- 동적계획법
- 코드품앗이
- cos
- 개발
- 코테
- vuejs
- 코딩테스트
- BAEKJOON
- Flutter
- 안드로이드스튜디오
- 백준
- DFS
- Algorithm
- Vue
- 알고리즘
- Python
- 동적계획법과최단거리역추적
- DART
- Today
- Total
목록DART (9)
Development Artist
Intro 라이프 사이클이란 개념이 나오게된 배경에는 정확하지는 않지만, 개발을 체계적으로하고, 운영 및 유지보수를 효율적으로 하기위함일 것이다. 필자는 새로운 프레임워크 또는 언어를 배울때 '라이프사이클'이란 키워드로 그 대상을 검색해본다. 그 이유는 어떻게 프레임워크가 돌아가는지 쉽게 파악할 수 있기 때문이다. 처리 순서를 파악할 수 있게 되는데, 이것을 알고 모르고의 차이는 퍼포먼스에서 큰 차이가 난다. 처음 시작은, 안드로이드 앱을 만들 때 였다. 그 당시에는 라이프 사이클 개념의 존재도 몰랐었고, 어떻게 앱이 처리하는지 직접 코드에 넣어보며 삽질을 하던 때였다. 그러다가 우연히 라이프 사이클 개념을 찾아보게 되었고, 아이고 이걸 왜 지금 봤나 하면서 한탄을 했었다. 그래서 이번에 Flutter로..
이슈 1. 플러터 인프런 강의 중, 넷플릭스 UI 만들기가 있는데, 10강에서 검색 스크린을 만드는 과정이였다. 2. 다음과 같이 searchResults.map((data) => _buildListItem(context, data)), 에서 이슈 발생. 탐색기에서는 아래의 그림과 같이 이유를 제시했다. 해결 1. searchResults.map((data) => _buildListItem(context, data)) 뒤에 .toList()를 붙여준다. 원인 1. 일단 flutter dart 언어에 있는 Iterable 개념을 알아야 한다. Iterable이란, A collection of values, or "elements", that can be accessed sequentially. ( 순차적으..
이슈 1. 플러터 인프런 강의 중, 넷플릭스 UI 만들기가 있는데, 9강에서 FirebaseFirestore를 코드에 넣고 빌드 하는데 발생한 이슈. 해결 1. main.dart의 main() 안에서 runApp하기 전에 Firebase.initializeApp(); 코드를 넣어준다. 2. 하지만, 여전히 이슈가 해결되지 않았다. 3. main()을 비동기 처리를 한다. 원인 1. Firebase 연동을 하기 위해서는 runApp전에 Firebase initialApp()을 통해 세팅을 해준다. 2. initialApp() 함수의 처리 결과를 비동기로 return 해주기 때문에 main에서 비동기 처리가 필요하다.
이슈 1. 플러터 인프런 강의 중, 넷플릭스 UI 만들기가 있는데, 9강에서 Movie 모델의 fromSnapshot함수를 만드는 과정이었다. 2. 다음과 같이 snapshot.data와 snapshot.reference에서 이슈가 발생. 해결 1. pubspec.yaml에서 cloud_firebase 버전을 낮게 설정한다. 다운그레이드... cloud_firestore: ^0.12.9+5. 또한, cloud_firestore는 firebase_core에 의존성이 있어서, firebase_core: ^0.4.0+9. 로 맞춰 준다. 2. 하지만, 다운그레이드가 왠 말인가...! flutter에서 해결을 해보도록 하자. 3.0. fromSnapshot 함수의 인자로 타입으로 지정을 해준다. 그리고 from..
이슈 1. Flutter 프로젝트를 나의 안드로이드 기기에 연결시켜서 run을 하니, 다음과 같은 상태에서 진행이 안됨. 2. 꾀 오랜 시간(1분 15초) 뒤에, 다음과 같은 이슈로 빌드 실패를 알림. 해결 1. Shift를 2번 눌러서 SDK Manager를 검색하자. 또는 상단의 Tools 탭을 클릭하면, SDK Manager가 보인다. 2. Appearance & Behavior -> System Settings -> Android SDK -> SDK Tools에 'Android SDK Tools (Obsolete)'가 설치되어 있는지 확인한다. Not Installed 라면 체크 후 Apply로 Installed 해준다. 3. 그리고 Terminal에서 flutter doctor --android..
이슈 1. 플러터 인프런 강의 중, 넷플릭스 UI 만들기가 있는데, 4강에서 CarouselSlider를 사용하는 과정이였다. 2. CarouselSlider 위젯을 만드는 중 build에서 CarouselSlider를 사용하는데 첫번째는 options가 필요하다는 것이였고, 두번째는 onPageChanged가 정의되어 있지 않다 라는 메세지를 보이며 이슈가 발생. 해결 1. 다음과 같이 options: CarouselOptions 내에 onPageChanged 를 넣어준다. CarouselSlider( items: images, options: CarouselOptions(onPageChanged: (index, reason) { setState(() { _currentPage = index; _cur..
이슈 로그인 페이지 구현중, TextFormField의 isEmpty 사용 시 다음과 같은 이슈 발생. 해결 1. value뒤에 !를 붙임으로써 해결. !는 form이 non-nullable 타입임을 말해준다. 원인 1. Flutter 2.0 이후로 null-safety 가 적용되었기 때문이다. 이슈의 원인은 2.0 이전의 코드를 그대로 차용하면서 생긴 문제였다. 'flutter null-safety'로 구글링 해보면 자세한 사항을 확인 할 수 있다.
이슈 Flutter 로그인 페이지를 만드는 중 validateAndSave 함수에서 조건문 안의 form.validate()와 내부의 form.save()에서 다음과 같은 이슈 발생. 해결 1. form뒤에 !를 붙여줌으로써 해결. !는 form이 non-nullable 타입임을 말해준다. 2. form.save() 도 form!.save()로 사용할 수 있다. 원인 1. Flutter 2.0 이후로 null-safety 가 적용되었기 때문이다. 이슈의 원인은 2.0 이전의 코드를 그대로 차용하면서 생긴 문제였다. 'flutter null-safety'로 구글링 해보면 자세한 사항을 확인 할 수 있다.
이슈 로그인 페이지를 개발하는데, 해당 String 변수는 null을 허용하지 않는다. 라는 이슈가 발생. 해결 1. null-safety를 적용, ?를 넣어줌으로써 해결. 2. 탐색기에서는 late String _password; 로 해결하고 있는데, late는 변수를 초기화히 선언만하고 초기화는 지금이 아닌 나중에 초기화하고 싶을 때 사용하는 것으로 참고 하면 좋을 것 같다. 원인 1. Flutter 2.0 이후로 null-safety 가 적용되었기 때문이다. 이슈의 원인은 2.0 이전의 코드를 그대로 차용하면서 생긴 문제였다. 'flutter null-safety'로 구글링 해보면 자세한 사항을 확인 할 수 있다.