묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
백그라운드/메인 쓰레드 그리고....
1. PackatQueue를 OnRecvcallback을 통해 거치게되면 유니티에서 사용되는 메인쓰레드로 사용할 수 있다는 얘기로 들리는데. 유니티에서 그렇게 작동하도록 만든것인가요? 즉 유니티 오브젝트와 서버를 연동시키려면 쓰레드는 무조건 큐(Push,Pop)를 거쳐서 와야한다? 라고 유니티 측에서 규칙을 정해둔거? 그리고 2. 전 강의에서 설명하셨을 수도 있는데 너무 많은게 지나가서 질문 드립니다... HandlePacket만으론 유니티와의 연동이 되지않은 걸로 보이는데 HandlePacket을 자동화해서 사용하는 이유가 있나요. 제가 이해한 바로는 1번에 해당하는 경우에만 유니티가 제대로 작동되는 걸로 보여져 HandlePacket은 뭘하는지 잘 모르겠습니다. 3. 기존에는 (유니티 연동 전) 백그라운드 풀에서 쓰레드를 뽑아와서 쓴다고 하셨는데.. 이 부분은 제가 잊은건지 모르겠지만.. 쓰레드 풀 자체를 어디서 생성해줬는지 기억이 가물가물합니다... 분명 첫수업시간 때 Task를 이용해 쓰레드 풀을 만드는 건 어렴풋이 기억이 나는데 그런 코드는 여기서 작성한 기억은 없고... 쓰레드 자체가 어디에서 왔는가에 대해 알려주실 수 있나요.. 메모하면서 진행해왔는데 찾기가 어렵네요. 4. 그리고 복습하는 도중에 알려주신 모든 부분을 응용해서 학습할 수 있게 해주신점 감사드립니다. 그런데 한가지 ThreadLocal을 이용한 최적화는 파이널 프로젝트에 응용한게 없는듯한데 파트 7정도 때에나 이런 것들을 한꺼번에 볼 수있을까요. 감사합니다. ---------------------------------------------------
-
미해결파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap
오류 질문
test.py r테스트를 할 때마다 계속 저렇게 오류가 뜨는데 어디서 문제가 생긴건지 모르겠습니다..
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 2 - 불량사과를 찾아라!
다크넷 자료
안녕하세요 선생님 다크넷 라벨, cfg 자료들은 어디서 다운받을 수 있는 것인가요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
테이블 관계설정
데이터베이스에서테이블 관계설정 시 모든테이블마다 관계를 정해줘야 하나요?딱히 테이블의 관계가 없으면 관계를 안 정해줘도 무관한가요??
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
패스워드 없이 로그인하기 질문 드립니다.
안녕하세요 ㅎㅎ 좋은 강의 잘 듣고있습니다. 강의를 따라하다 문제가 발생했습니다. 패스워드 없이 로그인하기에서 콘솔에 찍힌 링크를 복사해서 이동하면 로그인 화면이 나옵니다. 나온 로그인화면에서 로그인을 해야지 logged-in-by-email.html이 나옵니다. 디버깅 해보니까 콘솔의 링크로 이동하면 mainController의 login에서 먼저 걸리더군요 이것때문인것 같습니다 ㅠㅠ 강사님께서 올려주신 완성본이랑 비교를 해봣는데도 뭐가 문젠지 모르겠습니다 ㅠㅠ 도와주세요!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@GetMapping 질문
안녕하세요, 강사님! 정말 친절한 설명 덕분에 이해가 잘 가는거 같습니다! 그런데 혹시 hello라는 url을 요청하면 이번 강의에서 만든 hello함수만을 실행시킬수 있는 이유가 @GetMapping이라는 어노테이션을 사용하는 모든 메서드를 스프링이 확인해 보는것 인가요?? 그리고 혹시, 첫 편에서 말씀하신 강의순서랑 올려주신 강의랑 이름이 맞지 않던데 JPA부터 듣는것이 맞는것 인가요? 아니면 아직 스프링 핵심 원리 및 스프링 mvc등의 강의는 올라오지 않은것 인가요? 감사합니다!
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
IOU 계산을 위한 Intersection areas 계산 문의
안녕하세요? IOU의 이해 강의에서 이해되지 않는 부분이 있어 질문 드립니다. Intersection 구역 넓이를 구하기 위해 좌상단 좌표와 우하단 좌표를 구하는 경우에 있어서, Intersection의 좌상단 X좌표는 각 GT, CB 박스의 좌상단 X좌표 중 큰(Max)값을 구하는 건 이해했습니다. 그런데 Intersection 좌상단의 Y좌표를 구할 때 코드를 보면 각 GT, CB 박스의 좌상단 Y좌표 중 큰(Max)값을 구하는게 잘 이해가 안됩니다. 반대로 작은(Min)값을 구해야 intersection 영역의 좌상단 Y좌표가 나오는 것이 아닌지.. 이와 유사하게 intersection의 우하단 영역의 Y좌표를 구하기 위해서는 GT, CB 박스 우하단의 Y좌표 중 큰(Max)값으로 구해야 하는 것이 아닌지요? 아니면 혹시 각 Box별 모서리 좌표의 Notation을 제가 잘못 이해하고 있는 것 같은데.. 설명 부탁드립니다.
-
미해결플러터와 장고로 1시간만에 퀴즈 앱/서버 만들기 [무작정 풀스택]
저...죄송하지만
퀴즈 앱 UI까지는 전부 따라서 만들었는데 Django 부분부터는 시작부터 막히네요 ㅜㅜ 해당 부분에 대해서 기초가 아예 없어서 어느 폴더에 어떻게 프로젝트가 들어갈 빈 폴더를 만들어야되는지 모르겠습니다...
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
제가 생각한 proxy 구조가 이게 맞나요?
여기서 front에서 바로 back으로 갔다가 데이터 로딩해서 랜더링을 하면 서버사이드 렌더링이다 라고 이해하고 있는데 맞나요?
-
미해결SVG 마스터
그림판에 도형을 따라 그리기
안녕하세요! 그림판 처럼 보이는 곳에 도형이 이미 그려져 있고, 그것을 잘 따라 그리면 true, 잘 못 따라 그리면 false 라는걸 만들고 싶습니다. 모바일에서 동작하게 만들고 싶은데 도형을 잘 따라 그렸는지를 어떤식으로 확인 할 수 있을까요? 대략적인 방향을 잡아주시면 많은 도움이 될거같습니다 ㅠ 이러한 기능을 구현하려면 svg로 해야하는건지 canvas를 이용해야 하는지도 궁금합니다. 감사합니다!
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
src/test/resources 동작 문제
안녕하세요. 따라하던 중에 src/test/resources 폴더를 만들어서 아래에 메모리모드로 설정하는 파일을 따로 두어 test 동작 시에는 그 application.yml을 읽도록 하는 부분에서 문제가 있는데 해결이 안돼서 질문드립니다! main아래의 yml파일을 지우면 test아래의 yml을 읽기는 하는데 main에도 있고 test에도 파일이 있으면 main 파일 밑에 yml을 읽어버려서 혹시 STS 를 사용하면 실행 시에 읽어드리는 우선순위를 설정해야하는 것인지 무슨 문제인지 궁금합니다.
-
미해결iOS12 앱 개발 퍼펙트 가이드
VNCoreMLRequest 실행 안됨
VNCoreMLRequest() 에서 오류가 나는데 원인을 어떻게 찾을 수 있나요? return 값에서 확인 가능한가요?
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
@NamedEntityGraph 와 Fetch
안녕하세요, 강의 잘 보고 있습니다. @NamedEntityGraph로 N+1 select를 해결하는것은 잘 되는데요, 문득 궁금증이 생겨 @NamedEntityGraph를 제거하고 그냥 해당 필드에 EAGER를 붙여보았습니다. Notification entity를 조회할 때 참조하고있는 Tag entity를 같이 가져오는 것을 구현연습 하고 있었습니다. Notification.java @Entity @Getter @Setter @EqualsAndHashCode(of = "id") @NoArgsConstructor public class Notification { @Id @GeneratedValue private Long id; @Enumerated(EnumType.STRING) private NotificationType notificationType; private String title; private String link; private boolean ringBellChecked = false; private boolean linkVisited = false; @ManyToOne private Account account; @ManyToMany(fetch = FetchType.EAGER) private List<Tag> commonTag = new LinkedList<>(); private LocalDateTime createdDateTime; } NotificationRepository.java public interface NotificationRepository extends JpaRepository<Notification, Long> { List<Notification> findByAccount(Account sessionAccount); } 그리고 이를 활용하여 NotificationService.java @Transactional @RequiredArgsConstructor @Service public class NotificationService { private final NotificationRepository notificationRepository; public List<Notification> ringBellCheck(Account sessionAccount) { List<Notification> allNotification = notificationRepository.findByAccount(sessionAccount); allNotification.forEach(notification -> { notification.setRingBellChecked(true); }); return allNotification; } } 위와같은 작업을 처리합니다. 근데 현재 Notification이 3개가 존재할 때, 2020-07-28 10:14:57.791 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select notificati0_.id as id1_2_, notificati0_.account_id as account_8_2_, notificati0_.created_date_time as created_2_2_, notificati0_.link as link3_2_, notificati0_.link_visited as link_vis4_2_, notificati0_.notification_type as notifica5_2_, notificati0_.ring_bell_checked as ring_bel6_2_, notificati0_.title as title7_2_ from notification notificati0_ where notificati0_.account_id=? 2020-07-28 10:14:57.792 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:57.840 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select account0_.id as id1_0_0_, account0_.bio as bio2_0_0_, account0_.count_of_sending_email_verification_email as count_of3_0_0_, account0_.email_first_verified as email_fi4_0_0_, account0_.email_verification_token as email_ve5_0_0_, account0_.email_verified as email_ve6_0_0_, account0_.email_waiting_to_be_verified as email_wa7_0_0_, account0_.first_count_of_sending_email_verification_email_set_date_time as first_co8_0_0_, account0_.location as location9_0_0_, account0_.nickname as nicknam10_0_0_, account0_.nickname_before_update as nicknam11_0_0_, account0_.notification_comment_on_my_comment_by_email as notific12_0_0_, account0_.notification_comment_on_my_comment_by_web as notific13_0_0_, account0_.notification_comment_on_my_post_by_email as notific14_0_0_, account0_.notification_comment_on_my_post_by_web as notific15_0_0_, account0_.notification_like_on_my_comment_by_email as notific16_0_0_, account0_.notification_like_on_my_comment_by_web as notific17_0_0_, account0_.notification_like_on_my_post_by_email as notific18_0_0_, account0_.notification_like_on_my_post_by_web as notific19_0_0_, account0_.notification_my_interest_tag_added_to_existing_post_by_email as notific20_0_0_, account0_.notification_my_interest_tag_added_to_existing_post_by_web as notific21_0_0_, account0_.notification_new_post_with_my_interest_tag_by_email as notific22_0_0_, account0_.notification_new_post_with_my_interest_tag_by_web as notific23_0_0_, account0_.occupation as occupat24_0_0_, account0_.password as passwor25_0_0_, account0_.profile_image as profile26_0_0_, account0_.show_password_update_page_token as show_pa27_0_0_, account0_.sign_up_date_time as sign_up28_0_0_, account0_.user_id as user_id29_0_0_, account0_.verified_email as verifie30_0_0_ from account account0_ where account0_.id=? 2020-07-28 10:14:57.840 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:57.888 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.889 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [15] 2020-07-28 10:14:57.937 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.937 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [13] 2020-07-28 10:14:57.984 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.984 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [11] 2020-07-28 10:14:58.137 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select count(notificati0_.id) as col_0_0_ from notification notificati0_ where notificati0_.account_id=? and notificati0_.ring_bell_checked=? 2020-07-28 10:14:58.137 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:58.137 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [2] as [BOOLEAN] - [false] 이처럼 필드에 EAGER를 붙인것은 N+1 select 문제가 해결되진 않네요. 하나의 Notification만 Id로 조회했을 때는 Tag도 같이 가져오는걸 확인했습니다. 하지만 List<Notification>에서는 적용이 안되네요. 필드에 EAGER를 붙이는 것은 하나만 조회할 때 유효한 건가요? 그리고 NotificationInterceptor.java에서 SecurityContextHolder에서 세션객체 꺼내서 해당 세션객체로 Notification를 조회할 때는 왜 Account를 조회하는 쿼리는 안날아가나요? detached상태인데.. NotificationService에서 Account로 Notification을 조회했을 때는 새로 Account를 다시 조회하는 쿼리가 날아가는데..
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
의존관계 주입관련해서 질문 있습니다.
안녕하세요~ 강의잘보고 있습니다!!! 강의를 듣다가 의존관계(DI) 주입관련해서 의문이 생겼습니다. 저는 기존에 @Autowired 어노테이션을 사용하여 의존관계를 설정하였는데 김영한님 뿐만 아니라 다른 블로그를 찾아봐도 생성자 주입을 통해 DI 설정을 하고 있는데 Autowired를 사용하지않고 생성자 주입했을 때의 장점을 알려주셨으면 좋겠습니다 ㅎㅎ
-
미해결누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌
create-react-app 오류 (Cannot find module './encoding/utf8')
안녕하세요, 윈도우 환경에서 yarn 을 사용하여 create-react-app을 설치했습니다. create-react-app <프로젝트 이름>을 사용하여 프로젝트를 생성하려고 하는데, 아래와 같은 오류가 나면서 안되네요. 어떻게 해결해야 하나요?? Error: Cannot find module './encoding/utf8' Require stack: - C:\Users\charm\Documents\bus-control\node_modules\chardet\index.js - C:\Users\charm\Documents\bus-control\node_modules\external-editor\main\index.js - C:\Users\charm\Documents\bus-control\node_modules\inquirer\lib\prompts\editor.js - C:\Users\charm\Documents\bus-control\node_modules\inquirer\lib\inquirer.js - C:\Users\charm\Documents\bus-control\node_modules\react-dev-utils\browsersHelper.js - C:\Users\charm\Documents\bus-control\node_modules\react-scripts\scripts\init.js - C:\Users\charm\Documents\bus-control\[eval] at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1065:15) at Function.Module._load (internal/modules/cjs/loader.js:911:27) at Module.require (internal/modules/cjs/loader.js:1125:19) at require (internal/modules/cjs/helpers.js:75:18) at Object.<anonymous> (C:\Users\charm\Documents\bus-control\node_modules\chardet\index.js:4:13) at Module._compile (internal/modules/cjs/loader.js:1236:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1257:10) at Module.load (internal/modules/cjs/loader.js:1085:32) at Function.Module._load (internal/modules/cjs/loader.js:950:14) at Module.require (internal/modules/cjs/loader.js:1125:19) { code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\chardet\\index.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\external-editor\\main\\index.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\inquirer\\lib\\prompts\\editor.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\inquirer\\lib\\inquirer.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\react-dev-utils\\browsersHelper.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\react-scripts\\scripts\\init.js', 'C:\\Users\\charm\\Documents\\bus-control\\[eval]' ]
-
미해결Python 부트캠프
코드 다운로드 파일 주소 확인 요청
인쇄용 pdf 말고 코드 복사할 수 있는 다운로드 페이지 열리지가 않습니다.(비틀리 페이지) 시간이 부족하다보니 코드들을 복사, 붙여넣기로 해야 할 것 같은데 페이지가 열리지 않아 결과들을 많이 못보고 있습니다. 확인 부탁 드립니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
ingress에서 인증서 생성에 관해
openssl로 인증서를 생성하고 만들어진 tls.key파일로 secret을 생성하는데 openssel을 그냥 아무데서나 내가 이용할 도메인이름으로 생성하면 되는건가요? 생성된 인증서랑 어떻게 nginx랑 맵핑(?)되어 인식되는지 어느위치에서 해야 하는지 헷갈립니다. ㅠㅠ
-
해결됨페이스북 클론 - full stack 웹 개발
activate 토글
좋아요 버튼을 누를때마다 클래스에 active가 들어갔다가 나오는데, 한번 클릭을 하고 active가 들어가있는 상태에서 새로고침을 하면 다시 active가 없는 상태가 됩니다. 새로고침을 하더라도 좋아요가 눌러져있다면 active가 남아있게 하는 방법이 있을까요?
-
미해결파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap
detail의 레이아웃과 list의 레이아웃이 다릅니다
오른쪽에 있어야할 widget과 category가 detail페이지에서만 하단에 위치합니다아무리봐도 뭐가문젠지 모르겠습니다... 어차피 템플릿확장으로 base.html을 post_detail과 post_list가 공유할텐데왜 post_list페이지는 정상적으로 배치되어있고detail만 이럴까요? startbootstrap의 detail부분 페이지 소스와 저의 base.html소스의 일부를 첨부합니다
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
콘솔창에 표시가 안 뜹니다.
맨마지막 실습 중에 Get<GameObject>((int)GameObjects.ItemIcon).AddUIEvent((PointerEventData) => { Debug.Log($"아이템 클릭! {_name}"); }); 를 추가해서 아이템을 누르면 콘솔창에 표시되도록 해보는 실습을 하고 있는데 콘솔창에 표시가 안뜹니다. 선생님께서 작성하시는대로 따라서 작성했는데도 콘솔창에 문구가 뜨지 않습니다.. 혹시 왜 이런 오류가 생기는지 짐작되는부분이 있을까요..?