묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
피그마 사용법
디자인할 때 auto layout 에서 정렬하는 거랑 constraints 설정하면 무료 버전 개발자 모드에서는 확인할 수 없나요?
-
미해결PM을 위한 IT SI프로젝트 전 과정 알아가기
유익한 강의 잘 들었습니다. 강의 자료 부탁드립니다.
강의자료 부탁드립니다. fkauskm@gmail.com감사합니다
-
미해결[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
AutoEncoder 차원 질문
안녕하세요! 오토인코더 구현 중 질문이 있어서 글을 남기게 되었습니다.class AutoEncoder(nn.Module): def __init__(self): super().__init__() k = 16 self.encoder = nn.Sequential( nn.Conv2d(1, k, 3, stride=2), nn.ReLU(), nn.Conv2d(k, 2*k, 3, stride=2), nn.ReLU(), nn.Conv2d(2*k, 4*k, 3, stride=1), nn.ReLU(), nn.Flatten(), nn.Linear(1024, 10), nn.ReLU() ) self.decoder = nn.Sequential( nn.Linear(10, 1024), nn.ReLU(), nn.Unflatten(1, (4*k, 4, 4)), nn.ConvTranspose2d(4*k, 2*k, 3, stride=1), nn.ReLU(), nn.ConvTranspose2d(2*k, k, 3, stride=2), nn.ReLU(), nn.ConvTranspose2d(k, 1, 3, stride=2, output_padding=1) )여기에서 nn.Linear(1024, 10), nn.ConvTranspose2d(k, 1, 3, stride=2, output_padding=1)에 질문이 있습니다.채널 수를 직접 맞춰주는 것이 아니라 반환 받아서 그 값을 nn.Linear(이 부분, 10)에 넣어주고 싶은데 gpt 한테 물어보니까 그러려면 이렇게 직접 구해서 add_module을 해줘야 한다던데...정말 이런 방법 뿐인지ㅜㅜ 매번 채널수를 직접 구해야 하는 것인지 궁금합니다!def __init__(self, input_shape=(1, 28, 28)): super().__init__() k = 16 self.encoder = nn.Sequential( nn.Conv2d(1, k, 3, stride=2), nn.ReLU(), nn.Conv2d(k, 2*k, 3, stride=2), nn.ReLU(), nn.Conv2d(2*k, 4*k, 3, stride=1), nn.ReLU(), nn.Flatten(), ) self.latent_dim = self.get_encoder_dim() self.encoder.add_module('linear', nn.Linear(self.latent_dim, 10)) self.encoder.add_module('relu', nn.ReLU()) def get_encoder_dim(self): x = torch.randn(1, self.input_shape) x = self.encoder(x) return x.view(1, -1).size(1)nn.ConvTranspose2d(k, 1, 3, stride=2, output_padding=1) 여기에서도 output_padding=1이 필요한지 알기 위해서는 직접 계산을 다 해봤어야 하는 것인데.. 이것도 위의 경우와 마찬가지로 직접 구하는 방법 뿐인지 알고 싶습니다!감사합니다!
-
해결됨[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)
Provider를 layout에서 감쌀 때 질문
body의 내부 요소들만 감싸는게 아닌 html을 전체 감싸는 이유를 알고싶어요!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
[보충] 에셋관련 내용이 지금 인터페이스와 다른거 같습니다.
안녕하세요~ 에셋관련 내용 영상에서 보면 구름 버튼을 눌러서 받으라고 되어있는데요. 이전 답변과 현재 사이트 UI가 바뀐것인지 구름모양이 단 한개도 없습니다.동영상 플레이를 해도 따로 자료 받는 버튼이 안보이구요~다른분들도 지속적으로 질문하시는거 같은데 정확한 답변 한 번 부탁 드립니다. 감사합니다~!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
Member.find 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.Member member = em.find(Member.class, o: 150L); 이라고 되는데 영상에서는Member member = em.find(Member.class, primary key: 150L); 라고 뜨던데 상관없나요?
-
미해결PHP 7+ 프로그래밍
[섹션 5]레포지토리 소스파일 오류 위치, 수정 제안
섹션 5 강의, 소스파일 실행하면 에러 발생Fatal error: Uncaught ArgumentCountError: The number of variables must match the number of parameters in the prepared statement in ... 원인 :php7/ch5/app/services/index.php : 14줄[ 'username' => $username ] = first('SELECT username FROM users', $post['user_id']);해결 :[ 'username' => $username ] = first('SELECT username FROM users WHERE id = ?', $post['user_id']);
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-O 질문있습니다!
http://boj.kr/f398698f0d8a46a59a9f1de55aff3402선생님과 비슷한 방법으로 vector접근해서 풀고 있는데 for (auto w = pos; w != v[status[i].y][status[i].x].end();w++) { v[ny][nx].push_back(*w); status[*w].y = ny; status[*w].x = nx; }여기서 자꾸 에러가 뜨는 이유가 궁금합니다!
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
메모리 가변 분할 방식
안녕하세요. 강의 잘 듣고 있습니다.메모리를 연속 할당할 때, 가변 분할 방식을 하면 내부단편화가 생기지 않는 이유가 무엇인가요?예를 들어, 강의 3분 06초와 같은 상황에서 6MB 짜리 프로그램이 들어온다고 하면 8MB에 할당이 될 것이고 그러면 2MB 짜리 내부 단편화가 생긴 것 아닌가요?아니면 가변 분할 방식에서는 고정 분할 방식과 다르게 2MB짜리 프로그램은 할당할 수 있기 때문에 이를 내부 단편화가 아닌 홀이라고 표현하는 걸까요?항상 빠르게 답변해주셔서 감사합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
smurf attack / Land Attack
스머프 (Smurf Attack): 출발지 주소를 공격 대상의 IP로 설정하여 브로드캐스팅을 통해 네트워크를 마비시키는 공격입니다. 이로 인해 피해자는 네트워크 과부하로 인해 정상적인 서비스를 제공할 수 없게 됩니다.랜드 어택 (Land Attack): 출발지와 목적지의 IP를 동일하게 설정하여 패킷을 보내 가용성을 침해하는 공격입니다. 이로 인해 시스템은 스스로에게 패킷을 보내며 과부하에 빠집니다.둘 다 출발지 = 목적지 ip 설정을 하는 것인데, 차이점은 브로드 캐스팅과 패킷 전송이 맞나요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
프로토콜
sw 보안 관련 용어 정리를 보니문제를 풀다가 프로토콜에 관해서도 이런거 있고 저런거 있고헷갈리는게 많았는데,혹시 프로토콜 용어 정리도 볼 수 있을까요??
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
이 K8S와 그림으로 배우는 K8S 차이가 있나요?
물론 강의의 내용이 초급 -> 중급 이상으로 올라가는 만큼 내용의 퀄리티 차이가 있는 것으로 알고 있는데요.이후의 강의들 ANSIBLE (필수) / 프로메테우스(VS ZABBIX) + 그라피나 / ALGO (앞으로 나올)이 단계로 넘어가기 위해서는 이후의 다른 강의도 필수인지 궁금하네요.
-
미해결
EC2에서 Communications link failure 오류..
저는 스프링부트를 통해서 도커로 ec2 ubuntu에서 실행하고있는데요,, 왜인지 실행하면 Communications link failure 오류가 납니다.. ㅠ application.properties에서 url 문제인 것 같아서 host.docker.internal:3306 이런식으로도 바꿔봤더니 로컬에서 docker 컨테이너 실행시 잘 되는데, 여기서 ec2에 올려서 실행하면 안됩니다.. 그랬더니 저런 오류가 나요 혹시 제가 뭔가 빠트린게있는걸까요..? 저는 mysql local에서 돌리고싶습니다... rds나 docker 컨테이너에 mysql 띄우거나 그럴 생각은 없어서요.. ec2에서 보안그룹도 mysql 3306 포트로 모든접근 허용으로 다 열어줬는데 뭐 문제가 될만한게 어떤게있을까요..
-
해결됨유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
수업내용 관련해서 몇가지 질문이 있습니다
안녕하세요 강의 수강중 질문이 몇가지 생겨서 질문드립니다강의에서 제가 놓친걸수도 있는데 변수명앞에 m_의 의미는 뭔가요?유니티에서 게임 실행시에 PlayerPrefs의 Sound값이 True임에도 불구하고 시작할 때 노래가 안나오는 현상이 계속 발생합니다..!디버깅해보니 AudioManager의 Start가 TitleManager의 Start보다 빨리 시행돼서 LoadUserData를 하기 전에 AudioManager의 해당 코드에서 Mute()를 호출하는거 같습니다 (디버깅 해보면 이 시점엔 userSettingsData.Sound 값이 false 입니다)private void Start() { var userSettingsData = UserDataManager.Instance.GetUserData<UserSettingsData>(); if(userSettingsData != null) { if(!userSettingsData.Sound) { Mute(); } } }전체 코드와도 비교해봤을 때 틀린 부분이 없었고 뭔가 될때도 있고 안될때도 있고 이러다보니 원인을 잘 모르겠습니다..!
-
미해결실습으로 배우는 그라파나 - {{ x86-64, arm64 }}
정확하게 강의 순서를 알려주시겠어요?
강의 난이도가 대부분 초급이 아니라 중급 이상이라 순서를 여쭤봅니다.쉽게 배우는 k8s -> 그림으로 배우는 K8S -> 앤서블 -> 프로메테우스 -> 그라피나순인가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
엔티티 비즈니스 로직 vs 서비스 비즈니스 로직
강의에서 DDD의 개념을 적용하시면서 엔티티에 비즈니스 로직을 넣으셨었는데요.아직까진 DDD에 대한 개념이 완벽히 정립되지 않아 별도의 자료로 공부를 하고 있습니다.공부하는 차원에서 서비스 계층에서의 비즈니스 로직 개발로 코드 리팩토링을 스스로 해보고 강의에 나오지 않았던 상품 서비스 테스트 코드 작성 결과 일단 통과가 나오긴 했습니다만... 잘 한 것인지 몰라서 코드 평가를 좀 받아보고 싶어 질문을 올리게 되었습니다.테스트 코드 역시 각 계층별로 지켜야 하는 테스트 코드 원칙이 있으나 이 부분도 같이 공부하느라 제대로 적용해보기 아직 어려운 단계라 @SpringBootTest를 사용했습니다. 이 부분은 감안해주세요..! 또 다른 추가 질문이 있습니다. 강의에서 엔티티에 구현한 비즈니스 로직을 서비스 계층에 비즈니스 로직을 개발하는 방식으로 바꾸는 과정에서 엔티티를 직접 이용하는 것보다는 DTO를 만들어서 전달하는게 엔티티에 많은 변화를 가하지않는 유일한 방법일까요?ItemService 코드package spring.project.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import spring.project.domain.Item; import spring.project.exception.NotEnoughStockException; import spring.project.repository.ItemRepository; import java.util.List; @Service @Transactional(readOnly = true) public class ItemService { private final ItemRepository itemRepository; @Autowired public ItemService(ItemRepository itemRepository) { this.itemRepository = itemRepository; } @Transactional public Long saveItem(Item item, int quantity) { addStock(item, quantity); itemRepository.save(item); return item.getId(); } private void addStock(Item item, int quantity) { item.setStockQuantity(item.getStockQuantity() + quantity); itemRepository.save(item); } @Transactional public void removeStock(Item item, int quantity) { int restStock = item.getStockQuantity() - quantity; if (restStock < 0) { throw new NotEnoughStockException("재고가 부족합니다."); } item.setStockQuantity(restStock); itemRepository.save(item); } public Item findOne(Long itemId) { return itemRepository.findOne(itemId); } public List<Item> findAll() { return itemRepository.findAll(); } }ItemServiceTest 코드package spring.project.service; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import spring.project.domain.Album; import spring.project.domain.Book; import spring.project.domain.Item; import spring.project.repository.ItemRepository; @SpringBootTest class ItemServiceTest { @Autowired private ItemRepository itemRepository; @Autowired private ItemService itemService; @Test @DisplayName("상품 저장 시 상품 저장과 동시에 재고 수량이 증가해야 한다.") void save() { // given Book book = new Book(); book.setAuthor("홍길동"); // when Long id = itemService.saveItem(book, 3); // then Item item = itemRepository.findOne(id); Assertions.assertThat(item.getName()).isEqualTo(book.getName()); Assertions.assertThat(item.getStockQuantity()).isEqualTo(3); } @Test @DisplayName("상품 주문이 들어가면 재고 수량에서 주문 수량만큼 차감이 되어야 한다.") void remove() { // given Album album = new Album(); album.setName("영원"); Long id = itemService.saveItem(album, 100); // when itemService.removeStock(album, 4); // then Item item = itemRepository.findOne(id); Assertions.assertThat(item.getStockQuantity()).isEqualTo(96); } }
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
23년 1회 java
System.out.println(a); 이거 설명하실 때 객체 a가 아니라 변수 a를 불러오라고 하셨잖아요. 객체 st. a를 출력해도 10아닌가요? 20을 출력할려면 괄호안에 a가 아니라 뭐가 들어가야하나요? 차이를 모르겠어요.
-
해결됨Next + React Query로 SNS 서비스 만들기
NextAuth 질문입니다!
NextAuth에서의 session token을 통해 사용자정보랑 세션쿠키를 전달하고있는데요.만일 access Token이랑 Refresh Token으로 관리를 한다고 한다면, Session Token도 반 강제적으로 사용해야 하는 것같은데 이럴때는 3개의 토큰을 만료일을 컨트롤 해야하는건가요..?예로 access 30분session 1시간refresh 7일 이렇게 가져가서 엑세스와 세션 두가지의 토큰을 다 갱신해주어야 하는건지 아니면 제가 지금 이상한 프로세스를 생각중인지 모르겠네요 .. NextAuth에 리프래시 엑세스토큰을 통상적으로 어떻게쓰는지가 궁금합니다.. session token때문에 너무 혼동이오네요..
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
로그인/소셜로그인 테이블 설계 관련 궁금증 관련 질문입니다.
강좌를 들은 후, 소셜로그인을 구현하다가 의문점이 생긴 부분이 있어 어떠한 방식으로 접근하는 것이 궁금하여 질문을 남깁니다.상황일반 회원가입시에는, 이메일 비밀번호 + 해당 서비스에 필요한 필수 정보들을 받고, 해당 내용을 클라이언트로 부터 받아 user테이블에 저장하는 상황입니다.소셜 로그인 같은 경우에는, 정보를 받을 수 있는 것이 제한이 되어있어, 추가적으로 필요한 정보들을, 소셜 로그인 성공 이후, 클라이언트 측에서 회원가입시 필요한 정보들을 받을 수 있는 화면으로 이동시켜, 해당 정보를 받아서, 부족한 정보들을 채워넣는 것으로 알고 있습니다.궁금점.소셜로그인 로그인 후, 신규 유저이기에 서비스 이용에 필요한 필수 부가정보 입력을 받기위해, 회원가입 창으로 이동시켜, 부가 정보를 입력받는다면 크게 문제가 없습니다.하지만, 앱을 사용하다보면은 데이터가 끊긴다거나, 배터리가 방전된다거나, 알수없는 이유로, 로그인은 되었으나, 필수 부가정보를 입력하지 못하고, 꺼지는 경우가 있습니다. 필수 부가정보를 꼭 받아야 하는 경우라면 이 부분에 대해서 어떻게 처리해야하나요?필수 정보를 채웠는지 여부를 확인하는 column을 boolean으로 User 테이블에 추가하여, 클라이언트에서 해당 Column으로 부가정보를 입력받지 않았으면 메인화면으로 가지않고, 회원가입 스크린으로 리다이렉 시키는 이런 로직을 작성해야하나요?필수 정보를 채웠는지 여부를 확인하는 column 없이 이런 경우에 처리할 수 있는 방안이 있는지 궁금하고, 현업에서는 어떤식으로 테이블을 설계하는지 궁금합니다!
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
소셜로그인 User 테이블 관련 질문 있습니다.
소셜로그인을 구현하다가 의문점이 생긴 부분이 있어 어떠한 방식으로 접근하는 것이 궁금하여 질문을 남깁니다.상황일반 회원가입시에는, 이메일 비밀번호 + 해당 서비스에 필요한 필수 정보들을 받고, 해당 내용을 클라이언트로 부터 받아 user테이블에 저장하는 상황입니다.소셜 로그인 같은 경우에는, 정보를 받을 수 있는 것이 제한이 되어있어, 추가적으로 필요한 정보들을, 소셜 로그인 성공 이후, 클라이언트 측에서 회원가입시 필요한 정보들을 받을 수 있는 화면으로 이동시켜, 해당 정보를 받아서, 부족한 정보들을 채워넣는 것으로 알고 있습니다.궁금점.소셜로그인 로그인 후, 신규 유저이기에 서비스 이용에 필요한 필수 부가정보 입력을 받기위해, 회원가입 창으로 이동시켜, 부가 정보를 입력받는다면 크게 문제가 없습니다.하지만, 앱을 사용하다보면은 데이터가 끊긴다거나, 배터리가 방전된다거나, 알수없는 이유로, 로그인은 되었으나, 필수 부가정보를 입력하지 못하고, 꺼지는 경우가 있습니다. 필수 부가정보를 꼭 받아야 하는 경우라면 이 부분에 대해서 어떻게 처리해야하나요?필수 정보를 채웠는지 여부를 확인하는 column을 boolean으로 User 테이블에 추가하여, 클라이언트에서 해당 Column으로 부가정보를 입력받지 않았으면 메인화면으로 가지않고, 회원가입 스크린으로 리다이렉 시키는 이런 로직을 작성해야하나요?필수 정보를 채웠는지 여부를 확인하는 column 없이 이런 경우에 처리할 수 있는 방안이 있는지 궁금하고, 현업에서는 어떤식으로 테이블을 설계하는지 궁금합니다!