학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] getTotalPrice() 메서드가 OrderItem 클래스 안에 있으니까 orderPrice 변수와 count변수를 직접 건들수 있는데 왜 orderPrice*count가 아닌 getOrderPrice()* getCount()를 쓰는지 궁금합니다..
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
강의를 보면 controller에서 작업을 마무리하고, 이후에 코드를 정리하면서 controller, service, repository로 3단 분리를 하시는데, 실제로 처음부터 3단 분리를 하면서 코드를 짜려니까 머리 속에 로직이 잘 정리가 안되더라고요. 처음부터 역할에 맞게 분리를 하며 코딩을 하시는지, 아니면 처음에는 머리 속의 로직을 그대로 쭉 코딩하신 후에 나중에 정리를 하시는 편이신지 궁금합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
OOP 상속 부분 강의에서 보면 부모클래스의 파라미터 이름과 자식 클래스 파라미터 이름을 다 같게 쓰시더라구요. 혹시 변수 이름 구분을 하면 오류가 나는지 한번 구분을 해보았는데, super뒤의 부모 클래스 파라미터를 적는 부분에서 오류가 나더라구요. 두 개를 다르게 지정하면 안되는건가요? 예를 들어 강의에 나온 대로 받은 입력을 2배하는 클래스, 4배하는 클래스를 만들었을 때 class Timestwo { int number1; Timestwo(this.number1); int calculate(){ return this.number1 * 2; } } class Timesfour extends Timestwo{ Timesfour(int number2) : super(number1); int calculate(){ return super.number1 * 4; } } 밑에서 5번째줄, Timesfour(int number2) : super(number1) 부분에서 number1아래에 빨간줄이 생겨요. 저는 Timesfour(int number2)는 Timesfour라는 클래스의 파라미터를 받는 거라 아무 이름이어도 된다고 생각했고, super( )안은 부모클래스(Timestwo)의 파라미터를 받는거라 number1을 써야한다고 생각했거든요. 그런데 안되더라구요...? 제가 어디를 잘못 이해하고 있는걸까요?
일단 선생님의 강의를 듣고 제 생각을 정의해보자면 데이터레이어(데이터소스, 레퍼지토리(구현)) 도메인레이어(레퍼지토리(추상), 모델, 유스케이스) 프레젠트레이어(뷰 모델, 뷰) 레퍼지토리는 기본적으로 외부데이터와의 소통을 위한 통로라고 이해했습니다 그렇기 때문에 도메인레이어에서 레퍼지토리를 추상화하고 데이터레이어에서 이를 구현하는 방식으로 사용되고 이 레퍼지토리를 유스케이스에서 도메인레이어의 모델과, 레퍼지토리를 이용해 우리 도메인의 입맛에 맞는 데이터형식과 로직을 작성하지요 이런 상황속에서 몇가지 의문이 들었습니다 -첫번째질문!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!- 만약 외부데이터와 관련이 없는 온리 client 내부적으로만 필요한 상태를 관리해야하는 로직이 필요하다. 그렇다면 도메인 레이어에 필요한 모델을 작성하고 레포지토리없는 유스케이스를 만들면 외부데이터와 관련이 없는 상태를 관리할수있지 않을까? => 외부데이터와 관련없는 데이터 관리가 필요할경우 레포지토리가 없는 유스케이스에대한 생각이 궁금합니다!! (레포지토리가 필요없는 유스케이스의 경우 쉽게 생각하면 viewModel에서 작성하면 되는 로직 아니야? 라고 생각할수있는데, 만약 해당 데이터 타입과 로직이 꽤많은 화면에서 공통적으로 사용되고있다면 모든 뷰에 대응하는 모든 뷰모델에서 같은 로직을 계속해서 반복하게될텐데 비효율적일것같아서 레포지토리 없는 유스케이스라는 것을 생각하게되었습니다.) -두번째질문!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!- 비지니스로직은 유스케이스에 UI로직은 뷰모델에 작성한다고해주셨는데 비지니스 로직과 UI로직을 나누는 기준이 무엇인지 궁금합니다. 어떤걸 유스케이스에 넣고 어떤걸 뷰모델에 넣어야하는지에 대한 혼란이 있을때가 있어서요!! -세번째질문!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!- 노트관련강의 30번째 강의의 두번째화면 UI작성 28분쯤 해당 색깔을 선택할때 배경색이 바뀌는 로직이 뷰에서 로직이 선언되어있는데, 뷰모델에서 해당 로직을 선언하지 않은 이유가 궁금합니다! 선생님의 강의 정말 잘 듣고있고 매번 너무 감사드립니다ㅜㅜ 질문 세가지 드렸는데, 글이 길지만 세가지 질문에 대한 답변 주시면 정말 감사하겠습니다ㅜㅜ
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Access to XMLHttpRequest at " http://마이 ipv4주소/home" from origin ' http://localhost:62502 ' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. http를사용합니다. server를 node.js 로 만들고 json 파일 가져올려고 합니다. ios, android는 http통신이 아주 잘되는데 chrome으로 build하면 계속 위의 에러가 나옵니다.. 혹시 해결법을 아시나요...
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
마지막 no element 수업중에 코드를 수정해도 no element 에러화면이 계속 나오네요 ㅠㅠ 데이터를 받아오는것같은데 어디가 문제인지 하루종일 봐도 안되네요 아직 부족한것같습니다 지금 빌드 구문부터 실행이 되지않는데 한번 확인 부탁드려도될까요? https://github.com/JacksonBanco/dust_app
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 일반적으로 스프링 컨테이너는 싱글톤 기반으로 동작하기에 빈은 모든 쓰레드가 공유합니다. 그런데@PersistenceContext을 통해 주입 받은 EntityManager는 동시성 문제가 발생하지 않는다고 해서 의문이 생겼습니다. 따라서 관련된 내용을 공부하던 중 아래 질문의 영한님 답변을 봤습니다. https://www.inflearn.com/questions/158967/%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94-entitymanager%EC%97%90-%EB%8C%80%ED%95%B4-%EA%B6%81%EA%B8%88%ED%95%9C-%EC%A0%90%EC%9D%B4-%EC%9E%88%EC%96%B4-%EC%A7%88%EB%AC%B8-%EB%82%A8%EA%B9%81%EB%8B%88%EB%8B%A4 제가 이해한 바로는 private final EntityManager em;를 통해 주입 받은 엔티티매니저는 싱글톤 빈이지만 일반적인 빈들과는 다릅니다. 공통점 : 일반적인 스프링 빈과 엔티티 매니저는 모두 프록시 객체를 주입받는다. 그리고 이는 모두 싱글톤이다. 차이점 : 일반적인 스프링 빈은 호출될때마다 에플리케이션 전체를 대상으로 해당 빈이 스프링 컨테이너에 등록되어 있는지 찾고 있으면 스프링 컨테이너에서 찾아 반환, 없으면 빈을 생성하고 등록(CGLIB 기술) 반면 엔티티매니저는 이해가 가지 않습니다. 책 581 페이지를 보면 A, B 코드에서 호출한 엔티티 매니저는 서로 다르며 , 582에서 멀티 쓰레드에서 같은 코드에서 호출한 엔티티 매니저는 서로 같습니다. 일반적인 싱글톤 빈들이나 엔티티 매니저 모두 싱글톤이며 프록시 객체를 주입 받는 것 같은데 그 안의 원리들이 조금 다른 것 같은데 이 점이 궁금합니다.
안녕하세요, 다름이 아니라 제가 나도코딩 자바(Java) 기본편을 공부하면서, 배열(Array)에 관해 모르는 것이 생겨서 이렇게 질문을 남깁니다. 일반적으로 배열이 String[] array = {...}; 이렇게 선언 되었을 때, array.length를 이용 해서 배열의 길이를 파악하고, array[0] 처럼 이렇게 인덱스로 값의 위치를 파악 하면서 데이터를 읽는다고 알고 있습니다. 반면에 String sentence = "sentence"; 이런 경우에는 같은 length를 쓰지만 String 클래스의 메소드라서 괄호를 나타낸 sentence.length()로 길이를 파악 하고, "..."; 안 문장의 각 글자 별 위치를 파악할 때는 sentence.charAt()을 쓴다 고 알고 있습니다. 제가 이해한 부분이 혹시 맞을까요? 또한 아래처럼 선언된 String[] 배열에서: String[] Java = { "나는 자바가 좋아요" }; Java 배열의 전체 길이를 파악하고 싶다면, Java.length 으로 적는데, 만약 배열 안 문장 "나는 자바가 좋아요" 의 전체 길이를 알고 싶다면 Java[].length()으로 적고, 배열 안에 들어있는 문장 "나는 자바가 좋아요" 에서 각 낱말의 위치를 파악하고 싶다면, Java[].charAt()를 적으면 되는 건가요? 여기서 Java[].부분에는 배열 index를 적고 (예를 들면 Java[0]), charAt()은 "..." 문장의 각 글자 별 인덱스를 적는 방식으로요. 질문이 조금 많이 길었습니다. 하지만 동시에 그 만큼 제가 또한 열심히 배우고 싶다는 열정으로 봐주셨으면 합니다! 게다가 앞으로 다가올 기말시험에서도 배열의 비중이 꽤 크기도 해서, 정말로 잘 배우고 싶습니다! (해외에서 대학을 다니는 지라 지금 이맘때 쯤이 시험기간입니다 ㅠㅠ) 참 얼마 전에, 자바로 소켓 프로그래밍으로 과제를 해야 했었던 일이 있었는데, 그 때 나도코딩님이 업로드 해주신 섹션 12. (Section 12.) 예외 처리 부분이 상당히 많이 도움 되었습니다. 덕분에 과제에서 나쁘지 않은 점수를 받았습니다. 앞으로도 좋은 강의 잘 부탁하고, 진심으로 감사합니다 :-)
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
https://goodteacher.tistory.com/291 위 블로그를 참고해서 비밀번호를 초기화했는데 mysql -u root -p Enter password: ************ ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 위와 같이 나옵니다. 위 에러 메시지는 비밀번호를 잘못입력했을 때 나오는 걸로 아는데 저 한영 잘못친 것도 없고 numlock도 풀려있어서 제대로 잘 입력했는데 왜 그럴까요ㅠ mysql --version 해보면 mysql ver8.0.27 로 잘 나옵니다
강의 교재의 "스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다(유일하게 하나만 등록해서 공유한다) 따라서 같은 스프링 빈이면 모두 같은 인스턴스다." 이 문장에서 같은 스프링 빈이면 모두 같은 인스턴스라는 말이 하나의 인스턴스로 자원을 공유한다는 의미 같은데 어떤 경우에 싱글톤을 사용해 자원을 공유하는지 궁금합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ...는 Spread Operator 이고 ..이 Cascading Operator 아닌가해서 질문드립니다. dart 강의 3강, 32분 쯤에 나오는 내용입니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
책과 병행하고 있습니다. 현재 'U&I'를 클론코딩 중입니다. 강의에서는 코드를 짠 이후 정리하는 과정이 있어서 좋았고, 책에서는 미리 정리할 것을 산정하여 진행하는 방법도 좋았습니다. 한데, 제 수준이 문외한이나 다름이 없어 두 교보재의 코딩 방식이 미묘하게 달라서 헛갈리네요. 직장인이라 시간이 부족해서 둘 중 한 방식으로 복습하고자 합니다. 어느 방식을 체득하면 더 좋을지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요 회원가입에서 오류가 떠요 aused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springDataJpaMemberRepository' defined in com.example.hello_spring.repository.SpringDataJpaMemberRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Could not create query for public abstract void com.example.hello_spring.repository.MemberRepository.clearStore(); Reason: Failed to create query for method public abstract void com.example.hello_spring.repository.MemberRepository.clearStore(); No property 'clearStore' found for type 'Member' 이런식으로 뭐가 정의되있다는데 뭐죠 ㅠㅠ
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
toppart위젯의 빌드함수안에 final now = DateTime.now (); 를 선언하는것은 어떤이유인가요? final DateTime selectedDate; final VoidCallback onHeartPressed; 밑에 선언해도(클래스의 변수로 선언해도) 동일한 동작을 하지않나요? 어차피 toppart는 statelesswidget이라 setstate를 하게되면 homescreen의 state가 다시 빌드되면서 toppart위젯도 (빌드함수만실행되는게아니라) 새로 생겨날텐데 어떤거는 빌드함수내에 선언하고 어떤거는 클래스내부의 프로퍼티로 선언하는지 차이가 궁금합니다. toppart인스턴스에 onHeartPressed함수를 아규먼트로 넘겨줄때 함수기호인()괄호를 넣지않았는데 이는 voidcallback 과 관련있는것인가요? void함수도 파라미터를 만들수있는걸로 이해했는데 return이 있는(void가 아닌)함수만 함수를 사용할때 ()기호를넣는것인가요?
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 아래 코드에서 orderStatus 부분은 널로 체크하고 memberName 부분은 hasText로 체크한 이유가 있을까요?? orderSearch.getMemberName() != null 이런식으로 체크하면 안되는지 궁금합니다. if (orderSearch.getOrderStatus() != null) { query = query.setParameter("status", orderSearch.getOrderStatus()); } if (StringUtils.hasText(orderSearch.getMemberName())) { query = query.setParameter("name", orderSearch.ge tMemberName()); }
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
android studio 세팅중에 flutter doctor를 하면 Unable to locate Android SDK. Install Android Studio from: https://developer.android.com/studio/index.html On first launch it will assist you in installing the Android SDK components. (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions). If the Android SDK has been installed to a custom location, please use flutter config --android-sdk to update to that location. 이런 메세지가 뜹니다. 다른분 질문 답변 중 환경변수 문제 같다고 하셨는데 혹시 환경변수 경로에도 한글이 들어가면 문제가 되는걸까요??