SessionV6 클래스에서 try with resources 코드에 finally를 추가해서 close() 메서드를 호출해 직접 닫아주었는데, 그러면 try with resources를 사용해서 자동으로 close 되는 것과 finally에 명시적으로 작성해 준 close()가 총 두 번 실행되는 게 맞나요?
버전을 최신으로 마춰도 에러나는 경우 해결방법 공유합니다. 일단 선생님 환경은 현재 할수 없으므로 최신버전으로 마춰주시고 최신버전 의존성도 전부 완료되었는데도 안되는 경우는 아래 부분을 해보세요. 환경 샘플 플러터 3버전 dependencies: provider: ^6.1.4 sqflite: ^2.0.0+4 json_annotation: ^4.9.0 →json 직렬화 freezed_annotation: ^3.0.0 →불변 코드 생성 dev_dependencies: json_serializable: ^6.9.3 → JSON 직렬화 및 역직렬화 자동 생성 freezed: ^3.0.6 → 불변 객체 생성 build_runner: ^2.4.15 → 코드 생성 도구 생성 패키지 실행 첫번째 방법 1.컴퓨터 off on 2.flutter clean 3.flutter pub run build_runner build 4.flutter pub run build_runner build --delete-conflicting-outputs 4단계까지 안되면... 5.신규 프로젝트 생성... 2번째 방법 dependencies: provider: ^6.1.4 sqflite: ^2.0.0+4 json_annotation: ^4.9.0 →json 직렬화 freezed_annotation: ^3.0.0 →불변 코드 생성 analyzer: ^6.0.0 dev_dependencies: json_serializable: ^6.9.3 → JSON 직렬화 및 역직렬화 자동 생성 freezed: ^3.0.6 → 불변 객체 생성 build_runner: ^2.4.15 → 코드 생성 도구 생성 패키지 실행 낮은 버전으로 진행 후에 높은버전으로 진행했을때 json_serializable에서 analyzer가 삭제가 제대로 안되서 문제가 되는 경우가 있는것 같습니다. 억지로 analyzer 맞추고 진행하고 되었을대 analyzer을 제거하면 잘되었습니다. flutter 환경 세팅은 어렵군요... 시간 낭비 안되도록 공유해봅니다. 에러내용: C:\project\flutter_cleancode\flutter_note_app> flutter pub run build_runner build Deprecated. Use dart run instead. [INFO] Generating build script completed, took 326ms [WARNING] /C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/json_serializable-6.9.4/lib/src/field_helpers.dart:84:52: Error: The argument type 'ClassElement' can't be assigned to the parameter type 'InterfaceElementImpl'. - 'ClassElement' is from 'package:analyzer/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/dart/element/element.dart'). - 'InterfaceElementImpl' is from 'package:analyzer/src/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/src/dart/element/element.dart'). for (final v in manager.getInheritedConcreteMap2(element).values) { ^ /C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/json_serializable-6.9.4/lib/src/field_helpers.dart:90:43: Error: The getter 'isGetter' isn't defined for the class 'ExecutableElementOrMember'. - 'ExecutableElementOrMember' is from 'package:analyzer/src/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/src/dart/element/element.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'isGetter'. if (v is PropertyAccessorElement && v.isGetter) { ^^^^^^^^ /C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/json_serializable-6.9.4/lib/src/field_helpers.dart:91:16: Error: The getter 'variable2' isn't defined for the class 'ExecutableElementOrMember'. - 'ExecutableElementOrMember' is from 'package:analyzer/src/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/src/dart/element/element.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'variable2'. assert(v.variable2 is FieldElement); ^^^^^^^^^ /C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/json_serializable-6.9.4/lib/src/field_helpers.dart:92:26: Error: The getter 'variable2' isn't defined for the class 'ExecutableElementOrMember'. - 'ExecutableElementOrMember' is from 'package:analyzer/src/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/src/dart/element/element.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'variable2'. final variable = v.variable2 as FieldElement; ^^^^^^^^^ /C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/json_serializable-6.9.4/lib/src/decode_helper.dart:65:23: Error: The getter 'augmented' isn't defined for the class 'ClassElement'. - 'ClassElement' is from 'package:analyzer/dart/element/element.dart' ('/C:/Users/karyo/AppData/Local/Pub/Cache/hosted/pub.dev/analyzer-7.4.0/lib/dart/element/element.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'augmented'. element.augmented ^^^^^^^^^ [INFO] Precompiling build script... completed, took 880ms [SEVERE] Failed to precompile build script .dart_tool/build/entrypoint/build.dart. This is likely caused by a misconfigured builder definition.
안녕하세요~! 혹시 마지막 문제 쿼리에서 WHERE 학번 IN ( SELECT 학번 FROM 학생 WHERE 학생.학번 = 성적.학번 AND 학생.학과 IN ( '전산' , '전기' ) AND 학생.주소 = '경기' ); 가 아닌 WHERE EXISTS ( SELECT 학번 FROM 학생 WHERE 학생.학번 = 성적.학번 AND 학생.학과 IN ( '전산' , '전기' ) AND 학생.주소 = '경기' ); 게 맞나용..?
============ [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. public class MemberRepository { private Map<String, Member> memberMap = new HashMap<>(); public void save(Member member) { memberMap.put(member.getId(), member); } 이 부분에서 Member인 이유가 무엇인가요?? String으로 타입설정하고 memberMap.put(member.getId(), member.getName());으로 해야하는거 아닌지 질문드립니다
질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요. 안녕하세요 선생님 선생님 강의 덕분에 지뢰문제도 풀 정도로 실력이 많이 올랐습니다. 근데 문제를 풀 때 생각보다 문제 푸는 과정이 길어서 실제 시험지 연습장에 푸는 과정의 필기를 다 못 적을꺼 같은데 이럴 경우는 어떻게 해야하나요???
이전 강의의 PDF 파일 가장 첫 장을 설명해주실 때, Dog 클래스는 Animal 클래스를 상속하여 eat(), sleep() 메소드를 기본으로 가져오고, bark() 메소드 또한 추가되어 모든 메소드를 사용할 수 있다고 하셨습니다. 지금 영상 17:15의 풀이에서는 specialDraw() 메소드가 부모 클래스에 없기 때문에 오류가 발생한다고 하셨는데, b 객체가 업캐스팅 되어 생성되었기 때문인가요?
앞 부분에서 설명해주실때는 char str[] = "Hello, World!" char *ptr = str 이렇게 쓰여있어서 포인터 변수가 배열에 접근하는구나, 따라서 인덱스로 접근이 가능하구나 하고 이해가 되었는데 17:32초 오른쪽 코드에서 char *s = "Hello, World!" ; printf("%c", s[0]); 이런식으로 포인터 변수에 바로 인덱스 접근한다는 게 이해가 가질 않습니다. 그냥 받아들여야하는건가요?
int maxVal(int *arr, int size)에서 arr에 *을 붙여서 선언을 하고 문제 중간 int max = maxVal(arr, size-1); ->여기서 arr은 메모리(정해져 있지 않고 매우긴, 이 arr메모리 값을 다시 int *arr이 받음) 여기까지는 그냥 풀고있었는데 return(arr[size-1]>max)?arr[size-1]:max; 이부분에서 *arr[size-1]이 아닌 arr[size-1]인 이유를 모르겠습니다. 위에서 선언 이후에 *이 붙으면 값 *이 안붙으면 주소 아닌가요?? 질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 학교 수업에서 이클립스를 사용하고 있어서 혹시 이 강의를 이클립스로 들어도 지장이 없는지 궁금합니다.