근데 신입을 키우고 나발이고 포인터랑 그래픽스를 모르는건 문제긴 함. 말이 안되는거임 대학 4년 다니면서 상용엔진을 써서 포폴은 만들었는데 그래픽스랑 포인터를 모른다? 뭐 gpt로 만들었다는건가? 성의의 문제임 엔진을 써봤거나 써보려면 자연스레 관심이 생기게 되는 것들이고 그게 개발자 역량이자 개발자가 아닌 사람과의 차이를 만드는 기본인데 공식 사이트 튜토리얼 보면 누구나 하는 상용엔진 사용법만 익혀오면 누가 뽑고싶겠음.
선생님 이거보고 인생이 바뀌었습니다. 과장이 아니라 이 강의 보고 정말 그 어떤 소스보다 가장 유익하고 설명을 잘 하시는것 같습니다. 혹시 자바로... 한번 강의 해주시면 안될까요? 자바에 대한거나.... 아니면 알고리즘 자료구조를 자바로 가르쳐주시는거나... 정말 포인트 요점만 너무 잘 찝어주셨습니다.... 혹시 가능할까요.....??
안녕하세요? 소감 남겨주셔서 감사합니다. 최근에는 자료구조/알고리듬은 C/C++로 공부하는 것이 합리적이라고 봅니다. 자료구조는 메모리 할당/해제를 수동으로 하는 연습을 해야 합니다. 자바는 얼핏 봤을때는 메모리 관리를 알아서 해주기 때문에 편할 것 같고 C/C++로 메모리 관리하는 공부가 불필요한 것 같지만 결국 시스템이 커지면 자바에서도 메모리 관리를 프로그래머가 하게 됩니다. 예를 들면 object pool pattern을 들 수 있습니다. 알고리듬을 자바로 공부하는 것은 괜찮을 수 있는데, 무조건 클래스를 만들어야 하기 때문에 코테 문제 푸는 관점에서 봤을 때 간결하지가 않습니다. 그래서 저는 알고리듬도 C++로 가르칩니다. 그렇다고 해서 자바를 하지 말라는 것은 절대 아니구요, 알고리듬을 자바로 공부하시거나 알고리듬 이후에 파이썬, C/C++ 공부하신 경험을 살려서 자바를 빠르게 공부하시는 것을 권장합니다. 자바로 시작하라고 가스라이팅 하는 분들이 너무 많아서 섬찟한데요, 자바로 시작하면 특정 프레임워크 직업에 올인하는 것이 되어버리지만 C/C++은 공부용 언어임과 동시에 현역으로 응용분야에 사용되고 있습니다. 여기까지가 왜 제가 자료구조/알고리듬을 C++로 가르치는 지에 대한 설명이었구요, 자료구조/알고리듬까지 공부하신 분들을 위해 빠르게 자바 문법을 훑어볼 수 있는 요약 강의는 가끔 생각해보고 있습니다. 더 제안하고 싶은 내용이 있으시다면 디스코드로 오세요.
너무 어렵네요. 설치로 몇일간 끙끙 앓다가 결국 설치 포기합니다. DEV C++은 화면이 구려서 그렇지 사용은 잘 되는데 이건 빌드부터 되질 않으니...뭐 이리 사용하기 힘들게 만드는지. 진입문턱이 너무 높아요. code blocks 깔아서 테스트 해보니까 10분도 안되서 기존 만들어놓은 코드 잘돌아가는데 비주얼스튜디오나 비주얼스튜디오 코드는 얼마나 대단하길래 돌아가질 않게 만들어놨나요. 너무하네요.
안녕하세요? 실망감이 크시겠어요. VS나 VSCode는 실무에도 사용되는 도구들이다 보니 끊임없이 기능이 발달되고 있습니다. 오랜 기간동안 기능이 많이 추가되어서 초보자들에게는 복잡할 수 있을 것 같네요. 한 가지 궁금한 점이 있는데, 혹시 연령대가 대략 어떻게 되시나요?
예전에 윤성우의 열혈 c++ 책에 대해서 혹평하는 사람들이 있었습니다...그 이유인 즉, 윤성우 씨가 c++ 책을 c언어처럼 써놨다더군요.. 그러니까 문자를 다룰 때 c++ 고유의 string 헤더를 두고 왜 c언어의 string.h를 불러와서 번거롭게 오브젝트 복사 시에 메모리 할당, 해제 작업을 하냐고 질책을 하는 것이었습니다... 그 사람은 c++을 c언어와는 아예 유리된 객체 지향형 언어 정도로 이해하고 있는 듯 했는데...저는 c언어를 오랫동안 쓰다가 c++을 나중에 학습했는데...c++ 다룰 줄 안다는 사람들 중에 생각보다 c언어의 메모리 구조에 대해서 모르는 사람들을 잘 못 본 것 같습니다. 그러니까 c언어의 메모리 구조를 모르고 배열 포인터, 포인터 배열이 뭐가 어떻게 다른 것인지도 모르더군요. 제 생각에는 c++은 모던 c++에 만족하지 말고 철저히 c언어 기반으로 내실을 다진 후에 학습하는 것이 기초를 튼튼히 하는 길이라고 봅니다. 모던 c++이 나온 것도 사실 따지고보면 자바, C#, 파이썬 등에 밀려서 설 자리를 잃어버릴 것 같으니 그런식으로 나온 것이 아닌가 싶습니다. 예전에 c++의 창시자인 비야네 스트롭스트룹의 인터뷰를 봤는데... c언어의 배열을 쓰지 말고 std::array를 쓰고 포인터를 쓰지 말고 스마트 포인터를 쓰라고 하더군요. 그 영상 보면서 '아...이 양반이 자기가 만든 언어가 설 자리를 잃어가는 것 같아서 두렵구나...' 하는 생각이 들었습니다. c++을 제대로 활용하려면 스마트 포인터를 직접 만들 수준이 되기도 해야겠지만 스마트 포인터를 쓰더라도 primitive pointer도 잘 다뤄야 합니다.
궁금한 점이 있어서 질문남겨요. 꼭 좀 답변해주시면 감사하겠습니다! 요즘 AI가 빠르게 발전하고 있는데, 물리학과 수학을 모르는 사람도 물리엔진을 활용해 VR이나 AR 또는 XR 게임을 개발하는 시대가 올까요? 당연히 저보다 잘 아시겠지만, 인공지능은 정해진 패턴을 학습하는 걸 잘하는데, 중력가속도 등의 물리법칙은 정해져 있잖아요. 오픈AI에서도 과학 난제 해결을 위해 범용 과학AI를 개발 중이라고 합니다. 출시된다면 난제 해결 뿐만 아니라 그 쓰임새가 빠르게 확대될 거라고 봅니다. 또한 언리얼, 유니티 같은 회사들도 유저가 많아야 수익이 많아지니 물리학이나 수학을 못하는 사람들이나 심지어 어린이들도 게임 개발을 할 수 있을 정도로 진입장벽을 낮추는 게 유리할 것 같아요. ----------------------- 질문을 정리할게요. Q. AI가 빠르게 발전하고 있는데, 가까운 미래에는 수학과 물리학을 못해도 상용 물리 엔진을 활용해서 VR/AR/XR게임을 개발하는 시대가 올까요?
@@HongLab 그렇군요. 답변해주셔서 감사합니다. 최근에 1인 개발 게임이 스팀에서 수익 2위 났다고 하던 게 기억납니다. 제목이 manor road'였나? 그랬던 것 같습니다. 아무튼 이렇게 수학과 물리를 못하는 사람들도 아이디어만 있으면 AI 물리엔진으로 퀄리티 높은 게임을 개발하는 게 가능한 시대가 올지 궁금해서 질문드렸습니다 ㅎㅎ
교수님 강의를 듣고 있는 제자입니다! 교수님의 실리콘 밸리 취업 도전기 시리즈를 들으면서 정말 가슴이 두근거렸습니다. 저는 특수한 케이스로, 미경험자이지만 일본대학졸업을 앞두고 있고, 내년부터 일본의 saas기업에서 일할 수 있게 되었습니다. 이곳에서 경험쌓고 끊임없이 공부해서 언젠가 교수님처럼 실리콘밸리의 세계적인 소프트 기업에서 일해보고 싶다는 꿈이 생겼습니다. 그래서 주변친구들은 다 놀러 다니고 있는데, 꿈이 생긴 저는 공부하는게 너무 즐겁게 되었어요. 앞으로도 교수님 영상이나 강의에 많이 도움을 받게 될 것 같습니다. 이런 양질의 컨텐츠들을 제공해주셔서 정말 감사드리고 싶다는 말을 적고 싶어, 이렇게 코멘트를 남기게 되었습니다ㅎ
처음 들어오시는 분들은 RUST부터 들어와도 된다고 봅니다. 다만 주의 하실점은 말씀대로 RUST를 깊이 이해하기 위해선 C++에서 다루는 문제도 알아야 한다는 지적도 계셨는데.. 그렇다고 겁없이 C++ 먼저하고 그후에 RUST로 ....식의 접근을 헀다가는 큰 낭패를 보게 된다는..생각입니다. C++의 하들은 초심자에겐 rust못지 않으니 결국엔 수렁에 빠질 위험성도 커보입니다. 초심자 분들 중 시간이 있으신 분들은 오히려 rust를 권장합니다. rust가 어렵다는 평을 듣는 이유중 하나는 c,c++ 계열에 익숙한 분들이 이들과 너무도 생소한 언어 사양에 당황하는 측면도 있다고 봅니다. 기능성, 효율성 측면에서... c++나 rust나 어차피 메모리 영역을 다룰수 있는 언어고 vm 에 의존하지 않고 효율을 내주는 언어라... 같은 방향을 보고 있다고 봅니다. 그후에 좀더 수훨한 스크립 계열 혹은 vm 계열 언어로 접근해도 괜찮겠다 싶습니다. ..클라이언트 쪽은.. typeScript(javaScript)를 기반으로 한 React가 기다리고 있고... 안드로이드 쪽은 코틀린,자바 보다...오히려 dart를 기반으로 한 플러터가 유망한듯 보이죠. iphone쪽은 러스트를 개선한 Swift 쪽이 보이고요.. 결국 출발하시는 입장에서... 개인적으로는 rust -부터 출발해서...---> 웹쪽....스마트 폰쪽..으로 옮겨가면...자신의 진로에 따라 더욱더 깊은 맛에 빠져들어 갈거란 생각이 드는군요. 속도가 별로 중요하지 않은 영역엔 vm계열이나 그 아류언어들을 내세우고 속도가 중요시 되는 모듈엔 rust(c++)을 혼용하는 부분은 지금도 많은 사례가 나오고 있죠... 러스트 역시 앞으로 큰 포션을 잡아갈 언어란 생각이 들기에... 러스트를 첫 언어로 잡아가는것도 좋겠다는 생각이 듭니다.
잘들었습니다. 저도 프로그래밍을 20년을 넘게 해왔는데요. 자바는 이제는 대체 언어도 많고요. 가볍게 쓰기엔 무겁고.. 개발툴도 뭐 딱히 편하지도 않고.. 나온지 20년이 넘은 언어인데도 비쥬얼 스튜디오에서 작성하는 C# 만큼도 안되고.. 파이썬은 스크립트 언어라는 태생으로 가볍게 짜기도 좋고 C/C++을 모듈 붙여서 무겁게 쓰기도 좋고.. C# 은 심지어 플랫폼별로 네이티브 언어로 컴파일도 됩니다. 자바는 OpenJava되고 더 망테크 타는듯한..
맞습니다. 파트1의 범위는 CS161 범위를 참고했습니다. 저는 한 학기 범위를 어떻게든 한 파트에 넣는 것이 당연하다고 생각했는데 만들고 보니 아무래도 명문대 강의라서 학습량이 적진 않네요. 차례보고 이게 다 하나에 들어가냐는 얘기를 하던 학생들도 있습니다. 그런데 의외로 보는 분들은 빠르게 보시네요. 완강자가 이미 계속 나오고 있습니다. 파트1의 목표는 이후 뭐든 독학이 가능한 준비를 시켜드리는 것입니다. 모든 알고리듬을 제가 다 알려드릴 수는 없겠죠. 특히 코테 준비는 결국 스스로 문제 풀이 연습을 꽤 하셔야 합니다. 파트2는 조금 어렵다는 얘기가 나오는 것들 보충과 다른 곳에서 배우기 어려운 것들을 몇 가지 추가하는 정도입니다. 구체적인 차례는 다시 공지를 할텐데 문자열, B-tree, 공간분할, 길찾기 등입니다. 분량은 파트1보다 훨씬 적게 조절할 예정입니다. 원래 CLRS 교재에는 머신러닝도 들어가고 선형시스템 풀이도 나오고 해서 파트2에 넣을까 생각을 했었는데, 그런 것들은 나중에 전문 분야 하실때 제대로 하시는 것이 나을 것 같아서 빼기로 결정했습니다. 혹시 기대하는 점이 있으시면 의견도 받습니다. 디스코드로 오셔도 됩니다.
@user-dj3ek7ni3d 수학하시는 분들이 소프트웨어 업계에서 잘하실 가능성은 충분히 높습니다. 수학 잘한다고 해서 프로그래밍을 자연스럽게 잘 하게 되는 것은 절대 아니라는 점만 주의하시면 될 것 같습니다. 온라인 결제 시스템 만들어주는 업무와 트레이딩 알고리듬 개발하는 업무는 완전히 다르니까 진로 선택에 참고하세요.
C++ 자체도 빠르고 GPU 구동하려면 아무래도 빠른 언어를 선호하겠죠. GPU 셰이더 프로그래밍 하는 사람들은 C++이 더 편할거구요. 한동안 인간의 생산성이 더 중요하다라는 얘기가 돌면서 C++이 밀려있었는데 최근에 인간의 생산성은 AI로 보완하면 된다는 식으로 얘기가 나오면서 다시 언어 효율로 돌아오는 것으로 보입니다.
안녕하세요. 교수님. 교수님 강의를 통해 공부하고 라이브와 강의를 통해 여러 인사이트를 얻고 있는 구독자 입니다. 우선, 질 좋은 강의들을 제공해주셔서 진심으로 감사드립니다. 교수님 덕분에 프로그래밍 공부에 있어서 제가 늘 갖고 있던 궁금증과 약점들을 극복할 수 있었습니다. 교수님께서 Discord를 통해 커뮤니티를 갖고 계신걸로 알고 있는데 저 또한 커뮤니티에 가입하여 소통하고 배우고 싶은데 혹시 링크나 가입 방법을 알려주실 수 있으실까요? 감사합니다.
현직 2인팀 인디게임 개발자 입장에서 말하자면... 솔직히 "저런거 다 할 줄 알면 그냥 내 게임 만들지 뭐하러 취직함" 생각이 안 날 수가 없음. 특히 그냥 프로그래머도 아니고, 게임업계는 직군 무관하게 게임 좋아하는 덕후들이 모이는 업계여서, 돈, 워라밸 이런 것보다도 내가 하고 싶은거 만들고 싶어하는 사람이 진짜 많음. 이런 욕구를 포기하고 취직하려는 사람들은 대부분 회사에서 경력 쌓고 실력 키우기를 원하는 입장인데, 당연히 기초가 모자란 건 어쩔 수 없음. 회사와 구직자 어느 한 쪽 탓만 할 건 아니지만, 양쪽의 이해관계, 원하는 바가 잘 맞는 일이 없다는 거임.
@@HongLab 교수님이 직접 댓글을 달아주시다니 영광입니다!!!!.. 특별히 좋은일이 있진 않았습니다 ㅎㅎ.. 늘 비슷한 일상의 반복인것같습니다 하지만 교수님께서 올려주신 영상이 저의 가치관을 통째로 바꿔놓았습니다.. 살다보니 아 교수님이 그때 말씀하셨던게 이런뜻이었구나 하고 느낄때도 많았구요 ㅎ..
동영상 감사합니다. 미국 컴퓨터 공학 기준 ranking 50위인 학교에서 컴퓨터 공학 석사 과정(AI specialization)을 시작할 사람입니다. LLM이 빠르게 발전하는것을 보면서 석사 과정에 입학에 대해서 회의적인 시각을 가지게 되었는데요. 실례가 안된다면. 교수님은 미국 취업 관점에서 컴퓨터 공학 석사 과정(AI specialization) 입학에 대해서 어떻게 생각하시나요?
코테 2단계를 풀다가 지식이 없어 자료구조+알고리즘을 준비하려고하는데 언어는 현재 사용하는 언어인 javascript로 할 예정입니다. 이 경우에도 강의를 봐도 이해하거나 실습하는데는 문제없을까요? c++에서 js로 마이그레이션하는 과정은 gpt의 도움을 받을거같습니다.
예전에 저는 반대로 c++ 강의를 js로 풀엇는데 아무 문제가 없었습니다. 개인적으로 알고리즘 언어를 크게 타지 않는다고 생각해요 js만 알아도 c++ 푸는데 저는 별 문제 없을거라고 생각합니다. 그리고 만약 개인에따라서 그렇지않다 하더라도 알고리즘에 필요한 문법만 배우는건 오래 걸리는것 같지는 않아요
C++ 실습에 필요한 예제 코드가 모두 준비가 되어 있는 상황이라서 gpt로 C++ -> JS 번역하는 것 보다 그냥 C++ 배우시는게 더 빠를 정도입니다. 개인적으로 기초 강의에서는 gpt 사용을 안하시는 것이 좋다고 생각합니다. 초등학생이 더하기 배울때 계산기 쓰는 것은 두뇌 발달에 방해가 되는 것과 비슷합니다. gpt번역하시는 것 보다는 차라리 JS로 되어 있는 다른 강의 보시는 것을 권장합니다. 다만, 제가 알아본 바로는 JS를 사용하는 강의들은 모두 기초만 다뤘던 것으로 기억합니다. 제 채널에 C++ 요약강의가 있는데 마음 편하게 10분 정도 보시고 해볼만할 것 같으면 C++로 진행하시는 것을 권장합니다. 앞에 설치하는 부분은 건너뛰고 실제 강의 부분만 10분 정도 보고 결정하시면 됩니다.
감사합니다! 현재 교수님의 따배씨 강의를 긴 기간 동안 진득하게 듣고있는데 개인적으로 재미있게 하나 하나 이해하며 공부중입니다. 그런데 동영상을 보니 제가 너무 마음 편히 공부하고 있는게 아닌가 싶습니다.. ㅜ.. 현재 11강 반 정도까지 들었는데 그냥 빠르게 훑고 자료구조 강의로 넘어갈까요?? 항상 좋은 강의 감사드립니다!
본인 상황에 따라 차이가 있는데 초보때와 어릴때(20대 초반 정도까지)는 자기 편한대로 공부하시면 됩니다. 그 이후에는 세상의 속도에 점점 맞춰가셔야 합니다. 한국은 선진국이고 하이테크를 다루기 때문에 속도가 빠른 편입니다. 유튜브에 무료로 올라와있는 C++ 요약강의 가볍게 보시고 해볼만할 것 같으면 바로 자료구조로 넘어가셔도 됩니다. 따배씨는 만약에 나중에 C/C++을 전문적으로 하시게 되면 그때 다시 보셔도 됩니다. 반대로 구조체, 파일 입출력 이런게 개념들이 하나도 감이 안온다 싶으시면 따배씨 마저 보시는 것이 좋을 것 같습니다.