2009-02-19 14 views
6

간단하지 않은 기능을 구현해야한다고 가정 해 봅니다 (적어도 일주일에 한 번씩 소요될 것입니다). 이 기능을 구현하기 위해 SDK의 일부분을 사용하는 것을 보여주는 (수많은) 코드 샘플이 포함 된 SDK/API/라이브러리가 있습니다.새로운 SDK/API/라이브러리 학습 방법에 접근하는 방법은 무엇입니까?

'실제 물건'을 구현하기 위해 모든 샘플을 배우고 필요한 정보와 기법 등을 추출하는 방법에 어떻게 접근합니까? 주요 질문은 다음과 같습니다.

  • 제어 흐름 다이어그램, SDK의 기능 간 상호 작용 및 샘플 자체에 대한 도구를 사용합니까? 어떤 종류의 다이어그램이 유용할까요? (필자는 UML 시퀀스 다이어그램이이 경우 디버거와 함께 유용 할 수 있다고 생각했다.)

  • 참조로 사용되어야하는 샘플 프로그램에서 SDK/API 함수 호출, 일반 구조 및 호출 순서와 관련성이 높고 자주 관련되는 정보를 어떻게 보관합니까? 마인드 맵, 일반 텍스트 노트가 추가되었습니다. 샘플 코드의 주석, 학습을보다 쉽게하기 위해 개인 코딩 스타일에 맞게 샘플 코드의 일부 리팩토링?

답변

5

필자는 개인적으로 프로토 타이핑 방식을 사용합니다. 개발을 관리 가능한 반복으로 유지하십시오. 처음에는 그 반복이 실제로 작습니다. 이 일환으로, 코드를 버리고 다시 시작하는 것을 두려워하지 마십시오. (프로젝트 매니저가 심장 마비를 가지고 있다고 말할 때마다) 시작하십시오.

특정 작업을 쉽고 합리적으로 작은 시작 작업으로 나눌 수 없다면 시작하기 전까지 일부 대체 작업으로 시작하십시오.

빌드, 배포, 디버깅, 오류 메시지의 모양, 오류 메시지가 표시 될 수있는 간단한 작업, 오류 메시지가 표시되는 것과 같은 간단한 작업에 익숙해지기 위해 가능한 한 간단하게 ("Hello world" 처음 등.

다이어그램 도구를 사용하는 것부터 미안하다. (나는 그 일에 대해 간과 할 부분이 거의 없다).

처음 시도 할 때 무슨 일이 일어나고 있는지, 왜 당신이하고있는 것이 작동하는지 (또는하지 않는지) 모르는 경우에도 시도를 시작하자마자 멈추게됩니다.

+0

필자는 동의해야합니다. 코드 프로토 타입 응급 처치 이해가 없으면 정확한 모델 다이어그램을 제작할 수 없습니다. –

2

나는 일반적으로 예제를 컴파일하고 수정하여 자신이해야 할 일에 적합하게 만듭니다. 필자는 해당 문서를 사용하고 주석을 추가하는 동안이 작업을 수행하는 경향이 있습니다. 조금 오래된 학교이기 때문에 제가 다이어그램을 그리는 데 보통 사용하는 도구는 연필이거나 실제로 복잡한 두 가지 이상의 색칠 된 펜을위한 도구입니다.

1

나는 결코 숙련 된 프로그래머는 아닙니다. 사실 C++을 배우고 있으며 주로 책에서 언어를 공부했습니다. 내가 책에서 벗어나려고 할 때 (예를 들어 LibreOffice와 같은 프로그램에 참여하기를 원하기 때문에 많이 발생합니다.) 예를 들어, 나는 자신이 길을 잃어 버렸습니다. 또한 라이브러리의 기능을 사용할 때 라이브러리 구현 방법 및/또는 왜 그런 방식으로해야 하는지를 실제로 알지 못하기 때문에 구현이 잘못되었습니다. 샘플 소스 코드를 살펴보면 무언가가 어떻게 이루어 졌는지 알 수 있지만 왜 그런 식으로 끝내는지 이해할 수 없어 내 프로그램의 디자인이 좋지 않습니다. 결과적으로, 나는 끊임없이 뭔가를하고 에러를 처리하는 방법을 추측하고 있습니다. 매우 비생산적이고 실망 스럽습니다.

내 책의 주석으로 돌아가서 Ivor Horton의 Visual C++ 2010 시작과 C++ : Starting Objects (Early Edition) (7th Edition)로 두 권의 책을 준비했습니다.Ivor Horton의 책에 대해 정말 좋아했던 것은 그것이 왜 어떤 방식으로해야 할 일이 무엇인지에 대한 철저한 설명이 담겨 있다는 것입니다. 예를 들어, Windows 프로그래밍이 시작되기 전에 Windows 작동 방식에 대한 많은 설명이 먼저있었습니다. 어떻게 그리고 왜 일들이 특정한 방식으로 작동하는지 이해하는 것은 내가 소프트웨어를 개발하는 방법에 정말로 도움이된다.

귀하의 질문에 대답하기 위해 두 동전을 기부하십시오. 최선의 접근 방식은 잘 쓰여진 책을 집어 들고 앉아서 라이브러리, API, SDK에 대해 배우기 시작하는 것입니다. 실용적인 예제를 제공하는 구조화 된 접근 방법과 함께 어떻게 구현되는지, 왜 어떻게 구현되는지에 대한 설명이 제공됩니다. 아르.

나는 당신의 질문을 완전히 놓친 지 모르지만, 나는 생각하지 않는다.

건배!

이것은이 사이트의 첫 번째 게시물이었습니다. 나를 너무 찢어 버리지 마라. (: