학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 아직 끝까지 듣지 않았는데 궁금해서 질문 드립니다. volatile을 사용한 뒤에 메인에서 t1.start() 바로 뒤에 t1.join()이 오게 위치를 변경해주면 t1.start() 가 끝난뒤에 t2.start()가 시작이 되서 balance 값이 변경된 상태로 t2 스레드가 검증에서 false값이 걸리는줄 알았는데.. 이렇게 해도 문제가 발생하는데 그 이유가 궁금합니다.
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강의 잘 보고 있습니다. 복습하던 중에 궁금한 부분이 있어 질문을 남깁니다. 현업에서 대규모 시스템을 만드는 경우에 헥사고날 아키텍처 + MSA를 사용한다는 것으로 알고 있는데, MVC 패턴이 아니라,헥사고날 아키텍처를 대규모 시스템에서 더 선호하고 사용하는 이유가 무엇인가요?? 추가적으로 이건 강의와는 관련이 없는데, 개인적인 질문이 있습니다. 저는 자바 스프링 신입 개발자를 준비하고 있는 학생입니다. 지금까지는 MVC 패턴만 사용하고, 모놀리틱 아키텍처를 사용해서 배포를 진행하고 프로젝트를 해왔습니다. 제가 알기로는 학습적으로나 포트폴리오적으로나 필요성을 느껴서 하는 공부가 제일 좋다고 들었습니다. 근데, 최근에는 어떤 필요성을 느끼지 못하면서 대규모 시스템 강의,헥사고날 아키텍처가 중요하다고 하니 강의 등을 듣고 있습니다. 왜냐하면, 본격적인 취업은 내년이고 시간이 좀 남았습니다. 그래서 해당 강의들을 들어두면 언젠가 개인 프로젝트나 현업에서 사용할 수 있지 않을까하고 듣고있습니다만, 제가 사용했던 MVC 패턴의 장단점 등 기본적인 것들도 알지 못하는 상태에서 계속 진도 나가듯이 이런 저런 강의를 듣고 하는게 괜찮을까요? 즉, 아직 기본도 잘 모르면서 계속 새로운 걸 배우는 과정들이 괜찮을까하는 걱정이 드네요. 하지만, 한편으로는 CS지식이 너무 방대해서 기초를 다 잡아두고 다음 단계로 넘어간다는 것도 솔직히 엄두가 안납니다. 그래서 우선은 쭉 이것저것 배워두고 나중에 필요하면 다시 찾아보면서 공부하면 되지 않을까 싶은데, 쿠케님은 어떤 방향이 더 괜찮다고 생각하시나요??
안녕하세요 손절 전략에 대해서는 어떻게 생각하고 계시는지 궁금하여 여쭤봅니다. signal_calculation()함수를 보면 zscore가 zscore_threshold(=2) 초과, 5 미만일 때는 signal을 -1로 채워서 stock1/stock2를 각각 매도/매수 하는 전략으로 진행되는데요, 그 밑에 ffill() 코드로 인해 한번 signal이 -1로 채워지면 zscore가 1미만으로 내려가지 않는 한, signal이 계속 -1로 유지되게 됩니다. 이 경우에 만약 zscore가 한 번 2~5 영역에 들어간 이후에 갑자기 zscore가 6, 10, 20, 100까지 혹은 그 이상 벌어지는 현상도 현실세계에서 가끔 발생할 수 있다고 생각합니다. (해당 기업에 예상치 못한 이슈가 발생 한다던가, 재해가 발생할 수 도 있겠죠) 물론 이런 경우가 자주 발생하지는 않겠지만, 한 번 발생했을 때 큰 손실이 발생할 것으로 예상되어, 그 이전 수익을 모두 잃을 수 있다고 생각합니다. 때문에 zscore가 일정 값 이상으로 벌어진다면 (예를 들면 20 이상?) 손절하는 전략을 취하는 코드도 추가하면 어떨까요? 이 부분에 대한 생각을 여쭤보고 싶네요.
'섹션2. Cursor 기능 설명' 4:02 에서 Add new rule 을 누르시면 룰을 입력할 수 있게 창이 나오는데 제꺼에서는 아무 반응이 없어서 프로젝트 룰을 입력할 수 없습니다. (맨 아래 사진 있습니다. 빨간색 표시 해놨습니다.) 저는 1.2.4 버전을 사용하는데 버전이 달라서 그런가요? 어떻게 해야 하나요? 그리고 영상에서 사용하신 User Rules과 노션에 있는 룰이 다르던데 둘 중 어느걸 따라해야 하나요?
안녕하세요, 14분 47경에 df_pair에 대해서 signal_calculation()을 진행하고 난 후의 df_pair를 보면 마지막 5행의 데이터가 zscore가 2를 넘지 않음에도 불구하고 signal이 계속 -1이네요. 강의에서는 그 사이에 signal을 변경하는 신호를 못 받아서 그렇다고 넘어가셨는데, 저는 이해가 잘 안돼서요. mother class의 signal_calculation()메서드를 확인해도 ffill()함수가 1번만 적용되고, 그 다음줄에 fillna(0)함수로 signal을 0으로 채우기 때문에 signal이 계속 -1로 유지되는 현상이 왜 발생하는지 이해가 안됩니다. (시그널이 2이하로 떨어진다면, 1번만 -1로 유지되고 그 이후에는 0으로 채워져야 하는 것 아닌가요? 더 자세히 설명해주실 수 있나요? (AI봇의 설명은 부정확한 부분이 많네요...ㅠ)
안녕하세요 영한쌤! 질문드립니다! 쓰레드별로 공유 자원에 대해 효율적인 연산 처리를 위해 캐시 메모리를 사용한다고 하셨습니다! 이러한 문제가 메모리 가시성 문제를 일으킬 수 있어 volatile 키워드로 캐시가 아닌 메인 메모리에 직접 접근할 수 있었습니다. 이번 예제의 경우, volatile이 없었던 가장 기본 BasicInteger는 volatile을 사용하지 않았어도 어느정도 값 수정이 되었는데 이는 캐시 메모리를 사용하지만 컨텍스트 스위칭이 발생하면서 캐시메모리가 메인메모리로 반영하고 다시 이를 읽어오니 반영이 된건가요? (이전에 interrupt를 boolean flag + volatile로 해결하던 예제에서는 컨텍스트 스위칭이 발생할 시기가 확정적이지 않다고 하셨는데 그거에 비해 꽤 많이 연산이 이뤄진것같습니다...)
4:20 이부분에서 for문을 이용해서 modelName1[]에 있던 문자열을 myCar.model[i] 배열로 복사하는것인데 for문 실행으로는 NULL문자를 제외한 문자열들만 복사가 되기 때문에 for문 바깥에서 myCar.model[i] = '\0'; 이라는 코드로 NULL 문자를 마저 복사해주는 게 맞나요?? 제가 이해한 것이 맞는지 질문드립니다
14:19 정적 메서드에서 정적 변수 처리 부분에서 그 전 강의에서 초기화는 한번만 진행해준다고 배웠었는데 지금 이 부분과 혼동됩니다ㅠ 몇강에서 초기화는 한번만 해준다고 배웠는데 혹시 어디인지 아실까요..? 초기화 부분에 대해 설명 부탁드립니다!! 0으로 바꿔주는게 초기화가 아닌 재할당으로 생각하면 되는걸까요?
1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? 3주차 2강 어떤 알고리즘을 학습하고 계신가요? 선택 정렬 여기까지 이해하신 내용은 무엇인가요? 선택 정렬 원리 2. 어려움을 겪는 부분 어느 부분에서 막히셨나요? 교재 잘못 나온 부분 코드의 어떤 로직이 이해가 안 되시나요? 어떤 개념이 헷갈리시나요? 3. 시도해보신 내용 문제 해결을 위해 어떤 시도를 해보셨나요? 에러가 발생했다면 어떤 에러인가요? 현재 작성하신 코드를 공유해주세요 이렇게 구체적으로 알려주시면, 더 정확하고 도움이 되는 답변을 드릴 수 있습니다! 😊 딩코님 안녕하세요! 교재에 잘못 나온 부분인가 싶어서 질문 남깁니다. 3주차 선택 정렬 부분에서요 딩코님께서도 이렇게 설명을 하시고, 직접 파이참에서 돌려봤을 때 해당 결과가 이렇게 나왔습니다. 그런데 교재에는 실행결과가 다르게 나와있어서 혹시 교재 잘못나온 건 아닌지 여쭤봅니다. 교재 보면서 혼자 생각정리 하고 있었는데, 아무리 생각해도 실행결과가 저게 아닌 것 같아서 직접 돌려보고 강의도 봤는데 교재에 나온 결과가 안 나오더라고요
22분에 나오는 코드의 실행 순서에 질문이 있습니다. 자식 클래스 생성자에 this나 super로 생성자가 적혀있지 않은 경우 자바에서 자동으로 super()를 만들어준다고 알고 있는데 맞나요? 그럼 Chi()에서 this(20)으로 Chi(20)이 실행된 다음, 이 생성자에는 따로 this나 super로 생성자가 적혀있지 않기 때문에 super()로 Par() 생성자가 호출된다고 이해하면 될까요? 질문을 정리하자면, 코드의 정확한 실행 순서가 Chi() -> Chi(int y) -> Par()인지, Chi() -> Par() -> Chi(int y)인지 알고 싶습니다.