C 와 C++ 의 학습 과정을 간략하게 설명하십시오. 형 선생님은 항상 학우에게 C 와 C++ 를 어떻게 배우느냐고 물어서 어쩔 수 없이 함부로 공부하지 않는다. 생각해 보니 여기 대략적인 답변이 있습니다. 가족으로서 벽돌 찍는 것을 환영합니다. 1, 먼저 c 를 배우는 것을 고려해 볼 수 있습니다. 언어를 배우는 목적은 언어 전문가가 되는 것이 아니라 문제 해결 전문가가 되는 경우가 많다. 유용한 프로그래머가 되고, 돈을 버는 프로그래머가 되다. 우리의 가치는 언어가 좋든 나쁘든 고객의 가치에 반영될 것이다. C++ 는 C 의 객체 지향 설명이다. C++ 는 C 를 위해 대규모 엔지니어링 응용 프로그램과 복잡한 시스템 구조를 확장하는 조직 제어 방법이지만, C++ 의 내면은 여전히 C 라고 생각한다. 결국, 구체적인 문제를 해결하기 위해, 각 함수는 C 로 쓴 것입니까, 아니면 프로세스를 지향하는 것입니까? 그래서 C++ 를 잘 배우려면 C 를 먼저 배우고, 먼저 문제 해결 능력을 배우고, 큰 문제를 해결할 수 있는 능력에 대해 토론하는 것이 좋습니다. 먼저 걷는 법을 배우고 달리는 법을 배우는 것이다. 2. C 를 배우는 과정에서 반드시 구조적인 프로그래밍 사고를 이해해야 한다. 왜요 이전 문장 중 하나에서 소프트웨어 언어 개발 과정은 데이터 민영화 과정이라고 말씀드렸습니다. 대규모 엔지니어링 어플리케이션은 높은 내부 집합, 낮은 커플링 및 모듈식 설계를 강조하여 코드의 유연성과 보안을 극대화합니다. 이것은 현대 공학 발전의 핵심이자 영혼이다. 따라서 C 언어로 시작하여 구조화 개발 사고를 이해하는 것은 매우 편리한 방법이다. C 의 기능은 원래 재사용 준비가 되어 있기 때문이다. 동시에 CPP 내부 글로벌 변수와 전용 변수의 차이점과 사용 원칙에서 많은 구조적 개발 사고를 배울 수 있습니다. C++ C++ 를 배우기 시작하는 것은 어렵지 않습니다. 많은 사람들은 C++ 가 배우기 어렵다고 생각하는데, 사실 많은 개념, 특히 대상을 제공하기 때문에 이해하기 어렵다. 그러나, 이렇게 여러 해가 지났는데, 나는 이미 이 문제를 희석시켰다. 저는 객체 지향이 비교적 프로세스 지향적이라고 생각합니다. 이것은 구조화 프로그래밍의 구체적인 구현 일뿐입니다. 컴파일러가 프로그래머에게 데이터 민영화를 따르도록 강요하는 수단을 제공하는 한 예입니다. C++ 와 C 의 관계 핵심도 그렇습니다. 이제 C 로 돌아가 보겠습니다. 해당 H 파일에 선언하지 않고 CPP 에 글로벌 변수를 쓰면 사용할 수 있는 유일한 모듈입니까? 사유변수인가요? 이런 인식이 있으면 반이 이해할 수 있을까? 4. 클래스를 기초로 C++ 의 심층적인 기교를 배우고, C++ 는 오랜 세월의 발전을 거쳐 실제로 많은 심층적인 개념을 제공하였으며, 복잡해 보이지만, 사실 나도 매우 간단하다고 생각한다. 예를 들어, 템플릿, 제 이해는 "클래스 클래스" 입니다. 그렇지 않습니까? 이제 템플릿은 STL, ATL, 정적 템플릿 라이브러리, 동적 템플릿 라이브러리를 이해합니다. 이해하기가 어렵습니까? 프로그래머가 직접 쓸 필요 없이 응용 프로그램에 필요한 많은 클래스를 구현하는 데 사용할 수 있는 많은 클래스입니다. 음, STL 은 제네릭 개발이 여전히 어렵다는 것을 이해합니다. 제네릭 개발이란 실제로 알고리즘 규칙 세트를 정의하는 템플릿을 만드는 것입니다. 그러나 이 알고리즘 규칙이 더 추상적일 수 있기를 바랍니다. 핵심 데이터 유형은 제한하지 않습니다. 다양한 데이터를 사용할 수 있으므로 알고리즘의 이 부분만 다시 쓸 필요가 없습니다. 당신은 이것이 사실이라고 생각합니까? 여기서 C++ 와 C 를 배우면 거의 충분하다. 한 가지 언어를 더 배우는 것은 완벽히 책망하는 것이다, 너무 지나치다. 5. 응용개발을 배우기 전에 말씀드렸듯이, 언어를 배우는 목적은 다른 사람들이 자신을 전문가라고 생각하게 하는 것이 아니라 프로그램을 써서 돈을 버는 것입니다. 그래서 언어학을 배운 후에는 응용개발을 배워야 한다. 애플리케이션 개발이란 무엇입니까? 나는 언어를 알고 있지만 고객은 이해하지 못한다. 고객이 직접 말하다. Windows 에서 프로그램을 작성해 주세요. 어떤 기능을 원하십니까? 왜 Windows 인가? 왜냐하면 나는 익숙해졌기 때문이다. 네, 많은 경우 앱 개발은 고객의 습관을 존중해야 합니다. 일반적으로 언어는 구체적인 플랫폼의 개발과 결합해야 의미 있는 앱을 개발해야 돈을 팔 수 있다. 음, 일반적으로 클라이언트는 Windows 시스템이고 서버는 Linux 입니다. 이것들은 모두 업계 습관입니다. 임베디드 시스템은 말할 수 없습니다. Palm, S60, Linux, WinCE 등과 같은 다양한 플랫폼이 있습니다. 그것은 당신의 목표 고객에 달려 있습니다. 우리가 대상 플랫폼을 선택할 때, 어떤 언어를 선택하느냐는 문제가 있다. 이것이 학생과 비즈니스 프로그래머의 차이인 경우가 많다. 학생은 일반적으로 선택할 수 없고, 무엇을 알고 무엇을 쓰는지, 기업의 프로그래머는 안 된다. 우리는 먼저 수요를 평가하여 어떤 언어가 더 적합한지 확인해야 한다. 만약 우리가 할 수 없다면, 우리는 반드시 공부해야 한다. 네, C 와 C++ 를 선택하면 개발 플랫폼을 선택해야 합니다. 말할 필요도 없이, Windows 에서 가장 좋은 것은 VC 이고, Linux 아래는 gcc 이며, 다른 것은 모두 비슷하다. 만약 우리가 VC 를 개발하고 C++ 를 사용한다면, 이때 MFC 를 배우는 것을 고려해야 한다. 이는 마이크로소프트의 표준 클래스 라이브러리이기 때문에, 적어도 Windows 플랫폼에서는 가장 권위 있는 것이다. 너는 우리가 공부에서 MFC 까지 몇 걸음 걸었는지 보았니? MFC 는 C++ 를 배워야 할 것을 배우지 않았나요? 6. MFC 를 배우고 MFC 를 배우면 많은 사람들이 올라오자마자 그 구조를 보기 시작하면서 막막하다. 나는 아직도 그 모듈 의존도를 이해할 수 없다. 허허, 사실은 그렇지 않아요. 언어를 배우는 것과 마찬가지로 MFC 를 배우는 목적은 MFC 전문가가 되는 것이 아니라 MFC 를 사용하여 Windows 어플리케이션을 개발하여 돈을 벌 수 있도록 하는 것입니다. 보셨어요? MFC 는 수단이 아니라 목적이다. 목적은 Windows 프로그램을 개발하는 것입니다. 사실, Windows 에는 Win32API 라는 매우 표준적인 C 인터페이스가 있는데, 이는 Windows 의 표준 프로그래밍 핵심이다. 그래서 MFC 를 배우는 진정한 목적은 Windows 프로그램 개발을 이해하는 것이다. Win32API 를 먼저 배울 것을 권장합니다. 우리가 다시 C 로 돌아간 것 같아요. ᄏᄏ 처음 C 를 배우는 것이 유용합니까? 7.Win32APi 사실 Win32API 는 배우기 어렵지 않습니다. 크지만 인터페이스도 많지만 꼭 필요한 것은 아니기 때문입니다. 우리는 정말 간단한 Windows 앱을 만들지만, 그렇게 많은 것은 필요하지 않다. 간단한 대화를하고 기능을 구현하십시오. 실제로, 당신이 만나는 대부분의 인터페이스 기능은 나중에 일반적으로 사용됩니다. 자주 쓰는 것을 능숙하게 기억하면 ok 입니다. 이 시점에서 WinMain 을 통해 Windows 의 이벤트 메커니즘을 이해하는 것이 핵심입니다. 사실 죽음만큼이나 간단하다. 예전에는 프로그램이 시스템 지원이 없었기 때문에 마우스 키보드 입력을 확인하는 것과 같은 많은 일을 스스로 해야 했습니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 컴퓨터명언) 무한 루프를 쓰고 계속 지켜봐야 하는데, Windows 는 이런 일을 하지 마라, 내가 너보다 더 잘할 거라고 말했다. (윌리엄 셰익스피어, 윈도, 희망명언) 일이 없으면 놀러 가자. 나는 너와 관련된 뉴스를 하나의 대열에 넣을 것이다. 이 대열은 바로 너의 사건 대열이다. 일이 없으면 직접 찾아가세요. 만약 무슨 새로운 소식이 있으면, 무엇을 좀 해라. 괜찮아 그냥 재밌게 놀아. 아주 간단하죠, 그렇죠? 물론 Windows 는 멀티 태스킹 운영 체제입니다. 때때로 우리의 논리는 동시 함수를 필요로 한다. 예를 들어, 마우스와 키보드 메시지를 기다리는 동안 프린터가 준비되었는지 확인해야 합니다. 여기서는 언어 및 운영 체제와는 무관한 병렬 컴퓨팅을 이해해야 합니다. 이것은 또 다른 주제이니, 여기서는 더 이상 말하지 않을 것이다. 직접 스레드 개발 관련 자료를 찾을 수 있다. 보시다시피, Windows 프로그래밍을 잘 배우려면 언어뿐만 아니라 운영 체제, 병렬 컴퓨팅의 원리, 메모리의 원리, 인터넷 통신 등 많은 지식을 배워야 할 때도 있기 때문에 언어 학습만으로는 비즈니스 프로그래머가 될 수 없습니다. 합격한 프로그래머가 이해해야 할 것이 너무 많아서 광범위하게 공부해야 한다. Win32API 와 기본 창 프로그래밍을 이해하면 MFC 로 돌아가서 계속 공부할 수 있습니다. 좀 재귀적으로 돌아가는 거 아닌가요? 하하. 8. MFC 로 돌아가서 MFC 를 배우는 것은 매우 어렵다. 왜냐하면 너무 많은 세부 사항을 캡슐화하여 철저히 이해하기 어렵기 때문이다. 다행히도 MFC 에 대한 후선생님의 간단한 설명이 있습니다. 이제 Win32API 의 순수 C 프로그래밍에서 MFC 의 C++ 모드로 전환하는 방법을 살펴보겠습니다. 이것을 보는 것이 가장 빠르다. 처음 6 장을 읽고 난 후, 나는 이미 배웠으니, 여기서는 더 이상 말하지 않을 것이다. 9, COM COM, COM, COM, 내가 제일 머리가 아프다. ᄏ COM 은 원격 프로시저 호출입니다. 즉, 요청한 코드가 다른 프로세스에서 실행되어 특정 통신 프로토콜을 통해 매개 변수와 결과를 앞뒤로 전달하는 것입니다. 그것뿐이다. DCOM 은 한 단계 더 나아가 서버가 다른 컴퓨터에 있을 수 있습니다. 회사의 발전에서 모두들 한마음 한뜻으로 협력할 수 있을 것이다. 협력하려면 Windows 에서 COM 을 많이 사용하는 것이 좋습니다. 나는 개인적으로 소켓 통신을 좋아한다. ) 간단히 말해서, COM 은 프로세스 간 통신 또는 기계 간 통신을 위한 메커니즘을 제공합니다. 그러나 다양한 매개 변수를 전달하기 위해 COM 은 모든 것을 할 수 있습니다. 그것은 어떤 종류의 데이터를 가리킬 수 있는 스마트 포인터를 발명했다. 또한 스마트 포인터를 구현하기 위해 많은 C++ 일반 디자인을 사용합니다. 봐, C++ 의 기본기가 작용했고, ATL 도 썼어. COM 을 배울 때는 인터페이스의 개념에 주의해야 한다. 개발자가 다른 사람이고 호출자와 서비스 프로그램이 언어가 아닐 수도 있기 때문에 C 나 C++ 를 쉽게 제공할 수 없습니다. H 파일 응답 인터페이스. 따라서 COM 은 사용자가 프로그램 내에서 쿼리를 통해 사용 가능한 인터페이스를 얻은 다음 인터페이스 ID 로 호출할 수 있는 표준 인터페이스를 제공합니다. 피곤해 죽겠어요. COM 을 배우고 나면 ActiveX 에 대해 더 많이 알고 dll (동적 링크 라이브러리) 을 조금 더 배우면 OCX 컨트롤을 작성할 수 있습니다. 일반적으로 OCX 컨트롤은 어디에서나 사용할 수 있는 좋은 디자인입니다. 소프트웨어 모듈의 이상적인 개발은 exe 보다 더 유연합니다. 10, 없어졌어요. 소림문파에 따르면, 이를 배우면, 너는 이미 18 청동진에서 싸웠고, 하산하여 지주를 돕고, 한간을 쓸어버리고, 건곤을 돌리고, 만민을 구할 수 있다. 하지만 관건은 위의 과정을 통해 학습방법을 배웠는지, 새로운 것을 만나면 배우기 어렵지 않다는 것이다. 이것은 아마 무협 속의 이해일 것이다. 이 기초를 가지고 앞으로 천천히 연습하면, 20 년 후에 당신은 천하의 영웅보다 더 강력해질 것으로 예상된다. (윌리엄 셰익스피어, 윈스턴, 자신감명언) 오, 그렇게 생각하지 않아? 휴, 나 너무 피곤해. 부터
입양을 기억하세요