안녕하세요?허니입니다. 오늘은 [C 언어 모듈화 프로그래밍]에 대해 포스팅하려고 합니다. 공부하시는 모든 학생과 연구원분들에게 많은 도움이 되었으면 좋겠다고 생각하며 언제든지 질문은 환영입니다.
C 언어란?
모듈화 프로그래밍
23.1. 프로그래밍의 모듈화
• 모듈(module)이란 무엇인가?
프로그램을 구성하는 구성 요소의 일부
관련된 데이터와 함수들이 묶여서 모듈을 형성한다.
파일 단위로 나뉘는 것이 보통
• 모듈화 프로그래밍
기능별로 파일을 나눠가며 프로그래밍하는 것
유지 보수성이 좋아진다.
• 파일의 분할 및 컴파일
파일을 나눌지라도 완전히 독립되는 것은 아니다.
파일이 나뉘어도 상호 참조가 발생할 수 있는데, 이는 전역 변수 및 전역 함수로 제한된다.
• 외부 접근 금지
static 키워드에 의한 접근의 제한
• 링크에 대한 이해
링크라는 이름이 의미하는 것처럼 연결에 관련된 작업을 한다.
선언된 함수의 정의를 찾아서 연결시켜 주는 작업 (여기서 말하는 연결이라는 용어는 다양한 의미로 사용)
23.2. 헤더 파일의 구현과 유용성
• 헤더 파일의 포함이 지니는 의미
전처리기에 의해 하나의 파일을 다른 하나의 파일에 포함시키는 작업
• 헤더 파일 포함 방법
• 헤더 파일의 정의 방법 및 유용성
함수 및 변수의 extern 선언의 간략화
파일 변경 최소화!
23.3. 조건부 컴파일
• #if, #elif, #else, #endif 기반 조건부 컴파일
• 헤더 파일 포함 관계에서 발생하는 문제
하나의 헤더 파일을 두 번 이상 포함!
이는 중복해서 함수가 정의되거나, 변수가 선언되는 문제점
조건부 컴파일로 문제 해결!
• #ifndef, #endif 기반 조건부 컴파일
'Past Material' 카테고리의 다른 글
삼성전자(Samsung Electronics) 주식회사 (0) | 2020.07.26 |
---|---|
C 언어 매크로와 전처리기 (0) | 2019.07.29 |
C 언어 메모리 관리와 동적 할당 (0) | 2019.07.29 |
C 언어 파일 입출력 (0) | 2019.07.29 |
C 언어 구조체와 사용자 정의 자료형 2 (0) | 2019.07.28 |