MicroSoftware June 2002.
http://www03.zdnet.co.kr/news/column/hotissue/0,39024748,10049399,00.htm 원본
어떻게 공부할까: 프로그래머를위한공부론 --JuneKim
만약 오늘 어떤 것에라도 감동한 것이 없었다면, 오늘은 뭔가 잘못 산 것이다. 감동해야 체득할 수 있다. |
Contents
DataStructure & Algorithm
- 알고리즘이건 자료구조건 그 결과물뿐아니라, 그 결과물이 나오게된 과정을 이해하는 것도 중요하다.
ICPC의 문제들을 직접 풀어본다.
알고리즘디자인과 함께가는 알고리즘 검증 (See also DisciplineOfProgramming)
Paradigm을 알아야 알고리즘을 상황에 맞게 마음대로 변통할 수 있다.
- 복잡한 문제를 푼다음... 다시 처음부터 풀어본다.
- 추천책
Refactoring
RefactoringImprovingTheDesignOfExistingCode책이 DesignPatterns책처럼 되지 않아야한다.
CodeSmell과 짧은 테스트-코드 싸이클
TestDrivenDevelopment와 함께 수련
OnceAndOnlyOnce를 지키는 방향으로
- 모래시계 프로그래밍
LawOfDemeter따르기
Separate What from How
See also HowToStudyRefactoring
TestDrivenDevelopment
The draft book: http://groups.yahoo.com/group/testdrivendevelopment/files/
- This is not a subset of refactoring
In here, it's explained that [Refactoring] study have to be done with process of the TestDrivenDevelopment.
- You can Refactor without TDD, but you can't TDD without Refactoring.
DesignPatterns
- 패턴은 프로그램의 초기버젼이 아니고 프로그램생애의 훨씬 나중에 가서야 비로소 등장해야한다.
- 많은 예제들을 접한다.
- 소프트웨어개발에 푹 담궈야 한다. 독일어를 배우기 위해 독어사전을 외우는게 아니라 독일생활을 체험해야하듯이.
마이크로패턴 - SpotOverEngineering
오로지 하나만 공부하는것을 경계... See Diversify
스터디그룹을 만들어서 하면 더 좋다... See StudyGroupPattern
See also HowToStudyDesignPatterns
ExtremeProgramming
- 직접 체험해야한다.
유즈넷, 메일링리스트, OriginalWiki를 늘 가까이
See also HowToStudyXp