묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
포인터의 개념
15강 10:19왜 출력값이 42가 아닌가요?넘버의 주소값을 물어봐서 그런건가요?답이 42가 되려면 *number이여야지 되는건가요?
-
해결됨수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화
18강 excute sub-workflow output 데이터가 없네요
안녕하세요 강의잘듣고 있습니다!!1. 이미지 생성 및 이미지 업로드 서버까지 완료. Blog-Image-Maker 워크플로우까지 생성해서 When Excuted by Another Workflow(Accept all data)까지 생성2. 다시 Blog-Content-Writer 워크플로우에서 loop 에 excute sub-workflow 를 붙였는데, input데이터는 있으나 output에 image_url 이 공란으로 나옵니다. 핀 전부 제거하고 다시 수행해도 마찬가지네요...해결방법이 없을까요?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
mutex와 sleep 차이점
mutex도 커널로 sleep가 되는걸로 알고 있는데 스핀락을 구현하면서 sleep를 같이 구현하는것과 mutex를 사용하는것의 차이가 궁금합니다
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
2025년 1회 시험 결과
아직 강의는 안들었구요 2025년 1회 모의고사 가채점40점 나왔는데 저 가능할까요..?코드 너무 어렵게 나왔던데..;;
-
해결됨토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
28. 회원 애플리케이션... / 이메일 중복 검사를 도메인 서비스로 수행하는 방식에 대해서
안녕하세요, 토비님.강의 유익하게 듣고 있습니다. 🔵수업:28. 회원 애플리케이션 서비스 테스트 (2) / 13:00~ : 이메일 중복 검사는 도메인모델에서 처리할 수 없음 🔵질문:이메일 중복 여부의 검사는 도메인 규칙으로 생각됩니다. 이메일 중복 여부 검사를 도메인 계층 대신 애플리케이션 계층에 두신 점에 대해 토비님의 시각이 궁금합니다.회원 도메인의 email 속성을 자연키로 삼아 유일성을 부여했고, 이는 도메인 규칙이라 생각됩니다.이메일 중복 여부 검사는 외부 액터와의 상호작용이 필요하니 말씀하신 것처럼 도메인 모델 내부에서 직접 수행할 수 없지만, PasswordEncoder처럼 도메인 서비스를 통해 검사를 수행하여 '이메일은 중복될 수 없다'는 도메인 규칙을 도메인 계층에 잡아두는 것도 아키텍처 구조 상 문제는 없을 것 같습니다. 🔵코드:수업 버전 - 애플리케이션 서비스에서 이메일 중복 검사(코드 블럭을 java 코드로 설정했고, 글 작성/수정 페이지에서는 코드 색상이 제대로 표시되는데 수정을 완료하면 흑백으로 돌아옵니다.)@Service @RequiredArgsConstructor public class MemberService implements MemberRegister { private final MemberRepository memberRepository; private final EmailSender emailSender; private final PasswordEncoder passwordEncoder; @Override public Member register(Member.MemberRegisterRequest registerRequest) { // 이메일 중복 검사 checkDuplicateEmail(registerRequest); Member member = Member.register(registerRequest, passwordEncoder); memberRepository.save(member); sendWelcomeEmail(member); return member; } ... } 회원 도메인 객체에서 이메일 중복 검사도메인 서비스 EmailDuplicationChecker를 추가하고 Member.register(...)에서 EmailDuplicationChecker를 이용해 이메일 중복 검사 수행domain.EmailDuplicationCheckerpackage tobyspring.splearn.domain; /** * 이메일 중복 검사를 수행하는 도메인 서비스 */ public interface EmailDuplicationChecker { boolean isDuplicated(String email); }domain/Member@Entity ... public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; ... public static Member register( MemberRegisterRequest registerRequest, PasswordEncoder passwordEncoder, EmailDuplicationChecker emailDuplicationChecker ) { Member member = new Member(); // 🔻이메일 중복 검사 if (emailDuplicationChecker.isDuplicated(registerRequest.email())) { throw new DuplicateEmailException("Duplicated email: " + registerRequest.email()); } ... return member; } ... } 레포지터리와 협력하기위해 EmailDuplicationChecker 구현하는 어댑터 추가adapter.persistence.EmailDuplicationCheckerImpl@Component @RequiredArgsConstructor public class EmailDuplicationCheckerImpl implements EmailDuplicationChecker { private final MemberRepository memberRepository; @Override public boolean isDuplicated(String email) { return memberRepository.findByEmail(new Email(email)).isPresent(); } } 기존 애플리케이션 서비스에 포함된 이메일 중복 검사 제거application.MemberService@Service ... public class MemberService implements MemberRegister { private final MemberRepository memberRepository; private final EmailSender emailSender; private final PasswordEncoder passwordEncoder; private final EmailDuplicationChecker emailDuplicationChecker; @Override public Member register(Member.MemberRegisterRequest registerRequest) { // 🔻이메일 중복 검사 호출 제거 Member member = Member.register(registerRequest, passwordEncoder, emailDuplicationChecker); memberRepository.save(member); sendWelcomeEmail(member); return member; } ... } 🔵 제가 생각해본 장단점수업 버전 - 애플리케이션 서비스에서 이메일 중복 검사장점회원 등록 과정 절차에 이메일 중복 검사가 표현되어 회원 등록 과정 절차를 명시적으로 표현'중복 검사는 안하나?' 같은 의문을 방지단점-회원 도메인 객체에서 이메일 중복 검사장점이메일 중복 불가 규칙을 도메인 계층 내부에 표현하여 도메인 모델을 코드에 자세히 표현여러 지점에서 중복 검사가 필요한 경우, 반복되는 중복 검사 메서드(레포지터리 조회 후 예외 생성)를 어댑터에 위임할 수 있음단점액터와의 협력이 필요한 도메인 규칙마다 도메인서비스&어댑터가 추가되어 유지보수 포인트가 추가되고, 이를 이용하는 객체에도 의존성이 추가되어 DI해야할 파라미터가 늘어남.만약 제가 개발을 진행 한다면 도메인 규칙마다 도메인서비스&어댑터를 추가하는 비용이 크다고 생각하는 점, 도메인 계층까지 내려가지 않고도 로직의 큰 흐름을 이해할 수 있는 점에서 수업 내용대로 애플리케이션 서비스에 로직을 구현하는 방식을 사용할 것 같습니다. 그럼에도 도메인 규칙을 도메인 계층에 두는 것에 대해서 토비님이 의견이 궁금합니다. 감사합니다.
-
미해결해킹 입문부터 중급까지, 한 번에 배우는 시스템 해킹 & 리버싱
디스코드 이메일 등록 오류
디스코드 이메일 등록과 과정명 등록 중에'등록 중 오류가 발생했습니다. 관리자에게 문의해주세요.'라는 대답만 돌아오네요.해결 부탁드리겠습니다.
-
해결됨비전공자 혼자서 하루 만에 수익화 앱 출시하기
코드에서
강의 잘 보고 있습니다!좋은 강의 만들어 주셔서 감사해요강의 보다가 그냥 좀 어색한 부분이 있는거 같아서 공유드립니다~ 65. Supabase로 공지사항 다이얼로그 띄우기 (2)수업중 아래 파일의 코드에서 하나 확인 부탁드립니다.lib/widget/announcement_dialog.dart 3번의 prefs.setStringList 가 2번의 if 문 안으로 들어가는게 맞을거 같아요. static Future<void> _setViewed(int announcementId) async { final prefs = await SharedPreferences.getInstance(); // 1. 기존의 공지사항 아이디를 가져온다. final viewedIds = prefs.getStringList(_viewedAnnouncementsKey) ?? []; // 2. 가져온 아이디에 포함여부 확인. if (!viewedIds.contains(announcementId.toString())) { viewedIds.add(announcementId.toString()); } // 3. 포함되어 있지 않다면 새로 추가한다. await prefs.setStringList(_viewedAnnouncementsKey, viewedIds); }
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
17. 함수와 재귀함수(v2) / 0:53:40 / \"%s\" 출력 결과 관련 문의
안녕하세요.char myString[]="Hello, World!";인 경우printf("문자열\"%s\"의 길이는 %d입니다.\n", myString, strLen(myString));의 출력 결과 관련하여 문의드립니다. (strLen(myString) 값은 13임) 출력 결과값을 문자열 "Hello, World!"의 길이는 13입니다. 로 적어주셨는데, 명령어 내의 \" \" 이건 왜 생략되나요?문자열 \"Hello, World!\"의 길이는 13입니다.이렇게 출력돼야 하는거 아닌가요?
-
미해결
이수증 발급여부
혹시 이 강의도 이수증이 발급되나요??이수증 발급 여부는 어디서 확인할 수 있나요??
-
미해결개발하는 정대리 다트 기초 문법
감사합니다!!
페이지 이동 뿐만 아니라 데이터 주고받는거랑 스크롤 이벤트 감지하는거, 스택, 스낵바 등등 현업에서 필요한 유용한 내용 많이 알려주셔서 정말 도움 되는 강의였습니다! 따라하면서 듣느라 1시간짜리 강의를 거의 4시간 넘게 들었네요 ㅎㅎㅎ그만큼 알차고 유익했습니다!!진짜 바이브 코딩 말고 이렇게 공식문서 보면서 제대로 이해하고 코딩하고 싶었는데 정말 도움됐습니다!! GPT 도움받았던 코드 다 갈아엎으러 가야겠습니다 ㅎㅎ 감사합니다!!
-
미해결FlutterFlow 쉽게하는 노코드 앱개발
16-17강 이미지 업로드 부분 잘 안되는데 확인 좀 부탁드립니다.
계속 해결해볼려고 하는데.. 이상하네요~~ 확인 좀 부탁 드립니다. 업로드 후 아래와 같이 이미지 로드가 안됩니다. 그런데 파이어베이스를 확인해보면 정상적으로 이미지 파일도 저장되어 있구요.. DB에 저장도 잘되어 있습니다. 초보라... 해결 방법을 모르겠습니다..
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
C# 게임서버 3D MMORPG
리니지 라이크처럼 대규모 PK 가능한3D MMORPG중에 C#으로 게임서버만든 게임이 실제로 있나요? 없다면C++에 비해 C# 속도의 한계 때문에 없는걸까요?
-
미해결FreeRTOS 프로그래밍
재진입가능여부에 관한 질문
void swap(int *x, int *y) { int temp; temp = *x; *x = *y; *y = temp;}안녕하세요 강사님 위 함수가 temp를 지역변수로 선언하면 재진입가능한 함수가 된다고하셨는데x와 y 포인터 접근으로 공유자원이 발생할 수 있는 상황이 발생할 수 있어재진입 불가능한 함수이지 않나요? 잦은 질문드려 죄송합니다.
-
미해결실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
85강 필터 이벤트수
안녕하세요.강의 수강 중인데, 85강에서 설명해주시는 필터 적용하는 부분에서 이벤트 수 선택 후 조건 "검색 유형 선택" 부분 크기에 대한 부분 밖에 선택이 안되네요,, ㅠㅠ (<, >, >= 등등) 오류일까요?
-
미해결[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
섹션1 4강부터 강의 실행 안됨 이슈
섹션1 강의에서 4강 '아나콘다와 주피터 노트북의 이해' 강의부터 강의 실행이 안됩니다.검정색 화면만 나와요... 해결방법 확인 부탁드립니다.
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
TailWind css 린트
bg-muted, muted-foreground를 린트가 인식하지 못하는 것 같아요.Tailwind CSS IntelliSense 설치했구요, 추가로 PostCSS Language Support 확장 프로그램까지 설치한 상태입니다.현재 제 eslint.config.js파일입니다. import js from '@eslint/js'; import globals from 'globals'; import reactHooks from 'eslint-plugin-react-hooks'; import reactRefresh from 'eslint-plugin-react-refresh'; import tseslint from 'typescript-eslint'; import { defineConfig, globalIgnores } from 'eslint/config'; import tailwind from 'eslint-plugin-tailwindcss'; export default defineConfig([ globalIgnores(['dist']), js.configs.recommended, // ESLint 기본 권장 ...tailwind.configs['flat/recommended'], // Tailwind 플러그인 권장(배열) ...tseslint.configs.recommended, // TypeScript 권장(배열) { files: ['**/*.{ts,tsx}'], extends: [ reactHooks.configs['recommended-latest'], // React Hooks 권장 reactRefresh.configs.vite, // Vite 환경에서 React Refresh ], rules: { 'tailwindcss/classnames-order': 'off', // 정렬은 Prettier가 담당하므로 충돌 방지 "@typescript-eslint/no-unused-vars": 'warn', // 사용되지 않은 변수가 있다면 경고 "@typescript-eslint/no-explicit-any": 'warn' // 명시적으로 any를 사용하면 경고 }, languageOptions: { globals: globals.browser, }, }, ]);
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
업캐스팅 출력 관련
업캐스팅(부묘 형태, 자식 생성자) 강의 챕터 업캐스팅 관련하여 단순히 출력 부분만 본다면부모 형태 = new 자식(업캐스팅 O)자식 형태 = new 자식(업캐스팅 X)출력 구하는 부분에 있어서는 1번 이든 2번 이든둘 다 new 자식에 해당하는 클래스로 이동해서 출력 값을 구하는게 아닌가 싶은데 1, 2번 차이가 저렇게 저는 인식하고 있어서 해당 내용이 맞는지와 뭐가 다른지 문의드립니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
VoidCallback 뒤에 null 연산자 표기에 관한 질문
null 연산자 표기에 관해 의문사항이 생겼습니다.U&I 에서는 iconButton에 정의에 아래와 같이 적혀 있어 VoidCallback 뒤에 null 연산자를 표기하는 것으로 이해했습니다. required void Function()? onPressed,ElevatedButton 역시 위와 같이 정의되어 있지만 이번 강의에서는 표기가 안되있어서 기존에 작성했던 U&I 코드로 가 null 연산자를 제거해보니 정상적으로 동작하는 것을 확인했습니다.null 연산자 관련 에러 로그가 없다면 표시를 생략해도 되는 것인지, 아니면 이와 상관없이 위젯 정의에 명시된대로 표기하는것이 권장사항인지 의문이 들어 질문드립니다.
-
해결됨AI 시대 대체되지 않는 실리콘밸리 인턴십 및 미국 빅테크 시스템 디자인 & 오픈소스 실무 기여 완성 코스
Matching Service의 MQ 필요성, Cassandra의 필요성, Cassandara - RDB 동기화
안녕하세요, Tinder 설계 강의 내용에 궁금한 점이 생겨 질문 드립니다. Matching Service와 Cassandra 사용에 대한 질문입니다.Matching Service의 MQ와 /swipe의 matching 응답값 강의에서는 REST API는 지연이 발생할 수 있으므로 MQ를 사용했다고 말씀하셨습니다. 이때 API 명세에 있는 matching 값의 해석이 헷갈립니다. matching은 swipe 시점에서 자신이 상대와 매칭되었는지 알 수 있는 값이라고 생각되는데, 그러면 동기 처리가 필요한 것 아닌가 생각이 듭니다. 즉 Cassandra에서 inverse swipe이 존재하는지를 확인한 뒤에야 API 응답을 보낼 수 있는 것 아닌가요?Cassandra의 필요성RDB 조회만으로 inverse swipe 여부를 파악할 수 있을 것 같습니다. 그러면 Cassandra는 캐싱 용도로 사용한 것이라고 보아야 하나요? 원래 설계에서 Cassandra가 자연스럽게 도입된 이유가 궁금합니다.Cassandra - RDB 동기화 여부swipe 기록을 RDB와 Cassandra에도 모두 저장할 때, 일시적 오류 등으로 한쪽에만 저장될 수도 있을 것 같은데, 이런 상황에 대비해 RDB와 Cassandra 간 동기화가 필요한지 궁금합니다.감사합니다.
-
미해결[AI 기초] AI Research Engineer를 위한 CNN 이해하기
feature map을 더하는 이유가 궁금합니다.
안녕하세요 강사님 무료로 강의를 해주신 덕분에 이해를 잘하면서 따라왔습니다 감사합니다. 다름이 아니라 해당 강의의 2:45에서 질문이 하나 있습니다. 단순한 것인데 궁금한 것이 각각의 RGB채널에 대해서 피처맵 F1r, F1g, F1b가 나오게 되는데 이 피처맵들을 다 더하는 이유가 무엇인가요? 단지 색을 표현하기 위해서는 RGB가 있어서 이 세 개의 조합으로 색을 표현하기 때문에 각각의 피처맵을 더해서 표현되어야한다는 관점인건가요?