[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
class명을 GStateNotifier로 만들었는데, 실제 사용할때는 gStateNotifierProvider로 앞에 G대문자가 소문자가 되는 이유가 있나요? 강의 설명엔 뭘 써도 된다라고 하셨는데, 어떤 이름으로 쓰든, gStateNotifierProvider가 된다는것인지. 이 부분이 명확하지 않아서 문의 드립니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요, 강의를 듣는데 예전 영상이라 그런지 스튜디오에서 명령어를 입력할 때마다 코드가 너~~~~무 다르게 나와서 이걸 고친다고 시간을 다 잡아먹습니다.. 이따금 이걸 해결하는게 좋은 개발자가 된다고 하는 글을 봤는데, 취미로 배우는 직장인이라 큰 관심 없습니다. 예를들어 stful 위젯을 생성하는데 생기는 클래스들이 너무 다른 모양으로 나와서 당황하는 와중에 강의는 아주 빠르게 넘어가서 이건 뭐지.. 하는 거죠. 혹시 버전을 업데이트해서 올려주실 생각은 없으실까요? 아니면, 플러그인 등으로 이런 작성 에러들을 잡는 방법이 없을까요?
Navigator.push 에서 리턴받는 불리언값은 어떻게 정해지는것인가요? editnote init()에서 navigator.pop(context, true)에서 넘겨준 트루를 리턴받는 것인가요? 저는 이렇게 이해 했습니다. 노트스크린(홈)에서 화면 푸시를 하면 edit페이지로 이동하고 스트림으로 save 노트 이벤트를 상시 대기하다가 이벤트가 발생하면 true값과 동시에 pop을 하고 노트스크린(홈)에서 isSave에 pop에서 넘겨준 true를 리턴받고 if(isSaved !=null && isSaved){ viewModel.onEvent(NotesEvent.loadNotes()); } 을 수행하여 홈을 리로드하여 새로운 데이터를 받아주는것이라고 생각했습니다. 이게 맞을까요? 이렇게되면 홈에서의 await Navigator.push()는 다음페이지에서 넘어갔다가 pop되는 것을 기다리는 await인가요? 아니면 무엇인가요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
factory RestaurantRepository(Dio dio, {String url}) = _RestaurantRepository; 이런식으로 baseUrl 대신 url을 넣으면, 에러가 발생하는데요. g.dart 파일을 지우고 다시 pub run을 해봐도, 동일하게 baseUrl로 생성이 되더라구요. 그러면서, 에러가 나오는데, 변경이 안되는 이유가 있나요?
강의 회귀 실습 1: 자전거 대여(공유) 수요 예측 -02에서 19분 52초 경에 나오는 선형 회귀의 피처별 회귀계수 시각화 부분에서 저 회귀계수 값들이 다르게 나올 수가 있는지, 질문드립니다. github의 주피터노트북 코드 다운로드 받아서 그대로 시행했는데 LinearRegression/Lasso/Ridge 각 회귀에 대한 RMSLE, RMSE, MAE까지는 값이 정확히 동일하게 나오는데 회귀 계수의 값을 보려고 lr_reg.coef_ 부분에서 결과가 다르게 나옵니다. 상식적으로 회귀 모형에서 이런 결과가 나올 수가 없다고 생각되는데 무슨 이유인지 모르겠어서 질문드립니다! 감사합니다
안녕하세요, 선생님. 강의 15분 경에 다음과 같은 코드가 나옵니다만, 저는 분명 동일한 코드를 실행했는데 오류가 떠서 질문드립니다. house_df.fillna(house_df.mean(),inplace = True) TypeError: can only concatenate str (not "int") to str 이 코드가 Null있는 문자형 열까지 포함시켜 처리하기 때문에 오류가 나는 거 같은데, 혹시 원래 정상적으로 실행되는 코드인가요…? 책에 있는 코드도 동일한데 제가 실행시키면 에러가 나서 전 Null 있는 숫자혀여 열에 대해서만 각 열의 평균값으로 결측치를 채워서 실행했습니다. 만약 현재 버젼으로 정상적으로 실행이 되지 않는 코드라면 선생님께서 혹시 이 부분에 대해서만 새로 작성하신 코드를 여쭙고 싶습니다! 방금 확인해보니까 jupyter notebook으로는 잘 실행되는데, vscode에서는 위와 같은 오류가 뜹니다. 혹시 이 오류가 뜨는 이유를 알 수 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 클린아키텍쳐를 열심히 학습중인데요 추상클래스(noteRepository)를 만드는 이유가 테스트가 원활하게 가능하게 추상클래스를 만든다고 했는데 그러면 테스트코드를 작성할때 추상클래스(noteRepository)에 대한 테스트와 구현체 클래스(noteRepositoryImpl)에 대한 테스트를 각각 작성하는게 좋은 방법일까요? 그렇다면 추상클래스는 메서드만 정의되어있는 상태인데 어떤방식으로 테스트코드를 작성해야할까요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요. flutter 강의 에서 android studio 시뮬레이터로 hello_world를 돌렸는데요. 아래와 같이 에러가 출력 됩니다. cache도 지워보고 build.gradle의 코틀린 버전도 올리고 flutter clean, flutter pub get 한 뒤에 재실행 해도 동일한데요. 아래 Command를 실행하면 정상적으로 작업이 되는거 같은데... 뭐가 문제인지 알 수 있을까요? ###Error msg Launching lib\main.dart on sdk gphone64 x86 64 in debug mode... Running Gradle task 'assembleDebug'... √ Built build\app\outputs\flutter-apk\app-debug.apk. ERROR: dump failed because resource androidmanifest.xml not found Failed to extract manifest from APK: ProcessException: The command failed Command: C:\Users\wookheon.lee\AppData\Local\Android\sdk\build-tools\34.0.0\aapt dump xmltree C:\study\hello_world\build\app\outputs\flutter-apk\app-debug.apk AndroidManifest.xml. Exception: Problem building Android application: see above error(s).
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요 코드팩토리님 강의 잘 듣고 있습니다. 다름이 아니라 섹션 23 'CategoryCard 제작하기' 강의에 1:32 쯤에 SliverToBoxAdapter 를 CustomScrollView 강의때 알려 주셨다고 하셨는데. CustomScrollView 강의 4개 다시 봤는데 안보여서요. 제가 못찼는 건지 SliverToBoxAdapte 강의가 목록에서 빠진 건지 확인 부탁 드립니다.
안녕하세요 강의 내용상으로는 stful을 입력시 이런 코드가 작성된다고 들었으나 제가 할때는 이런 화면이 나오더라구요 그래서 안드로이드스튜디오가 버전이 다른가 싶어서 3강 윈도우 세팅 영상을 다시 보니 (강사님 영상에는 벌 모양이 나오고 제 pc에서는 캥거루가 나오더라구요) 제목은 플라밍고, 영상은 안드로이드스튜디오 2021.1.1.21 patch 1 버전이라고 하나... 구버전 받는 곳을 찾아서 확인 해보니 안드로이드스튜디오 2021.1.1.21 patch 1 버전도, 플라밍고도 두가지 모두 보이지 않습니다. 코드가 다르다보니 구현중 타이틀 구현이 안되서 어느부분에서 오류가 있나 찾아보기에도 불편함이 있습니다. 실제로 강의 내용 중 appbar 구현을 하는 부분에서도 영상에서는 앱바가 나오나 제가 구현 한 앱에서는 앱바는 나오지 않습니다. 해당 캡쳐본에는 안 나와 있으나 "홈" 글자를 넣는것까지는 구현 됩니다. 어떻게 해야할까요???
강사님 안녕하세요 강사님 강의 덕분에 저 혼자서 페이지도 만들고 nginx 사용해서 서버까지 배포해보았습니다. 다름이 아니라 3일전 까지만 해도 느리긴 했지만 잘 되던 서버가 오늘 서버내의 기능을 사용할려고 하니 502 bad gateway를 내 뱉으면서 멈춰버립니다.(되다가 안되다가 반복함) 그래서 error 로그를 찾아보니 2023/11/01 00:20:22 [error] 10930#10930: *232 upstream prematurely closed connection while reading response header from upstream 라고 뜨네요 3일동안 해봤는데 헛발짓만 했네용.. gpt한테 물어봐도 메모리 리소스, 네트워크 문제 , 응답시간 문제 등 이라곤 하는데 메모리랑 네트워크에는 아무런 문제가 없는거 같습니다. 3일전까지만 해도 잘되던 서버가 안되니까 많이 답답하네요..
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
나름 열심히 따라 갔는데, 또 결제하기 버튼 누르면 결제를 실패했다는 스냅카드만 계속 뜹니다. 그래서 print(e) 를 해서 원인을 물어보니, type 'Null' is not a subtype of type 'String' in type cast 라고 나오는데요, 제가 오류를 못찾는 걸수도 있겠지만, 여러 영상을 다시 뒤로 샅샅이 찾아가며 원인을 찾는데 못찾겠습니다.. 왜 다음 페이지로 넘어가지 않을까요? null값 때문이라면 어떻게 처리를 해야 할까요? // order_provider.dart import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:level2/order/model/post_order_body.dart'; import 'package:level2/user/provider/basket_provider.dart'; import 'package:uuid/uuid.dart'; import '../model/order_model.dart'; import '../repository/order_repository.dart'; final orderProvider = StateNotifierProvider<OrderStateNotifier, List<OrderModel>>( (ref) { final repo = ref.watch(orderRepositoryProvider); return OrderStateNotifier( ref: ref, repository: repo, ); }, ); class OrderStateNotifier extends StateNotifier<List<OrderModel>> { final Ref ref; final OrderRepository repository; OrderStateNotifier({ required this.ref, required this.repository, }) : super([]); Future<bool> postOrder() async { try { final uuid = Uuid(); final id = uuid.v4(); final state = ref.read(basketProvider); final resp = await repository.postOrder( body: PostOrderBody( id: id, products: state .map( (e) => PostOrderBodyProduct( productId: e.product.id, count: e.count, ), ) .toList(), totalPrice: state.fold<int>( 0, (p, n) => p + (n.count * n.product.price), ), createdAt: DateTime.now().toString(), ), ); return true; } catch (e) { print(e); return false; } } } ------------------------------------------------------ 이것도 앱을 지웠다가 다시 까니까 갑자기 되네요; 반복될 가능성도 없진 않지만, 실제로 앱을 구현할 경우 이 문제가 계속 반복될 경우 그때마다 지웠다 다시 깔았다를 반복할 수 없을것 같은데.. 일단 이 문제는 이렇게 해결하고 넘어가기로 하겠습니다.^^;