inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

view model 은 팩토리로 생성하는 이유

미해결

Flutter 고급 - 현업 수준의 아키텍처

23강의 5:10에서 usecase,repository 는 싱글톤으로 만들고, viewmodel은 팩토리로 만드는 것이 일반적이라고 하셨습니다. 싱글톤으로 만드는 것은 이해했는데, 팩토리를 사용하는 이유는 무엇일까요? viewModel 안의 state 의 내용이 UI 의 데이터로 채워지고, viewModel 안의 state 는 가변적이니 싱글턴으로 하는게 맞지 않을까라는 생각이 갑자기 들어서요. viewModel을 다시 만드는 것이 어떤 경우가 있는지 궁금합니다. 강의항상 재밌게 듣고 있습니다. 감사합니다.

  • flutter
  • mvvm
  • state-management
  • 클린-아키텍처
Seung Min Liang 댓글 1 좋아요 0 조회수 284

void 궁금한점이 있습니다!

미해결

[코드팩토리] [입문] Dart 언어 4시간만에 완전정복

코드팩토리 디스코드에 질문하면 더욱 빠르게 질문을 받아 볼 수 있습니다! [코드팩토리 디스코드] https://bit.ly/3HzRzUM - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. void 설명 부분에서 addNumbers 에 int선언하기전 void가 사실 생략되어있다고 하셨는데 그럼 두번째 사진에서의 addNumbers 함수는 실행되어야하는거 아닌가 의문이 듭니다~

  • flutter
  • 함수형-프로그래밍
  • 객체지향
영처뤼. 댓글 1 좋아요 0 조회수 186

도메인 오브젝트 메소드 주입에 대해 질문있습니다. (의존성 관련)

미해결

토비의 스프링 6 - 이해와 원리

안녕하세요 토비님. 질문드리기 전 먼저 오랜만에 너무 즐겁게 공부하고 있어 감사하다는 말씀을 드리고 싶습니다! 질문은 다름이 아니라 '도메인 오브젝트 테스트' 편에서 마지막에 메소드로 ExProvider 를 주입하는 방식을 언급해 주셨는데, 이렇게 되면 Payment 가 ExProvider 에 의존하게 되는 것 같아서 고민이 되었습니다. Payment 는 도메인 오브젝트로서 순수하게 Payment 에 관련된 응집만 추구해야 할 것 같은데, 그걸 넘어서는 건 아닐까라는 생각도 들었고, Payment 테스트 시 ExPriovider 주입이 필요하게 되는 점도 걸렸습니다. 기존처럼 BigDecimal 을 받도록 의존성을 끊어주는 게 더 낫지는 않을지 고민이 됩니다. 비슷한 경험으로 이전에 SpringSecurity 의 PasswordEncoder 를 도메인 오브젝트에 메소드로 넘겨볼까 하다가 의존성을 생각해 포기하고 String으로 받았었는데, 이와 동일하지는 않겠지만 앞으로도 고민이 될 수 있는 부분인 것 같아 꼭 질문을 드리고 싶었습니다. 도메인 개념적으로 Payment 가 ExProvider 와 묶여있는 게 자연스럽다 생각하셔서 그렇게 설계하신 걸까 싶은데, 이에 대해 어떻게 생각하시는지 궁금합니다.

  • java
  • spring
nilgil 댓글 1 좋아요 3 조회수 514

domain 에 data_source 를 만드는 이유.

미해결

Flutter 고급 - 현업 수준의 아키텍처

강의 항상 잘 듣고 있습니다. 질문이 하나 생겨서 여쭤봅니다. 20강 30~33분 정도에서 domain 폴더에 data_source 폴더를 만드시는 이유를 다시 설명해주실 수 있을까요? 아래는 제가 생각하는 부분입니다. data/ 의 data/data_source/ 는 data/repository/ 에서 사용하는 부분임. domain/ 은 사실상 data/data_source/ 를 직접 접근하지 않고 domain/repository 를 활용하는 domain/use_case 를 통해 접근함. 이렇게 생각이 들다보니, "domain 에서 data_source 의 인터페이스를 정의하는 것이 맞는건가?" 생각이 듭니다. 감사합니다.

  • flutter
  • mvvm
  • state-management
  • 클린-아키텍처
