안녕하세요. 강의 잘 듣고 있습니다! 3강에서 Extrude 기능을 설명을 해주셨는데, 제가 지금 2019버젼을 쓰는데 이 버젼에서는Move 인 상태에서 Ctrl키로 extrude 하는 방법은 안되는 건가요?? 마스크 안된 폴리쪽을 move 상태로 하고, ctrl 키 shift 키를 같이 움직여도 extrude가 안됩니다 ㅠㅠ 왜 이럴까요???
안녕하세요, 좋은 강의 잘 듣고 있습니다. 시원시원한 설명 감사합니다. 혹시나 몰라 이전 강의를 찾아보았지만 angular-petlist에 대해서는 creapple 에서 src 파일을 복사-붙여넣기 하라는 안내가 있었습니다만 petstore 에 대한 언급은 찾을 수 없었습니다. 그리고 creapple에서 받은 petstore 는 아무래도 강의 마지막까지 진도가 다 나간 결과물인 것 같습니다. 결과값이 아닌 지금단계에 해당하는 (상품데이터 가져오기를 이제 듣고 있습니다) 소스의 위치를 알 수 있을까요?
선생님 자꾸 질문이 너무 많아서 정말 죄송합니다. 열심히 공부하려다 보니 그렇구나로 이해해주시면 정말 감사하겠습니다. getchar();에 대해서는 이해가 됐습니다. 친절한 설명 정말 감사합니다. 질문 한방에 다 할게요 1. 한글 동시입력에 대해서 답해주셨는데, 말씀하신 다른 부분이란, 제가 어찌 설정할 방법이 없는건가요? 혹여나 설명가능하거나 제가 참고할 만한 글이 있다면 링크라도 달아주시면 정말 감사하겠습니다. 2. 비밀번호 수정에 관한 코드도 정말 감사합니다. 써주신대로 이해가 됐습니다. 하나 더 질문이 있는데, (도통 코드를 짜지 못하겠어서요). 백스페이스바를 계속 입력할수도 있지 않습니까? i=0이 되더라도 말이죠. 그럴때 오류가 안나게하기 위해서는 어떤 코드를 짜면 좋을까요? (그냥 선생님의 정확한 생각으로 코드를 알려주시면 정말 감사하겠습니다.) 3. 줄바꿈 문자 입력에 관한 내용인데요. 선생님께서 첨부해주신 코드를 사용해도 엔터를 입력하면 쓰레기 값이 입력됩니다. 제 코드를 비교해도 다른 점이 없는데 말이죠....... 어떤것이 문제인지 코드 올릴테니 봐주세용 ㅜㅠㅜㅠ #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define max 1000 // 비밀번호를 입력받아서 // 맞는 경우? 일기를 읽어와서 보여주고, 계속 작성할 수 있도록 합니다. // 틀린 경우? 경고 메시지를 표시하고, 종료합니다. int main_4() { char line[max]; // 불러오기를 했을 때, 불러올 내용을 저장할 곳(변수) char contents[max]; // 일기장에 입력할 내용. char password[20]; // 비밀번호 int c; // getch 함수의 리턴값을 검사할 변수. printf("'비밀일기'에 오신 것을 환영합니다.\n"); printf("비밀번호를 입력하세요. : "); // getchar();와 getch();란? : 한 글자씩 입력하는 함수. 널문자까지 문자로 인식한다. // getchar(); : Enter를 입력해야 동작을 한다. // getch(); : 키 입력만 하면, 바로바로 동작을 한다. int i = 0; while (1) { // for 구문을 써도 된다. c = getch(); // 입력한 문자들이 getch로 바로바로 입력이 되어, 한 글자씩 변수 c에 저장된다. if (c == 13) { // 입력한 문자가 Enter(줄바꿈 : \n)라면. (Enter의 아스키코드가 13이다.) password[i] = '\0'; // i번째에 데이터를 널문자(끝낼수 있도록)를 넣는다. /*참고로, getch():는 한 글자씩 입력하는 함수인데, 응용해서 한 줄의 문자를 입력하는 함수지만, 더 응용해서 여러줄을 입력하기도 한다. 줄바꿈을 할 때 Enter를 입력하고, 여러 줄의 문장을 끝낼 때 ctrl+z를 입력한다. Enter로 줄바꿈을 하면 입력될 데이터는 '\0'이지만, ctrl+z로 줄바꿈을 하면 -1을 리턴값으로 가진다. 그래서 -1을 위해서 int형 변수로 선언해야한다.*/ break; // 비밀번호 입력 종료. } else if (c == 8) { // 백스페이스바를 입력하면, 즉 비밀번호를 지우면 (백스페이스바의 아스키코드가 8이다.) password[i - 1] = '\0'; // i번째에서 Backspace를 입력하는 것이니, 그 전자리인 'i-1'번째 자리의 데이터를 지워야한다. printf("\b \b"); /*\b는 현재 데이터를 입력하는 위치에서 왼쪽(전)으로 커서를 이동시켜주는 변환문자. 그러니, 왼쪽으로 한번 커서 이동후에, 스페이스바를 입력하여 빈칸이 되게 만들어주고, 스페이스바를 입력했으니 다시한번 뒤로 커서가 이동해야한다.*/ i = i - 2; // 'i-1'번째 데이터를 지웠으니, 'i-2'번째 데이터까지만 입력이 완료된다. 44번줄에 i++이 있으니, 이렇게 입력해주는 것이 옳다. } else { // Enter를 입력하지 않으면. password[i] = c; // getch를 써서 계속 입력하여 c에 저장된 글자들이 password 배열에 저장된다. printf("*"); // 입력할 때마다, 비밀번호는 감추고, 대신 '*' 요놈을 출력할 것이다. } i++; } char* fileName = "c:\\Users\\최윤성\\Desktop\\secretdiary.txt"; FILE* file = fopen(fileName, "a+b"); // "a+b"는 파일이 없으면 생성하고, 있으면 append(뒤로 내용을 추가)한다는 의미. printf("\n\n==== 비밀번호 확인 중.... ====\n\n"); if (strcmp(password, "skehzheld") == 0) { // 1. 비밀번호가 맞다면 (strcmp는 문자열 함수를 보면 복습할 수 있다.) printf("==== 비밀번호 확인 완료 ====\n\n"); if (file == NULL) { printf("*****파일 열기 실패*****\n\n"); return 1; } else printf("*****파일 열기 성공*****\n\n"); // 파일 개방. while (fgets(line, max, file) != NULL) { printf("%s", line); } // 파일을 불러온다. 처음 쓰면 아무것도 불러올 것이 없을 것이고, 쓴 문장이 있었다면, 썼던 문장들이 불러오게 될 것이다. printf("\n\n내용을 계속 작성하세요. 종료하시려면 \"끝\"을 입력하세요.\n\n"); while (1) { scanf("%[^\n]", contents); // 줄바꿈(\n)이 나오기 전까지, 모든 문자열을 다 입력한다 뜻의 변환 문자이다. 즉, 한 문장씩 저장을 하겠다는 의미. getchar(); // 입력한 줄바꿈(Enter:\n)을 Flush(버림) 처리한다. if (strcmp(contents, "끝") == 0) { printf("비밀일기 입력을 종료합니다.\n\n"); break; } // 무한반복이니, scanf로 입력하는 모든 문장들은 "끝"이 나오기 전까지, 한 문장씩 전부 기억한다. fputs(contents, file); fputs("\n", file); // 입력된 문장들은 바로바로 저장이 된다. "끝"을 입력하여 종료하기 전까지 계속. } } else printf("==== 비밀번호가 틀렸어요. ====\n"); // 2. 비밀번호가 틀리다면. 틀렸다고 말하고. 바로 밑으로 항해서 int res = fclose(file); if (res != 0) { printf("\n*****파일이 정상적으로 닫히지 않았습니다.*****\n\n"); return 1; } else printf("\n*****파일이 정상적으로 닫혔습니다.*****\n\n"); // 결국 파일이 종료된다. 파일 닫기. return 0; } 엔터 입력마다 다른 현상의 오류가 납니다.
안녕하세요 강의 잘 보고 있습니다. 강의 내용을 활용해서 dapp 개발해보고 있는데요. 혹시 계약 완료시 sold out 표시가 나타나는 것이 아닌 상품을 파는 것처럼 계약 완료시 구매 횟수가 보여지고 증가하게 만들 수 있을까요? 예를 들면 1번 계약 완료되면 구매횟수 : 1 2번 계약 완료되면 구매횟수 : 2 이런식으로요. 좋은 강의 감사합니다.
@Test 작성 후에 툴에서는 정상적으로 실행되는 모습이었는데 @Rollback(false) 작성 후에도 H2 콘솔에서 Member가 생성되는 모습을 볼 수가 없길래 뭐가 문제인가 싶었더니 P6SPY 추가 후에 H2 URL이 잘못 연결되고 있는 것을 발견했습니다. yml 파일은 정상적으로 작성했다고 생각하는데 뭐가 문제일까요? 잘못 작성된 게 있나 싶어서 강의자료에서 코드 붙여넣기도 해봤는데 여전히 해결이 안 됩니다. 도움 부탁드립니다.
안녕하세요. 강사님! 해커뉴스의 ask에서 질문을 클릭하면 하나의 질문 item 페이지로 가게 되는데요. 거기서 댓글을 보면 댓글> 댓글> 댓글 이런식의 트리구조가 생기는 걸 볼수 있습니다. json 데이타도 comments > comments > comments... 이런 다차원 배열로 되어있죠. 이부분을 어떻게 itemView.vue에서 <ul><li><ul><li>...포함 구조를 렌더링 할 수 있을지 궁금합니다. 얼마나 깊어질지 모르는 이런 상태에서 v-for를 써야하는지, 아니면 포함관계 태그를 문자열로 만들어 v-html로 넣어야 하는지 만약 그렇다면 어떻게 구현할 수 있는지 궁금합니다. 혹시 강사님이 이부분의 트리구조 댓글을 구현해 놓으신게 있다면 부탁드리겠습니다.
안녕하세요. 좋은 강의 잘 듣고 있습니다! 강의 후반부 Q&A에 나온 코드 쳐보니 class A { constructor ( a , b ) { this . a = a ; this . b = b ; } } class B extends A { constructor () {} } class C extends B { constructor ( a , b , c ) { super ( a , b ); this . c = c ; } } const c = new C ( 1 , 2 , 3 ); console . log ( c ); class B에 constructor를 넣으면 Must call super constructor in derived class before accessing 'this' or returning from derived constructor 에러가 발생합니다. 두 번째에 메소드 테스트 할 때도 마찬가지입니다. 자식 클래스의 constructor에서 super()를 호출하지 않으면 에러가 발생하는거 아닌가요? 강의에 나온 내용 그대로 실행이 원래 잘 되어야 되는건가요?..
ERROR] Failed to execute goal pl.project13.maven:git-commit-id-plugin:3.0.1:revision (default) on project spring-petclinic: Execution default of goal pl.project13.maven:git-commit-id-plugin:3.0.1:revision failed: A required class was missing while executing pl.project13.maven:git-commit-id-plugin:3.0.1:revision: org/eclipse/jgit/api/errors/GitAPIException [ERROR] ----------------------------------------------------- [ERROR] realm = plugin>pl.project13.maven:git-commit-id-plugin:3.0.1 안녕하세요. 위와 같은 오류가 발생하여서 애를 먹고 있습니다. 현재 자바 버젼은 java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode) 메이븐 정보는 아래와 같습니다. Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-28T00:06:16+09:00) Maven home: /Users/sjlee/.m2/wrapper/dists/apache-maven-3.6.2-bin/795eh28tki48bv3l67maojf0ra/apache-maven-3.6.2 Java version: 1.8.0_131, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre Default locale: ko_KR, platform encoding: UTF-8 OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac" 구글링해봐도 알 수가 없어 질문 남깁니다. 감사합니다.
영한님 안녕하세요~ 오늘도 또 하나의 질문을 들고 왔습니다. 예전 MyBatis 방식에서는 보통 수정 처리의 경우, 업데이트 문 한번으로 처리가 가능했는데요. (내가 수정하고자 하는 일부 항목들만 정의된 Update SQL 문 작성) JPA 방식에서는 Find 를 먼저 하지 않고 바로 업데이트 하기에는 어려움이 있는 듯 합니다. 예를 들어 Member 객체에 패스워드가 포함되어 있는데 패스워드만 수정을 해야 되는 경우라면 MyBatis 방식에서는 별도의 select 없이 패스워드만 update 를 하면 됐었는데 JPA 에서는 Find 를 통해 객체에 초기셋팅을 한번 한 뒤에 @DynamicUpdate 활용해야 Password 만 변경되는 SQL 을 수행시킬 수가 있는 거 같습니다. 즉, Update 를 위해서는 항상 Select 절이 따라 붙어야 한다는 건데 JPA 장점을 위해 이런 부분은 감수해야 되는 부분이라고 생각해야 되겠죠??
안녕하세요. 너무나 설명을 잘해주셔서 진도가 쭉쭉 잘 나가고 있습니다. 추가 질문이 있는데요, 회귀에서 타깃값은 반드시 정규분포를 따라야 한다고 하셨습니다. 그 이유가 무엇인지 설명해주실 수 있으신지요? 설명하시기 번거로우시다면 참고할만한 레퍼런스를 알려주셔도 감사드리겠습니다. skewed된 데이터를 log변환하면 정규 분포를 가진다는 것은 알겠는데, 궁극적으로 타깃값은 왜 정규 분포를 가져야 성능이 좋은지가 궁금합니다. 매번 친절한 답변 정말 감사드립니다.