1. 일반 규정 1.5 일반 약어 규정 약어와 두문자어는 공학계에서 그 의미가 광범위하고 일관되게 이해되지 않는 한 일반적으로 피해야 합니다. 프로젝트별 약어 및 두문자어 표는 버전 관리 문서에 표시되어야 합니다. 예시 Abbreviation Meaning adc analog to digial converter avg average b_ Boolean buf buffer cfg configuration curr current (item in a list) dac digital to analog converter ee EEPROM err error g_ global gpio general purpose IO pins h_ handle (to) init initialize io input / ouput is..
1. 일반 규정 1.4 괄호 규정 유지관리자에게는 명확해 보이지 않을 수 있으므로, C 언어 자체의 우선 순위 규칙에 의존하지 말고, 실행 순서를 분명히 하기위해 괄호를 사용해야 한다. (또는 길이가 긴 실행문은 몇 줄에 나눠 코딩한다.) 단일 식별자 또는 상수가 아닌 한, 논리 연산자 AND(&&) 및 OR(||)의 피연산자에는 괄호를 사용해야 한다. 예시 if ((depth_in_cm > 0) && (depth_in_cm < MAX_DEPTH)) { depth_in_ft = convert_depth_to_ft(depth_in_cm); } 이유 C 언어의 구문에는 많은 연산자가 있습니다. 어떤 연산자를 먼저 계산해야 하는지 결정하는 우선 순위 규칙은 12개 이상의 우선 순위 레벨이 있을 정도로 복잡하며..
1. 일반 규정 1.3 중괄호 규정 중괄호는 항상 if, else, switch, while, do, for 다음에 나오는 코드 블록(복합문)을 둘러싸야 합니다. 이들 키워드 다음의 단문이나 빈 문장도 중괄호로 둘러싸야 합니다. 왼쪽 중괄호({)는 시작 키워드 아래줄에 사용해야 한다. 오른쪽 중괄호(})는 파일 뒷부분, 왼쪽 중괄호와 동일한 위치에 표시하여야 한다. 예시 { if (depth_in_ft > 10) dive_stage = DIVE_DEEP; // This is legal... else if (depth_in_ft > 0) dive_stage = DIVE_SHALLOW; // ... as is this. else { // But using braces is always safer. dive_..
1. 일반 규정 1.2 코드 길이 규정 프로그램에서 코드 한 줄의 길이는 최대 80자를 넘어서는 안된다. 추론 수시로 동료끼리의 리뷰 및 기타 코드 검사를 수행하게 되는데, 인쇄된 페이지에서 수행합니다. 이러한 인쇄물을 사용하려면 주의를 산만하게 하는 줄바꿈 뿐 아니라 누락된 문자(즉, 오른쪽 여백을 넘어서는 글자)가 없어야 합니다. 코드 길이 규칙을 준수하면 화면상에서도 나란하게 코드 차이점을 쉽게 구별할 수 있습니다. 시행 이 규칙에 대한 위반은 빌드 중 자동화된 스캔을 통해 감지될 수 있습니다.
1. 일반 규정 1.1 C 언어 버전 규정 모든 프로그램은 ISO C 표준인 C99 버전을 준수하도록 작성해야 한다. C++ 컴파일러를 이용할 때에도 선택한 ISO C 버전의 표준에 맞게 컴파일러 옵션을 설정해 주어야 한다. #pragma 같은 확장 키워드와 인라인 어셈블리어는 되도록 적게 사용하여야 하며, 하드웨어에 직접적으로 연결되는 소수의 장치 드라이버 모듈로 사용이 국한되어야 한다. 전처리기 지시자 #define은 키워드의 이름을 바꾸는 데 사용되어서는 안 된다. 예시 #define begin {// Don’t do something like this... #define end } // ... nor this. ... for (int row = 0; row < MAX_ROWS; row++) beg..
실시간 동작을 보장하는 방법 시스템이 의도한 대로 작동하도록 보장하는 가장 쉬운 방법 중 하나는 요구사항을 충족하면서도 가능한 단순함을 유지하는 것입니다. 이것은 단순하게 할 수 있는 일을 복잡하게 처리하고 싶은 충동에 저항하는 것을 의미합니다. 토스터기로 빵 한 조각을 굽기 위한 것이라면, 그 위에 디스플레이 장치를 달거나 여러분에게 날씨 정보를 알려주도록 만들지는 마세요. 단지 빵을 굽기위해 적절한 시간동안 전열선을 켜도록 하세요. 이 간단한 작업은 수 년 동안 코드나 프로그래밍 가능한 장치 없이도 잘 수행되어 왔습니다. 프로그래머로서 문제에 마주치게 되면 우리는 바로 MCU의 소스 코드를 수정하려는 경향이 있습니다. 그러나 제품의 일부 기능(특히 전기 기계 구성품이 있는 제품의 경우)은 코드 없이도..
#09 글쓰기를 위한 독서법 주체적인 독서법 - 발췌독 글을 잘 읽기 위해서도 구성을 알아야 한다. 저자의 전략(구성)을 알고 읽으면 더 많은 정보를 나의 것으로 만들 수 있다. 읽기는 줄여가는 과정, 쓰기는 불려가는 과정 쓰기에 도움 되는 읽기 어휘를 눈여겨 보면서 읽기 좋은 문장 되새김질 하기 구성을 생각하면서 읽기 내용만 파악하는 읽기는 쓰기에 도움이 많이 되지 않는다. 요약, 필사 작가의 글쓰기 전략을 파악하면서 읽기 - 적극적 독서 요약 : 핵심 키워드, 카피, 사례 강준만 칼럼 정여울, 좋은 글쓰기의 최고 비결은 좋은 독자가 되는 것. 이승우, 잘 쓴 사람은 내가 아는 한 잘 읽은 사람이다.