Seung Min Liang 댓글 3 좋아요 0 조회수 392

문제와 풀이 join() 활용2 - 코드 질문

해결됨

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 궁금증이 생겨서 질문을 남깁니다. '문제 풀이2번 을 어떻게 하면 될까?' 라고 생각 하던 도중,조인 하나만 맨 밑에 넣어보자, 라고 해보니.. 답은 나오긴 하였습니다. (코드 내용) t1.start(); t2.start(); t3.start(); t3.join(); (코드 완료) 근데 여기서 궁금증이 생겼습니다. 여러 개의 작업을 시키고 나서, 끝이 나고, 기다려야 하는 경우에, 정답 풀이에서는 t1.join(); , t2.join(); , t3.join() 이렇게 전부다 join()을 해주었는데, 저 처럼 't3.join()' 하나만 써도 상관 없나요? 답변 부탁 드립니다.

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
생각하는자 댓글 1 좋아요 0 조회수 193

C언어로 입력받고 출력하기 문제 - 1 개행 문자 관련 질문

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

04 : 08 안녕하세요. C언어로 입력받고 출력하기 문제 - 1 에서 교재의 문제 하단 답에 왜 printf("두 숫자를 입력하세요: ") 이후의 출력이 두 숫자를 입력하세요: 5 10 5 + 10 = 15 (이하 생략) 로 출력되는지 궁금합니다. printf("두 숫자를 입력하세요: ") 의 경우 개행 문자가 없기 때문에 두 숫자를 입력하세요: 5 105 + 10 = 15 이런식으로 붙어서 출력되어야 하는게 아닌가요? 기초적인 질문입니다만, 답변 부탁드립니다. 감사합니다.

  • python
  • java
  • c
  • 정보처리기사
김도영 댓글 1 좋아요 1 조회수 180

프로젝트 생성오류 (gradle)

미해결

백엔드 개발을 위한 필수 강의 - 스프링 부트3

개발환경 자바 버전 : 21.0.2 프로젝트 : gradle 스프링부트 : 3.4.1 dependencis : 1. Spring Web Spring Boot DevTools ================================================================== 인텔리제이에서 프로젝트 열기시 오류가 발생함. - 이걸로 3일째 해결을 못하고 있어요. Build file 'D:\proj\demo1\build.gradle' line: 3 Plugin [id: 'org.springframework.boot', version: '3.4.1'] was not found in any of the following sources: * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org .

  • java
  • aws
  • spring-boot
백건민 댓글 1 좋아요 0 조회수 244

컴퓨터 멈춤 현상

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요 선생님 test_proj 처음 만들고 에뮬레이터 실행 후 프로젝트 실행했을 때 자꾸 이부분에서 노트북이 아예 멈춥니다. 키보드랑 마우스로 작동이 하나도 안돼서 지금 재시작한지 4번째입니다. 위 사진에서 늘 멈추는 현상이 발생하는데 해결이 가능할지 문의드립니다. ㅠ 참고로 제 노트북 사양입니다. 이렇게 사양 메모리도 변경해봤는데 마찬가지입니다 ㅠㅠ

  • flutter
  • 클론코딩
성현시스템 댓글 1 좋아요 0 조회수 173

paymentProcess() 결제내역 남기기

미해결

[백엔드/예외처리 시나리오/집계 최적화] 백엔드 포트폴리오와 실무 이력 강화 전략. 올인원 PART1

제가 알기로는 request_pay() 매개변수로 포트원 대시보드에서 확인가능한 storeId 와 channelkey을 추가해서 요청해야, 결제내역에 남는걸로 알고있습니다. 결제기록 안남으시면 참고하세용

  • java
  • spring-boot
  • 포트폴리오
  • 기술면접
  • bulkinsert
구코딩 댓글 0 좋아요 0 조회수 186

