널널한 개발자 TV 채널 주인장이자
30년 넘게 IT기술의 바다를 항해하고 있는 개발자 입니다. 반갑습니다. ^^
Courses
Reviews
- Memorize and finish the core network theory - Basics
- Memorize and finish the core network theory - Basics
- Memorize and finish the core network theory - Basics
kyou9166674
·
Solid Foundation! Starting Java Fiercely Part 3 (First Half): Multithreading and SynchronizationSolid Foundation! Starting Java Fiercely Part 3 (First Half): Multithreading and Synchronization- Become a computer science major by memorizing broadly and shallowly
Posts
Q&A
개발 환경 문의드립니다
이 강의에서 Visual C++ 개발환경을 사용하는 이유는 디버깅 때문입니다. 이 과정에서 메모리를 직접 찾아 확인하는 것이 중요한데 이를 맥북에서도 사용할 수 있습니다. 우선 IDE는 Visual Studio Code를 사용하고 맥OS 환경의 기본 컴파일러인 Clang을 사용하시면 됩니다. 이 상태에서 C/C++ Extension (ms-vscode.cpptools) 플러그인을 설치하시면https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools수업에서 언급한 Call stack, Memory window, Position breakpoint 등을 사용할 수 있습니다. 다만 이렇게 설정하더라도 단축키를 비롯해 강의에서 언급하는 내용의 일부는 완벽하게 맞지 않습니다. 환경이 달라 발생하는 문제이므로 학습자 스스로 감안하여야 합니다. 그 외에 문법적인 것 혹은 프로그래밍 언어적 관점에서의 문제는 없다고 보셔도 되겠습니다. 즉, 약간 불편하지만 학습에 영향을 줄 정도는 아닙니다. 참고하시기 바랍니다. 😄
- 0
- 2
- 35
Q&A
method area는 이름이 class area가 아니고 왜 method aread인지 궁금합니다.
제가 Java를 만든 것은 아니므로 어디까지나 추정으로만 말씀드릴 수 있을 것 같습니다.H/W CPU 수준에서 함수는 고려하고 있습니다. 그러나 객체 혹은 클래스 같은 개념은 들어있지 않습니다. 즉, 객체라는 개념은 하드웨어 수준에는 아예 존재조차 하지 않는 추상적인 것입니다. 결국 하드웨어 수준에서 실행 혹은 연산의 단위를 논할 때 객체라는 개념은 존재하지 않으며 반대로 함수는 결코 뺄 수 없는 것입니다.C/C++ 언어에서 함수는 존재합니다. C++의 메서드도 결국은 그냥 함수로 인식되어 기계어로 번역됩니다. 특정 클래스에 속했다는 의미는 언어의 문법에서만 존재할 뿐 실행 코드(기계어)로 번역되는 과정에서는 Name mangling을 통해 클래스와 무관한 독립적인 함수로 변환됩니다.Java는 C++와 달리 클래스 없이 존재할 수 있는 함수가 문법적으로 아예 없습니다. 따라서 클래스의 멤버 함수인 메서드로만 존재합니다. 그리고 소위 실행 코드라는 것은 결국 메서드 단위로 존재합니다.그런 이유로 어쩌면 클래스 영역이라는 개념보다 메서드 영역이라는 것이 더 알맞은 것이 아닐까 싶습니다. 참고하시기 바랍니다. 😄
- 0
- 2
- 41
Q&A
참조에 대해 헷갈리는 부분 질문합니다.
D7은 참조 혹은 참조자 라고 번역합니다. 영문 표기는 reference 입니다. 보통 참조자를 통해 대상체에 접근할 수 있습니다. 명사와 동사로 사용되는 경우를 명확히 구분하고 싶다면 D7에 대해 명시적으로 참조자라고 표현해주면 될 것 같습니다. 정리하면 참조자를 이용해 대상체에 접근(참조) 할 수 있다는 의미로 보시면 되겠습니다. 😄
- 0
- 1
- 47
Q&A
C프로그래밍 책 개정판 출판 계획
얼른 개정해야 겠다는 마음만 앞서있는 상태입니다. 핑계를 대자면 현실의 생존 문제를 해결하느라 책을 재개정하는 것은 우선순위가 밀려있는 상황입니다. 어쨌든 재개정이 이루어지면 제가 운영하는 유튜브 채널에서 공지하도록 하겠습니다. 너무 오래 기다리시지 않도록 노력하겠습니다. 고맙습니다. 😄
- 0
- 2
- 65
Q&A
표준/입출력 필수실습문제 질문
크기만 다른 정수형의 일종으로 이해할 수 있습니다. 그건 맞습니다. 다만 그 다른 '크기'가 문제입니다. int[]에 "Hello" 같은 문자열을 저장하면 int[0]에 'H', int[1]에 'e' 이런 식으로 저장되는 것이 적절할까요? 아니면 "Hell" 네 글자가 int[0]에 저장되는 것이 더 적절할까요? 그리고 그 결정은 누가 하는 것일까요? 이런 저런 고민을 해보면 표준의 필요성과 중요성 해석의 다양성에 따른 문제 등에 대해 좋은 식견을 가질 수 있을 것입니다.
- 0
- 2
- 44
Q&A
교안 p.305 'throw 필수' 질문
제보 고맙습니다. 얼른 조치하겠습니다.
- 0
- 1
- 37
Q&A
독하게 시작하는 c프로그래밍 구입했는데..
국회도서관을 이용해 복사본을 받아보는 방법이 있긴 합니다. 그게 아니라면 제가 운영중인 유튜브 채널에 멤버십 가입 후 PDF파일을 다운 받으시는 방법도 있습니다. 참고하시기 바랍니다. :)
- 0
- 2
- 61
Q&A
윈도우 개발 튜토리얼
MFC 기본 강의에서 권해드린 PPT 흉내내기 프로젝트를 추천드립니다. 그 외에도 더 주제가 있을 수 있겠으나 GUI에 특화할 경우 수업 범위를 넘어선 주제들을 다루게 됩니다. 특히 커스텀 컨트롤 윈도우 제작은 필수입니다. 이 경우 UI에 관한 내용만으로도 여러 강의주제가 나올 정도입니다.결과적으로 UI에 특수화 할 것인지 아니면 기능적으로 특수화 할 것인지 결정하는 것이 먼저이겠습니다. 아직까지도 MFC가 사용되는 이유는 C/C++ 코드를 직접 사용(Win32 API 포함0할 수 있다는 점입니다. UI를 갖는 응용 프로그램이지만 시스템 제어도 가능한 프로그램을 개발할 때 유용한 것이죠.그런 점들을 감안해보시면 좋겠습니다.
- 0
- 1
- 29
Q&A
out of path 구조에서 수집장치가 두 가지 있다고 하셨는데 나머지 한가지는 무엇인가요?
포트 미러링 설정은 기존 L2 스위가 스위칭 역할도 하면서 '추가적'으로 송/수신하는 모든 L2 프레임을 특정 L2 스위치 포트로 복사해 전달하도록 하는 것입니다. 그런데 이는 사실 스위치에게 꽤 부담으로 작용합니다. 만일 모든 프레임을 복사 받아보고 분석해야 할 센서가 여럿 존재한다면 그 어렷 전체에게 프레임을 복사해 전달해야 합니다. 부하는 더 올라갑니다.이런 문제를 해결하기 위해 아예 복사만 전문적으로 수행하는 스위치가 있는데 이를 '탭 스위치'라 합니다. 분석 주체가 되는 장치가 많다면 통상 탭 스위치를 사용합니다.그리고 나머지 질문에 대해 답변을 드리자면...보통 그렇습니다. Inline으로 구성할 수도 있겠으나 단순 정보 수집을 위한 경우라면 대부분의 경우 Out of path 방식으로 설치합니다. 경험상 아닌 경우를 못 본것 같습니다.Sensor는 수집 장치가 반드시 갖춰야 할 기능요건으로 생각 할 수 있겠습니다. 둘을 가르는 가장 큰 차이는 '저장여부' 입니다. 센서는 트래픽을 수신한 후 원하는 정보가 시그니처가 포함됐는지 확인하고 로그를 남기는 정도이나 수집장치는 DB나 File로 트래픽을 저장해 모으기도 합니다. 물론 수집과 센싱 둘 다 할 수도 있고요. 개념적 관점의 분리로 이해하시면 좋겠습니다.침입탐지 및 이상징후 탐지 시 알림을 포함하는 경우가 있습니다. 장치를 이루는 구성요소로써 센서와 알림 은 분리될 수 있다고 보시면 되겠습니다.동작 원리는 개발의 영역입니다. 이 부분에 대한 것까지 알고 싶다면'이해하면 인생이 바뀌는 네트워크 프로그래밍'https://inf.run/eeFb8이 강의를 보시기를 권합니다. 단, C언어에 매우 능숙해야 합니다. 참고하시기 바랍니다. 😄
- 0
- 3
- 34
Q&A
Sensor 역할을 하는 Out of Path 장치가 응답을 보낼 수 있나요?
네, 가능합니다. 통상 유해사이트 차단 장치는 NIC이 2개 이상입니다. 1개는 수집용(Sensor)이고 다른 하나는 조작된 신호를 보내기 위한 것입니다. 참고하시기 바랍니다. 😄
- 0
- 2
- 50