번호 제목 글쓴이 조회수 날짜
38 애자일 개발 프로세스의 종류
[레벨:5]id: 하이미니
8401 2009-02-16
애자일 개발 프로세스로 불리는 개발 방법론에는 다음과 같은 것들이 있다. 익스트림 프로그래밍(Extreem Programing, XP) - 애자일 개발 프로세스의 대표자로 애자일 개발 프로세스의 보급에 큰 역할을 하였다....  
37 Know when and how to code for concurrency
[레벨:5]id: 하이미니
8400 2006-01-30
동시접근(쓰레드)에서 안전함을 위해 코딩의 방법과 시기를 알라. 다중쓰레드 환경에서 string의 안전성 쓰레드 안전성에 대해 공부하기 전에 우선 COW에 대해 먼저 알아보자. COW(Copy-On-Write)란 데이터 하나를 여...  
36 Hide information
[레벨:5]id: 하이미니
8257 2006-01-29
Abstract 클래스의 내부 정보는 숨겨라. Abstract class를 사용하는 경우 implementation와 의존성을 최소화하기 위해서 내부 데이터를 최대한 숨겨야 한다. 추상화한 클래스에서 노출되지 말아야할 멥버변수가 노...  
35 Minimize global and shared data
[레벨:5]id: 하이미니
8294 2006-01-28
전역 데이터와 공유 데이터를 최소화 해라. 공유,전역 데이터는 많이 사용하게 되면 관리가 힘들어지고 성능도 떨어진다. 가능한한 로컬변수를 사용하는게 관리적인 측면에서 좋다. 네임스페이스 범위 또는 정적 클래스...  
34 문자열 포맷팅
[레벨:5]id: 하이미니
8697 2006-01-27
1. sprintf 장점 사용하기 쉽다 기존 버퍼를 직접 사용 단점 길이 안전성이 없다(버퍼 크기 초과시) 형식 안전성이 없다(%d,%c든 컴파일시 오류 인식 못함) 템플릿화 하기 힘들다. 위에서 보듯이 사용이 간편 하다는 장점...  
33 Don't pessimize prematurely
[레벨:5]id: 하이미니
5760 2006-01-27
미리 최적화해야할 부분도 있다. 함수의 인자로 포인터나 참조를 이용 할수 있음에도 값을 전달하는 방식을 사용하는 것 ++ 연산 등을 변수의 앞에 사용할수 있음에도 뒤에 붙이는 습관 루프밖에서 선언해도 될 변...  
32 Don't optimize prematurely
[레벨:5]id: 하이미니
5560 2006-01-26
이른 최적화를 하지마라. 최적화를 빨리 한다고 해서 반드시 프로그램이 빨라지는 것은 아니다. 개발자가 코드의 속도와 크기만 가지고 병목 현상을 찾기는 힘들다. 다시 말해서, 컴파일 과정만으로는 어디에서 가장...  
31 Know when and how to code for scalability
[레벨:5]id: 하이미니
5300 2006-01-25
적절한 규모를 위해서는 '언제,어떻게'를 알아야 한다. 데이터를 컨트롤하는 알고리즘은 처리 시간등 처리 능력을 예측 가능하다. 최소한 선형증가를 가질수 있는 알고리즘을 사용해야한다. 잘못된 알고리즘 선택은 데...  
30 one entity one responsibility, correctness, simplicity, clarity
[레벨:5]id: 하이미니
5159 2006-01-25
하나의 엔터티에는 하나의 역활만 부여할것 엔터티(변수,클래스,함수, 또한 라이브러리등)는 여러가지 역활도 할 수있지만, 그렇게 되면 원래 목적에서 벗어날수 있고, 쓸데없이 무거워질 가능성과 결정적으로 디버그...  
29 vector의 올바른 사용법
[레벨:5]id: 하이미니
5646 2006-01-23
STL을 사용하는 개발자들은 vector 객체를 자주 사용한다. STL에 있는 컨테이너를 얼마나 이해하고 사용하는지 의문을 가져볼 필요가 있다. 최소한 함수들의 차이만이라도. 예제1) vector 요소 접근시. A,B의 차이는...