채팅 프로그램 관련 질문이 있습니다.

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 영한님 코드는 제가 이해한 바로는 세션 객체를 돌리는 스레드가 채팅을 다른 사람에게 전파하는 코드도 돌리는 걸로 알고 있습니다. 저는 채팅을 다른 사람에게 보내는 것을 맡은 객체를 따로 만들고 스레드도 따로 돌리게 만들었습니다. 혹시 이렇게 하는 게 좋은 건지 궁금합니다. 이걸 가능하게 하기 위해서 ConcurrentLinkedQueue를 사용했고 각 세션이 채팅을 받으면 이 queue에 채팅 내용을 넣으면 이 queue를 담당하는 스레드에서 큐를 비워가면서 채팅을 각 사용자에게 보내게 했습니다. 근데 큐가 차 있는지 확인하는 방법을 잘 몰라서 0.1초마다 while문을 돌려서 큐가 차 있는지 확인하고 차 있으면 채팅을 보내게 했습니다. 이 방식이 굉장히 마음에 안 드는데 더 좋은 방법이 뭐가 있을지 궁금합니다.

  • java
  • 네트워크
  • 객체지향
사차 댓글 1 좋아요 2 조회수 248

web_view 강의중 안드로이드 에러

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

web_view 강의를 듣고있는데 강의 내용대로 설정하여도 아래와 같은 오류가 납니다 일전 10월경에 저와 동일한 질문에 대해 답을 주신게 있기에 참고하였습니다만 (빨간색으로 질문표기) 적어주신 경로와 내용이 제 안드로이드 스튜디오와 다르고 해결도 되지 않았기에 다시 질문드립니다 1. Android SDK 업데이트 Android SDK와 빌드 도구를 최신 상태로 변경. Android Studio에서 SDK Manager 로 이동한 후 다음 사항을 업데이트: Android SDK Platform (타겟 SDK). Android SDK Build-Tools . Android SDK Command-line Tools . 추가로, build.gradle 에 지정된 타겟 Android 버전에 맞는 SDK가 설치되어 있는지 확인. ( build.gradle에 지정된 Android 버전을 어떻게 확인하죠?) 2. JDK 버전 확인 JDK 버전이 올바르게 설정되어 있는지 확인. (Flutter는 JDK 11과 가장 잘 호환됩니다) Android Studio 설정 : File > Project Structure > SDK Location 으로 이동하여 JDK 경로가 JDK 11을 가리키고 있는지 확인. 환경 변수 설정 : 시스템의 JAVA_HOME 이 JDK 11로 설정되어 있는지 확인. (Android Studio에 적어주신 File 경로에는 Project Structure가 없습니다 참고로 저는 Mac을 사용합니다 마찬가지로 JAVA_HOME이 어떻게 설정되어있는지 찾을수가 없습니다 )

  • flutter
  • 클론코딩
이윤주 댓글 1 좋아요 0 조회수 164

오타 제보

미해결

김영한의 실전 자바 - 중급 1편

1. Object 클래스 문제와 풀이 부분에 오타 제보입니다. 넓이(width)-->너비(width) 수정하면 좋을 것 같습니다.

  • java
  • 객체지향
이희원 댓글 2 좋아요 0 조회수 130

서비스테스트,리포지터리 테스트 따로 만드는 이유?

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 제목그대로요 어떤차이가 있고, 현업에서도 그러는지 궁금합니다.

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 1 좋아요 0 조회수 223

단일연산변수 api

미해결

자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]

안녕하세요 단일연산변수 api에 관련해서 질문드립니다! 13:50 ppt에서 단일연산변수를 사용한(왼쪽) 코드에서 for문에서 counter.incrementAndGet()을 호출하는부분이 있는데 해당 메서드 실패시 재연산을 수행하는 코드가 없더라고요 그래서 해당 api는 내부적으로 cas연산을 사용하는데 내부적으로 cas연산이 실패하는경우 재시도를 통해서 최종적으로 나오는 결과값을 무조건 보장해주는걸로 이해했는데 맞는걸까요??

  • java
  • 동시성
  • multithread
  • synchronisation
학생2 댓글 0 좋아요 0 조회수 135

synchronized 블럭과 메인메모리 반영

미해결

자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]

