* 코드 품질
- 함수 복잡도
- 함수 간 호출 관계
- 전역 변수 수
- 함수 및 모듈 수
- 사용되지 않는 변수 및 함수
* 아키텍처 품질
- 요구사항 및 설계 문서 상태
- 모듈 간 호출 관계
- 모듈화 상태
- 아키텍처 스타일
- 아키텍처와 모듈 재사용성
* 반복하지 않기
- 같은 코드가 중복된다면 수정도 여러번 해야 한다
* 한 가지만 하기
- 함수는 한가지를 해야 한다
- 그 한가지를 잘해야 한다
- 그 한가지만을 해야 한다
* 의미있게 이름 짓기
* 코드리뷰에 대한 오해
- 버그를 발견하는 것을 보장하진 않는다
- 코드의 결함을 찾는 것이 목적이 아니라, 서로 배우고 가르쳐 주고, 팀의 협업능력을 높여주는 것이어야 한다. (그렇지 않으면 팀이 깨어진다)
* 코드리뷰가 잘 되려면
- 너무 많은 절차와 규칙을 만들지 마라. 절차를 아주아주아주 간단하게 하라
- 강요하지 마라. 대신 Encourage 하라
- 모든 코드 commit 을 리뷰하도록 한다거나 하는 형태로 Micro - Manage 를 하지마라
- 개개인의 작업 흐름을 끊지마라
- 코드리뷰를 통해 발견한 것들을 널리 공유하라
- 코드리뷰를 늦게 하는것은 안하는 것보다 나쁠수 있다. Iteration 에 포함시켜라
- 한꺼번에 덜하기보다는 조금씩 자주하라
- 툴에 얽메이지 마라, 중요한것은 개발자들이 서로 대화를 하고 코드를 공유하는 것이다
- 너무 많은 리뷰어를 참여시키지 마라. 2-4 명이 적당하다
* 어떻게 잘 되고 있는지 알수 있는가
- 쉽진 않다, 사실 필요없을 수도/불가능 할수도 있다, metric 에 집착할 필요는 없다.
- 장기간의 이득은 측정할 수 없지만 많다
- Simple Metric 들이면 충분할 수 있다. (리뷰에 사용된 시간, 리뷰 comment 등).
HyperText - 문서와 문서가 고리로 연결되어 있다
HTML 의 가장 중요한 특징은 HyperText 가 링크로 되어 있다는 것이다
하나의 링크를 거대한 덩어리로 만든 것을 웹이라고 한다
HTML의 본질은 웹의 본질
링크는 굉장히 중요한 것
여러 가지 일을 하기 때문에 지금은 굉장히 복잡함
C Runtime Library와 MFC Library의 import 순서가 바뀌어서 강제로 순서를 바꾸어 주어야 한다
프로젝트 속성 -> 링커 -> 입력 -> 특정 기본 라이브러리 무시 :
uafxcwd.lib; libcmtd.lib 입력
프로젝트 속성 -> 링커 -> 입력 -> 추가 종속성 :
uafxcwd.lib; libcmtd.lib 입력