안녕하세요. 정말 좋은 강의 잘 듣고 있습니다. 너무 재미있습니다 ㅎㅎ; 내용은 이해가 가지만, 처음 보는 형식이라서 질문 올립니다. (grouped[key] = grouped[key] || []).push(val) 이 부분인데요, grouped[key] 등이 괄호로 쌓여 있습니다. grouped[key]에 해당하는 밸류가 있으면 넣고, 아니면 빈 리스트를 출력하라는 것은 알겠는데 if 문을 사용한 것도 아니고, var를 이용해서 옵젝트를 저장해서 업데이트를 한것도 아닌데 한번에 저렇게 괄호를 써서 계산을 해 버려도 되는지요. 저렇게 표현하는 방식의 명칭이 따로 있는 건가요? 아니면 일종의 grouping인가요? var _group_by = _curryr(function(data, iter){ <p> return _reduce(data, function(grouped, val){</p><p> var key = function(){ return iter(val)};</p><p> (grouped[key] = grouped[key] || []).push(val)</p><p> return grouped;</p><p> }, {}); </p><p> })</p>
(19:30 )에서 설명하신 ‘n’과 ‘endl’의 차이가 잘 이해되지 않아 스택오버플로우에 검색해봤는데요 The only difference is that std::endl flushes the output buffer, and ‘n’ doesn’t. endl은 버퍼에 있는 걸 모두 쏟아내고 n은 그렇지 않다고 해서 (13:10)에 있는 코드로 실험해보았습니다. char c; cin >> c; cout << c << " " << static_cast<int>(c) << endl; cin >> c; cout << c << " " << static_cast<int>(c) << endl; cin >> c; cout << c << " " << static_cast<int>(c) << endl; cin >> c; cout << c << " " << static_cast<int>(c) << endl; cin >> c; cout << c << " " << static_cast<int>(c) << "\n" ; cin >> c; cout << c << " " << static_cast<int>(c) << "\n"; cin >> c; cout << c << " " << static_cast<int>(c) << "\n"; cin >> c; cout << c << " " << static_cast<int>(c) << "\n"; 생각대로라면 각각 abcd를 입력했을 때, endl 에서는 이후의 입력없이 각각 97 98 99 100이 출력되고 n에서는 버퍼가 없으니까, 97이 출력되고 다시 입력받고 할 줄 알았는데 아니더군요 ㅠ 제가 완전히 잘못 생각하고 있는 건가요? 아직 n과 endl의 차이를 모르겠습니다…
강의 해주신 내용을 참고하여 두개의 Entity (Question, Answer)에 관계맵핑을 해주었습니다. @ManyToOne private Question question; @OneToMany(mappedBy = "question") private List answers = new ArrayList(); public void addAnswer(Answer answer) { this.getAnswers().add(answer); answer.setQuestion(this); } 그리고 Answer를 return값에 넣어서 json값으로 사용하려고 했는데요, Answer->Question->Answer...이렇게 json값이 무한루프를 돌아버리네요 어떤 부분에서 그렇게 되는건지 알려주시면 감사하겠습니다
(회전과 쿼터니언) 23:10 초 쯤에 내용이 맞지 않는것 같습니다. (30,45,60) 인 cube 를 유니티 scene 내에서 global로 설정하고 x축으로 임의로 30도 회전시켰을때 (60,45,60) 이 될거라고 하셨는데 되질 않습니다. 저도 개념이 모호해서 그런지 될것 같은게 안돼서 헷갈리는데요 rotation이 (30,45,60) 인 큐브를 inspector 창에서 x축만 드래그 해서 회전하는게 유니티 scene 내에서 임의로 x축을 회전하는거하고 rotation은 position 과는 다르게 global과 local 둘다 대응이 안돼서 inspector의 표기되는 rotation은 position과 어떻게 다른건지 잘 모르겠습니다. 질문이 애매한데요 제 나름대로 정리하면 inspector에서 rotation의 x축을 드래그 하는건 어떤 의미 인가요? 그니깐 30,45,60에서 inspector의 x축을 움직이는건 그냥 완전히 다른 축을 기준으로 회전하고 있는 거 같은데 왜그런건지 뭔가 이해가 가질 않아서 제가 회전에 대해 기초수학이 부족한것 같기도 하고 보충설명 해주시면 감사하겠습니다.
`import MainController from './js/controllers/MainController.js'` 에서 import뒤에 나오는건 MainController.js에서 이름을 정의한 부분이 없는데 혹시 export default로 하면 파일명을 따라서 이름이 정의되나요? import뒤에 오는건 모듈명으로 알고 있거든요. 아니면 단순히 이름을 저렇게 지어주신건지 궁금해서 질문 남깁니다.
download3-2-3.py 에서 for line in r.iter_lines(decode_unicode=True): print(line) b =json.loads(line) #dict 임<p>for e in b.keys():</p><p> print("key:",e,"values:",b[e])</p> 이러한 코드가 있는데 for문안에 r.iter_lines(decode_unicode=True) 이 부분이 직관적으로는 이해가 가는데 class 개념과 def 개념으로 생각을 할때 그 개념이 와닿지가 않아서요. line이라는 인자가 r.iter_line이라는 함수를 만나는데 그안에 매개 변수가 decode_unicode=True인것으로 변환한다 라고 해석을 하면되는지요? 혹 시간이 되신다면 쉬운 예제로 한번만 알려주세용 파이썬 초보라 아직 문법이 어색하네요. ㅠㅠ 혹 이러한 코드 방식이 일급함수인가요? 예제를 만들어 내기 위해 a=[1,2,3,4] for i in a1.reverse(ascii=True): print(i) 이렇게 만들어 봤는데 파이썬 안에 있는 내장함수는 순회를 하지못한다는 오류가 나더라구요 제가 이해하기에는 저러한 형식의 문법으로 강사님께서 알려주신 코드를 이해하였는데 이러한 접근이 맞나요?(i가 값이 거꾸로된 객체인 a1을 만나는데 ascii 코드로 변환을 해서 프린트를 해주어라) 이렇게 해석하는 논리를 위에 적용하였는데 맞는지 알려주시고 혹 간단한 코드 예제를 알 수 있을까요? ㅠㅠ
8:45 쯤에 v-for를 사용할때는 key 라는 어트리뷰트를 할당해줘야 한다. 라고 말씀해주셨는데 자바스크립트로 for문을 쓸때는 그냥 사용하면되지만 vue에서는 v-for를 쓸때 key라는 어트리뷰트를 할당해주기로 권장되는건가요?? v-for에 할당해야할 key의 이름은 꼭 key여야하는건지 궁금합니다.
안녕하세요. 좋은 강의 잘 듣고 있습니다. 강의에 따르면, curryr은 fn(a, b) 부분의 인자 순서를 fn(b, a)로 바꿔서 실행 값을 변화시킨다고 설명해 주셨습니다. 실제로도 결과가 그렇게 나옵니다. 그러나 저로서는 아무리 봐도 이해가 안가는게, 결국 인자의 순서와 별게로 값을 만드는 것은 함수의 실행부, 다시 말해 {} 이 중괄호 안의 부분이 결정하는데, 인자의 순서와 별계로 괄호 안의 실행부는 return a-b 인데 어째서 다른 결과를 가져오는지 이해가 가지를 않습니다 ㅜ.ㅜ function _curryr(fn) { return function(a, b) { //인자가 a, b 라고 해도 다 받아야 하는 것은 아니다. a 부터 순서대로 한 개씩만 받아도 된다. return arguments.length == 2 ? fn(a, b) : function(b) { return fn(b, a); }; } } var sub = _curryr(function(a, b){ return a - b; }) console.log(sub(10, 5)); var sub10 = sub(10); console.log(sub10(5));