안녕하세요 선생님 강의 재밌게 듣고 있습니다! 24:27분 ppt에서 synchronized 블럭안에서 참조되는 모든 변수들은 메모리로부터 읽어들여지고 블럭을 벗어나면 그동안 수정된 모든 변수들이 즉시 메모리로 반영하게 해준다고 설명해주셨는데 왜 연산이 수행되고나서 바로 적용이 되는게 아닌 블럭을 벗어나야지 적용이 되는건가요?? 내부적으로 성능최척화를 위해서 그런건가요?? 이렇게 블럭을 벗어나고 적용이되는경우로 인해 생기는 다른 문제점은 없나요?? (블럭에서 연산 시간이 오래 걸려 가시성이 늦어지는 등)

  • java
  • 동시성
  • multithread
  • synchronisation
학생2 댓글 0 좋아요 0 조회수 162

다대다 관계 질문

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] category, item 내용 중 질문있습니다. 하나의 카테고리에 여러 아이템이 들어갈 수 있다는데 이게 왜 다대다 관계인지 이해가 안갑니다,,, 쉽게 설명 부탁드려여 ㅠㅠㅠ

  • java
  • jpa
hj.kang1409 댓글 2 좋아요 0 조회수 99

자식 삭제 관련 문의 사항

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

아래 코드에서 em.flush()와 em.clear()를 사용하면 findChild가 삭제되는데 em.flush()와 em.clear()를 사용하지 않으면 findChild가 삭제되지 않는 이유에 대해서 잘 모르겠습니다. public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); //code EntityTransaction tx = em.getTransaction(); tx.begin(); try { Child child1 = new Child(); Child child2 = new Child(); Parent parent = new Parent(); parent.addChild(child1); parent.addChild(child2); em.persist(parent); // flush, clear 사용 여부에 따라 remove가 안됨 em.flush(); em.clear(); Child findChild = em.find(Child.class, 1L); System.out.println("findChild.getId() = " + findChild.getId()); em.remove(findChild); tx.commit(); } catch (Exception e) { tx.rollback(); e.printStackTrace(); } finally { em.close(); } emf.close(); } } @Entity public class Parent { @Id @GeneratedValue private Long id; private String name; @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL) private List<Child> childList = new ArrayList<>(); // 연관관계 편의 메서드 public void addChild(Child child){ childList.add(child); child.setParent(this); } } @Entity public class Child { @Id @GeneratedValue private Long id; private String name; @ManyToOne @JoinColumn(name = "parent_id") private Parent parent; }

  • java
  • jpa
kshlove735 댓글 2 좋아요 0 조회수 137

파일들이 주황색 글씨로 떠요

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 지피티에 검사해서 나오는 방법을 모두 다 해보았습니다. Gradle 프로젝트 리로드, 캐시 무효화, 프로젝트 SDK 재설정, 소스 루트 설정 확인, Gradle 빌드 툴 설정 확인 등등 모두 다 해보았지만, 여전히 저 파일들이 주황색 글씨로 뜹니다.

  • java
  • spring
  • mvc
  • spring-boot
이연서 댓글 2 좋아요 0 조회수 365

다대일 예시에 관한 질문입니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. member와 team을 다대일 관계로 설계할 경우요. 다수의 멤버는 하나의 팀을 갖는다 라는 근거에 의해 설계가 되는거잖아요. 저는 자꾸 헷갈리는 점이 하나의 멤버는 하나의 팀에만 속할 수 있다. 이게 생각나서 오히려 일대일이 아닌가? 생각이 들어요 다대일의 다른 예시 없을까요? 오히려 하나의 팀은 다수의 멤버를 가질 수 있다. 로직인 일대다 관계는 이해가 갑니다

  • java
  • jpa
hj.kang1409 댓글 2 좋아요 0 조회수 80

연관관계 강의 질문

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)네 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네 [질문 내용] 일대다, 다대일 등 내용이 이해가 가지 않으면 이것과 관련한 기초 강의를 보라고 하시던데 그게 어떤 강의 인가요?

  • java
  • jpa
hj.kang1409 댓글 2 좋아요 0 조회수 95

인기 태그

인프런 TOP Writers

주간 인기글