월 24,200원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결Flutter 중급 1편 - 클린 아키텍처
NoteRepository 추상화 클래스
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 오준석님, 강의를 듣다가 Repository 추상화객체에 대해서 질문이 생겨서 질문을 남깁니다. 강의에서 NoteRepositoryImpl은 NoteRepository를 implement받아서 사용을 하는데 왜 이렇게 짜는지가 궁금합니다. NoteRepository는 NoteRepositoryImpl만을 위한 추상화객체인데, 여기서밖에 사용을 안하는데 굳이 클래스로 따로 만들 필요가 있는지 의문이 들었습니다. 코드만 더 많이 짜게 되는건 아닌지 의문이 들어서 질문을 남겨봅니다! 오늘도 좋은 하루 되세요! 감사합니다~ :)
- 미해결Flutter 중급 1편 - 클린 아키텍처
sqflite Test 코드 작성
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 오준석님. 24강에서 Sqflite Test 코드를 작성하는 부분에서 질문이 생겨서 질문 남깁니다. /di/provider_setup.dart 부분에서 openDatabase를 실행하셨는데, 이 부분이 singleton으로 하신걸까요..? 저는 오준석님이 강의하신것을 바탕으로 제 스타일로 한번 변형 해보고 있는데요, 저는 sqfLiteDatabase를 클래스로 따로 빼서 singleton으로 만들어 보고 있는데 테스트 코드에서 final db = await databaseFactoryFfi.openDatabase(inMemoryDatabasePath); 이 부분을 어떻게 적용해야 될지 감이 잘 안와서 질문 남깁니다. 오준석님이 lib/di/provider_setup.dart에서 하신 부분이 singleton으로 구현하신게 맞으신가요? -> 이게 가장 궁금하고, 아니라면 singleton으로 하지 않으신 이유도 궁금합니다! 아래 코드는 제가 singleton으로 구현한 SqfLiteDatabase 클래스 인데, 테스트코드 작성시 final db = await databaseFactoryFfi.openDatabase(inMemoryDatabasePath); 이 코드를 어떻게 작성하면 좋을지 조언 주시면 감사하겠습니다! 감사합니다. 오늘 하루도 좋은 하루 되세요 :) import 'package:flutter_architecture/data/data_source/note_db_helper.dart'; import 'package:sqflite/sqflite.dart'; class SqfLiteDatabase { static const tableName = 'note'; static const databaseName = 'notes_db'; static final SqfLiteDatabase _singleton = SqfLiteDatabase._internal(); factory SqfLiteDatabase() { return _singleton; } SqfLiteDatabase._internal(); Future<Database> database = initializeDatabase(); static Future<Database> initializeDatabase() async { Database database = await openDatabase( databaseName, version: 1, onCreate: (db, version) async { await db .execute('CREATE TABLE $tableName (id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT, content TEXT, color INTEGER, timeStamp INTEGER)'); }, ); return database; // NoteDBHelper(database); } }
- 미해결Flutter 중급 1편 - 클린 아키텍처
9강 mockito에서 verify() 함수 에러
9강 mockito를 활용한 테스트 강의 맨 마지막 부분에 실제 동작했는지를 확인하는 verify() 함수를 동작시키는데 에러가 발생해서 질문 남겨드립니다. expect()함수까지는 잘 작동을 했는데요, verify()에서 이렇게 똑같이 동작 시켰는데 에러가 발생하고 있습니다. verify(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))); 에러는 No matching calls(actually, no calls at all.)이라고 나옵니다. test('Pixabay 데이터를 잘 가져와야 한다', () async { final api = PixabayApi(); final client = MockClient(); // mockito에서 제공하는 when()함수 when(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))) .thenAnswer((_) async => http.Response(fakeJsonBody, 200)); final result = await api.fetch('iphone', client: client); /// 실제 기대값 expect(result.first.id, 620817); // 실제 동작했는지 검증하는 코드 verify(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))); });
- 미해결Flutter 중급 1편 - 클린 아키텍처
1분 40초 Scaffold 질문
선생님께서 Scaffold 자동완성 쓰시니까 title안에 Text위젯까지 그려지는데, 특정 플러그인을 받아야 하는 건가요?? 맞다면 무슨 플러그인 인지 알 수 있을까요?