27장. 모듈화 프로그래밍.

Slides:



Advertisements
Similar presentations
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Advertisements

1 구조체 윤 홍 란 컴퓨터 프로그래밍 2 구조체 정의  구조체란 ? o 서로 다른 형의 변수들을 하나로 묶어주는 mechanism. (cf. 배열 : 같은 형의 변수들을 하나로 묶어주는 mechanism) o 예 : 카드의.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++ 프로그래밍 기초 : 객체지향의 시작 C++로 프로그래밍한다는 것의 의미
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Image & Video processing
최윤정 Java 프로그래밍 클래스 상속 최윤정
C 프로그래밍 I.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
Introduction To Computers
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
컴퓨터 프로그래밍 기초 [Final] 기말고사
C 12장. 고급 기능 #include <stdio.h> int main(void) { int num;
데이터 파일 C 데이터 파일과 스트림(Stream) 텍스트 파일 처리
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
양방향 파이프의 활용 양방향 통신 파이프는 기본적으로 단방향이므로 양방향 통신을 위해서는 파이프를 2개 생성한다.
제 3장. C보다 나은 C++ II.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
26. 매크로와 전처리기.
DK-128 ADC 실습 아이티즌 기술연구소
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
23장. 구조체와 사용자 정의 자료형 2.
쉽게 풀어쓴 C언어 Express 제9장 함수와 변수 C Express Slide 1 (of 33)
14장. 포인터와 함수에 대한 이해.
PySpark Review 박영택.
11장. 1차원 배열.
10장 컴퓨터 기반 데이터 획득 응용 프로그램 LabVIEW 사용법
[INA470] Java Programming Youn-Hee Han
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
Method & library.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
박성진 컴퓨터 프로그래밍 기초 [09] 배열 part 1 박성진
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
Device Driver 임베디드 시스템 I.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
24장. 파일 입출력.
19. 함수 포인터와 void 포인터.
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
제 4장. 객체 지향 프로그래밍 시작하기 학기 프로그래밍언어및실습 (C++).
Lab 8 Guide: 멀티스레딩 예제 2 * Critical Section을 이용한 멀티스레딩 동기화 (교재 15장, 쪽)
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
Fucntion 요약.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
OpenCV 설정 2.21 만든이 딩딩.
Chapter 13. 템플릿(Template) 1
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
7주차: Functions and Arrays
C 프로그래밍 I.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
Chapter 27. 파일의 분할과 헤더파일의 디자인
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
구조체(struct)와 공용체(union)
프로그래밍 언어 학습을 위한 가상실습환경 창원대학교 이수현.
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
과제 4: Thread (5월 9일까지) 4장 연습문제 풀이
동적메모리와 연결 리스트 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
07. DB 설계 명지대학교 ICT 융합대학 김정호.
1. 지역변수와 전역변수 2. auto, register 3. static,extern 4. 도움말 사용법
Docker Study 6~7.
13. 포인터와 배열! 함께 이해하기.
개정판 누구나 즐기는 C언어 콘서트 제14장 전처리와 분할 컴파일리 출처: pixabay.
6 객체.
Presentation transcript:

27장. 모듈화 프로그래밍

모듈(module)이란 무엇인가? 모듈화 프로그래밍 27-1 프로그래밍의 모듈화 프로그램을 구성하는 구성 요소의 일부 27-1 프로그래밍의 모듈화 모듈(module)이란 무엇인가? 프로그램을 구성하는 구성 요소의 일부 관련된 데이터와 함수들이 묶여서 모듈을 형성한다. 파일 단위로 나뉘는 것이 보통 모듈화 프로그래밍 기능별로 파일을 나눠가며 프로그래밍하는 것 유지 보수성이 좋아진다.

파일의 분할 및 컴파일 27-1 프로그래밍의 모듈화 파일을 나눌지라도 완전히 독립되는 것은 아니다. 27-1 프로그래밍의 모듈화 파일의 분할 및 컴파일 파일을 나눌지라도 완전히 독립되는 것은 아니다. 파일이 나뉘어도 상호 참조가 발생할 수 있는데, 이는 전역 변수 및 전역 함수로 제한된다. 그림 27-1 그림 27-2

외부 접근 금지 링크에 대한 이해 27-1 프로그래밍의 모듈화 static 키워드에 의한 접근의 제한 27-1 프로그래밍의 모듈화 외부 접근 금지 static 키워드에 의한 접근의 제한 링크에 대한 이해 링크라는 이름이 의미하는 것처럼 연결에 관련된 작업을 한다. 선언된 함수의 정의를 찾아서 연결시켜 주는 작업 (여기서 말하는 연결이라는 용어는 다양한 의미로 사용) 그림 27-7

헤더 파일의 포함이 지니는 의미 27-2 헤더 파일의 구현과 유용성 27-2 헤더 파일의 구현과 유용성 헤더 파일의 포함이 지니는 의미 전처리기에 의해 하나의 파일을 다른 하나의 파일에 포함시키는 작업 그림 27-8

헤더 파일 포함 방법 27-2 헤더 파일의 구현과 유용성 27-2 헤더 파일의 구현과 유용성 헤더 파일 포함 방법 #include <abc.h> // 표준 디렉토리에서 abc.h를 찾아서 포함 #include “c:/include/abc.h” // c:\include에서 abc.h를 찾아서 포함 #include “plus.h”  현재 작업 디렉토리에 존재하는 plus.h를 포함하라는 의미   #include “c:/header/lib/plus.h”  c:/header/lib에 존재하는 plus.h 포함

헤더 파일의 정의 방법 및 유용성 27-2 헤더 파일의 구현과 유용성 함수 및 변수의 extern 선언의 간략화 27-2 헤더 파일의 구현과 유용성 헤더 파일의 정의 방법 및 유용성 함수 및 변수의 extern 선언의 간략화 파일 변경 최소화! 예제 calculator.c, cal_main.c 참조 예제 calculator.h, calculator.c, cal_main.c 참조 그림 27-10

#if, #elif, #else, #endif 기반 조건부 컴파일 27-3 조건부 컴파일 #if, #elif, #else, #endif 기반 조건부 컴파일 hello1.h, hello2.h, hello3.h, condi_main.c 참조 #if CONDITION1 expression1 #elif CONDITION2 expression2 #else expression3 #endif

헤더 파일 포함 관계에서 발생하는 문제 27-3 조건부 컴파일 하나의 헤더 파일을 두 번 이상 포함! 27-3 조건부 컴파일 헤더 파일 포함 관계에서 발생하는 문제 하나의 헤더 파일을 두 번 이상 포함! 이는 중복해서 함수가 정의되거나, 변수가 선언되는 문제점 조건부 컴파일로 문제 해결! 그림 27-11

#ifndef, #endif 기반 조건부 컴파일 27-3 조건부 컴파일 #ifndef, #endif 기반 조건부 컴파일 그림 27-12