========= 다음 글은 activelow님이 정리해 놓은 글입니다 ==========
(허락없이 가져왔습니다. 말씀하시면 바로 삭제 할께요. 좋은 글인 것 같아서 ㅠㅠ)
1. 프로그램 설계 시에 알아야 할 좋은 코딩 방법
- 최신 표준을 따르라.
- 개발 인원을 적정한 규모로 한정하라.
- 프로그램을 새로 만드는 것보다 유지보수 하는 경우가 많다.
- 새로운 기법을 도입할 때는 신중히 하라.
- ‘Run and Fix’전략을 피하라.
2. 띄어 쓸 때 좋은 코딩 방법
- 한 줄에 한문장만 써라.
- 선언문과 실행 문을 구분하라.
- 단락을 구분하라.
- 제어문들 사이를 구분하라.
- 함수들 사이를 구분하라.
- 연산자의 앞뒤로 빈 칸을 두라.
- 단항 연산자를 피연산자와 띄어 쓰지 마라.
3. 들여 쓸 때 좋은 코딩 방법
- 중괄호의 위치를 통일 시켜라.
- 내부 블록은 들여써라.
- 피제어부는 들여써라.
- 쓸데없는 들여쓰기는 하지 마라.
* 조건문/반복문 사용시 코딩 스타일
while (number == 0) {
printf(“continue…..\n”);
continue();
}
* 함수의 코딩 스타일
int InitLcdFunc (int init)
{
printf(“LCD init rootine……\n“);
return 0;
}
* 중괄호 사용 시 코딩 스타일
void main ()
{
{
int var;
}
}
4. 주석을 작성할 때 좋은 코딩 방법
- 다양한 주석의 형태
- 한 줄 주석과 주석 상자를 구분하라.
- 변수 사전 작성용 주석을 달아라.
- 의사 코드를 프로그램에 기입하라.
- 프로그램의 앞부분에 머리 주석을 반드시 달아라.
* 한 줄 주석
/* 한 줄 주석은 이렇게 작성한다. */
* 여러 줄 주석
/* 함수 및 긴 루틴을 설명하는 주석은 이렇게 작성한다.
*여러 줄이 필요 한 주석도 이렇게 작성한다.
*/
* 강조 사항이 있는 주석
/*********************************************************************** */
/*!!!!!!!!!!!!!!!!!!!!!!!!!!!! 경 고 (Warning) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
/* 이 프로그램은 특별히 주의를 요한다. */
/* 모든 수치를 정밀하게 검증할 필요가 있다. */
/*********************************************************************** */
* 박스 주석
/*********************************************************************** */
/* 박스 모양의 주석은 이렇게 작성한다. */
/* 내용을 입력한다. */
/*********************************************************************** */
* 파일을 설명하는 주석
/* ======================================================= */
/* 원본 프로그램 명칭 : functcall.c */
/* 실행 프로그램 명칭 : functcall.exe */
/* */
/* 목적 : 파일 조작 함수들을 호출하여 그 결과 값을 보존한다. */
/* */
/* 작 성 자 : 홍길동 */
/* 최초 작성일 : 2004년 01월 01일 */
/* 제1차 수정일 : 2004년 12월 31일 (김진수) */
/* - 함수 호출 문장들을 정렬하여 읽기 쉽게 함 */
/* ======================================================= */
5. 식별자 이름을 지을 때 좋은 코딩 방법 1
- 변수 이름을 체계적으로 지어라.
- 헝가리안 표기법으로 변수 이름을 지어라.
- 변수의 자료형을 변수 이름에 접두사로 표기하라.
- 기억 영역 계층을 접두사로 활용하라.
- 함수의 역할을 접두사로 활용하라.
- 자신만의 접두사를 만들어 활용하라.
6. 식별자 이름을 지을 때 좋은 코딩 방법 2
- 이름을 의미있게 지어라
- 비슷한 변수 이름을 사용하지 마라.
- 의미를 잃지 않는 범위에서 짧게 지어라.
- 이름이 길면 밑줄 또는 대소문자로 구분하라.
- 변수 이름을 밑줄로 시작하지 마라.
- 밑줄을 과도하게 사용하지마라.
- 대소문자를 적절히 배합해서 만들어라.
- 대소문자만으로 이름을 구분하지 마라.
< 변수 이름 예 >
l static int siMyNum;
l register int riCounter;
< 함수 이름 예 >
l int GetSoybeanFlour (int Soybean);
l int GetNumber (void);
< 변수의 기억 영역 계층과 접두사 > | |
접두사의 예 |
접두사가 지시하는 내용 |
a |
자동(auto) 변수 |
s |
정적(static) 변수 |
g |
전역(global) 변수 |
e |
외부(external) 변수 |
r |
레지스터(register) 변수 |
< 변수의 자료형에 따라 붙는 접두사 > | |
접두사의 예 |
접두사가 지시하는 내용 |
a |
배열 |
arr |
배열 |
b |
bool 형 변수 |
c |
character 형 변수 |
d |
double 형 변수 |
f |
float 형 변수 |
fd |
파일 기술자 |
fp |
파일 포인터형 변수 |
h |
핸들 |
I |
int 형 변수 |
n |
int 형 변수 |
p |
포인터형 변수 |
pfn |
함수에 대한 포인터 |
r |
참조형 변수 |
s |
String 형 변수 |
str |
Cstring 형 변수 |
u |
unsigned 형 변수 |
w |
word 형 변수 |
< 함수의 접두사를 활용한 예 > | |
접두사 활용 예 |
접두사가 지시하는 내용 |
GetNumber() |
'Get'으로 수를 얻기 위한 함수라는 것을 알수 있다. |
SetNumber() |
'Set'으로 수를 설정하는 함수라는것을 알수 있다. |
MaxNumber() |
'Max'로 수치 중에 최대값을 얻는 함수라는 것을 알 수 있다. |
PutNumber() |
'Put'으로 수를 저장하기 위한 함수라는 것을 알 수 있다. |
< 함수이름 작성시 접두사 > | ||
접두사 |
지시하는 내용 |
예 |
Avr |
평균값을 얻는다. |
AvrOfTot |
Cnt |
데이터의 개수를 얻는다. |
CntAllthing |
Check |
어떤 값을 검증한다. |
ChkData |
Get |
어떤값을 얻는다. |
GetData |
Set |
어떤값을 설정한다. |
SetData |
Is |
무엇인가에 대해서 묻는 역할을 한다. |
IsKey |
Key |
데이터 중에서 키 값만을 얻는다. |
KeyPaymentTable |
Max |
최대값을 얻는다. |
MaxOfNum |
Mid |
중간값을 얻는다. |
MidOfData |
Min |
최소값을 얻는다. |
MinOfArray |
< 식별자 이름 작성시 축약어 > | |
어 휘 |
축 약 어 |
Function |
fun |
Number |
num |
Day |
d 또는 dd |
Month |
m 또는 mm |
Year |
y 또는 yy |
Temporary |
Temp |
Terminate |
End |
Terminal |
Term |
7. 대소문자를 구분하여 이름 짖는 코딩 방법
- 변수나 객체의 이름은 소문자로 한다.
- 함수, 클래스, 구조형, 공용형 등의 이름은 대문자로 시작한다.
- 기호 상수나 매크로 함수는 모든 글자를 대문자로만 짓는다.
8. 연산자 사용을 위한 코딩 방법
- 조건 연산자는 경우에 따라서 효율성을 발휘한다.
- 연산자 우선순위는 ( )로 구분하라.
- 포인터 연산자를 변수 이름쪽에 붙여서 써라.
- 쉬프트 연산자는 빠른 속도가 필요할 때 사용, 일반적으로 산술 연산자 사용.
9. 명료한 프로그램을 만들기 위한 코딩 방법
- 함축된 코드 보다는 명료하고 이해하기 쉬운 프로그램을 작성하라.
- while문에서 관계/대입 연산자의 우선순위를 혼동하지 마라.
- while, for, if와 같은 조건식 안에서는 조건 연산 외에 대입 연산 등을 하지 마라.
- 묵시적인 ‘non zero test’를 하지마라.
- KISS ( Keep It Simple and Short) 규칙을 따르자.
- 함수의 원형에도 인수의 자료형을 표기하라.
- 가인수에도 이름을 기제한다.
- 반환 자료형을 반드시 표기하라.
10. 이식하기 좋은 프로그램 만들기 위한 코딩 방법
- 파일 이름의 길이를 14자로 제한한다.
- 파일 이름에 특수문자를 사용하지 마라.
- 조건부 컴파일을 활용하여 이식성을 높여라.
- 컴파일러의 한계를 인식하라. (중첩 단계, 모듈 크기, 식별자 길이)
- 자료형의 크기가 달라질 수 있음을 고려하라. (프로그램 도입부에 sizeof()
연산자를 사용하여 자료형의 크기를 측정하는 방법도 있다.
- 절대 경로를 지정하지 마라. (헤더파일 등 삽입시…)
11. 정밀한 프로그램을 만들기 위한 코딩 방법
- 정밀한 계산이 필요하다면 부동소수점 연산을 피하라.
- 정밀한 계산에는 flot형보다 double형을 사용해라.
- 정수형의 크기를 확인하라.
- 계산 단위를 명시하라.
- 나눗셈 연산에 주의하라. (소수이하 부분 생략…)
- 자료형의 변환이 이루어지지 않도록 하라. (작은 단위로 변환 시 자료 유실됨…)
12. 성능향상을 위한 코딩 방법
- 성능이 중요하다면 될 수 있는 한 출력하지 마라.
- 연산을 단순한 형태로 바꿔라. (아래는 연산자 부하의 크기…)
비트/논리 연산 < 덧셈/뺄셈 < 곱셈 < 나눗셈 < 부동 소수점 처리
- 효율성이 요구되는 큰 파일을 다룰 때는 바이너리 파일을 사용하라.
- 팩키드 구조체와 언팩키드 구조체의 장단점을 인식하고 사용하라.
팩키드 구조체 : 스택의 크기 제한, 신호 처리 변수가 많이 필요한 경우 사용.
언팩키드 구조체 : 스택의 크기 제한 없음, 신호 처리 변수가 적을 경우 사용.
- 실행 환경을 고려하여 언어 선택하라.
13. 이해하기 쉬운 프로그램을 만들기 위한 코딩 방법
- goto 문을 사용하지 마라.
- C의 구성요소를 선행처리기로 치환하지 마라.
- 긴 자료형은 짧은 이름으로 바꿔 사용하라.
- 조건식 보다는 if 문을 사용하라.
- 배열의 차원을 3차원으로 한정하라.
14. 사용자 인터페이스를 처리할 때의 코딩 방법
- 입력 값을 저장할 변수의 크기를 충분히 확보하라.
- 변환 지정자와 매개변수의 개수를 일치시켜라.
- scanf() 함수 보다는 fgets()와 sscanf() 함수를 사용하라.
- fflush() 함수를 사용해 표준 입출력 장치의 버퍼를 비워라.
15. 오류 없는 프로그램을 만들기 위한 코딩 방법
- 배열의 첨자는 0부터 시작한다는 것을 잊지 마라.
- 치환 문자열은 반드시 괄호를 씌워라.
- 파일을 열었다면 반드시 닫아라.
- 컴파일러의 경고를 무시하지 마라.
- 런타임 오류를 인식하고, 그것이 발생하지 않도록 코드를 작성하라.
- 배열이 큰 경우에는 정적 변수로 선언하라
'공부방 > 잡다구니' 카테고리의 다른 글
[office] PPT -> PDF 파일로 변환하기 (0) | 2010.05.07 |
---|---|
[유틸리티] 하드의 용량을 한눈에 볼수 잇는 ~ (0) | 2009.12.18 |
[숫자] 숫자 경(京) 다음의 수 체계 (0) | 2009.09.23 |
[jQuery] 개발자를 위한 메모 - 레퍼런스 (0) | 2009.08.05 |
[보안] 해커가 가져야 할 30가지 (0) | 2009.07.23 |