RUBY
[SJCU]1주차. 강의소개 및 프로그래밍 개념과 통합 개발환경 본문
프로그래밍기초(C언어)
1주차. 강의소개 및 프로그래밍 개념과 통합 개발환경
학습내용
- 오리엔테이션(강의소개)
- 프로그램의 개념과 프로그래밍 언어
- C언어
- 프로그램 개발과정
- 통합개발 환경
(IDE: Integrated Development Environment)
학습목표
- 본 강의의 목표 및 평가 방법을 이해하고, 이를 통해 한 학기 학습계획을 세울 수 있다.
- 프로그램의 개념을 이해하고 프로그래밍 언어를 분류할 수 있다.
- C언어의 특징을 설명할 수 있다.
- 프로그램의 개발과정을 이해할 수 있다.
- 통합개발 환경을 이해하고 통합개발 환경 프로그램인 Visual Studio를 설치하고 실행시킬 수 있다.
1. 오리엔테이션(강의소개)
1. 교과소개
- C언어의 문법과 여러 가지 기능들을 배우며 이러한 학습을 통해서 컴퓨팅 사고력과 문제해결 능력을 익힘
- 텍스트 코딩 언어인 C언어를 학습하여 공학적 프로그래밍의 기초적 능력을 키움
→ 논리적 사고 방법 연습 / 창의적 사고력 증진 - C프로그래밍을 이용한 재미있는 코딩 실습으로 기본 소양으로서 기초적인 구현 능력을 습득함
2. 교과목표
- 간단한 프로그램 제작을 통해 프로그래밍 학습에 흥미를 체험할 수 있도록 한다.
- 전공 공부에 도움 및 기초지식을 다질 수 있도록 한다.
- 자신만의 간단한 프로그램을 기획하고 제작할 수 있다.
- C언어를 이용하여 논리적 사고를 컴퓨터 언어로 표현할 수 있다.
- 프로그래밍 심화 학습을 위한 폭넓은 자기주도형 학습의 기초를 다지고 컴퓨팅 사고력을 향상시킨다.
2. 프로그램의 개념
1. 프로그램이란
- 컴퓨터 = 하드웨어 + 소프트웨어(프로그램)
→ 컴퓨터를 범용적으로 만드는 것은 바로 프로그램
프로그램 : 컴퓨터에게 해야 할 작업의 내용을 알려주는 문서(작업지시서)
2. 프로그래밍 언어
- 프로그램에서 컴퓨터가 수행해야 할 다양한 작업을 기술하는데 사용되는 언어

3. C언어
1. C언어의 역사
- C언어(1970년대 초)
AT&T의 Dennis Ritchie에 의하여 개발됨
B언어 → C언어
UNIX 운영체제 개발에 필요해서 만들어짐 - K & R C
1978년 “C Programming Language” 책 출간
비공식적인 명세서 역할 - ANSI C
1983년 ANSI(American National Standards Institute)는 X3J11이라는 위원회에 의한 표준 - C99
1999년 ISO에 의한 표준
C++에서 사용되는 특징 추가
점차 많은 컴파일러에서 지원 - C11
ISO에 의하여 2011년 12월에 발표된 C언어 표준
2. C언어의 특징
- 간결한 언어
꼭 필요한 기능만이 들어 있음
모든 표기법이 아주 간결하게 되어 있음 - 효율적인 언어
C로 작성된 프로그램은 크기가 작음
실행 속도가 빠름
메모리를 효과적으로 사용함 - 뛰어난 이식성
컴퓨터 기종에 의존하지 않으므로 프로그램의 이식성(Portability)이 높음 - 저수준 · 고수준의 프로그래밍이 모두 가능
프로그램을 기계어 명령에 가까운 형태로 작성할 수 있음
다른 고급 언어에 비하여 하드웨어 대한 보다 확실한 통제가 가능함 - 풍부한 연산자와 데이터형(Data Type)을 갖고 있음
범용 프로그래밍 언어로서 널리 보급되어 응용 소프트웨어의 개발에 널리 이용되고 있음
현재 이용되고 있는 운영체제, 컴파일러, 통합개발환경 등이 대부분 C언어로 개발됨
3. C언어의 미래
- C언어는 C++와 Java의 공통적인 부분임
- 임베디드 시스템에서는 C언어가 많이 사용됨
4. 프로그램 개발과정
1. 일반적인 C프로그램의 개발
- 프로그램 설계 → 소스코드 작성 → 컴파일 → 실행

- 컴파일
소스 프로그램을 오브트 파일로 변환하는 작업
오브젝트 파일 이름 ex) test.obj - 링크
컴파일된 목적 프로그램을 라이브러리와 연결하여 실행 프로그램을 작성하는 것
컴파일러에 내장되어 링크를 수행하는 프로그램을 링커라 함
실행 파일 이름 ex)test.exe - 실행 및 디버깅
실행 시간 오류(run time error)
0으로 나누는 것
잘못된 메모리 주소에 접근하는 것
논리오류(logical error)
문법은 틀리지 않았으나 논리적으로 정확하지 않은 것 - 디버깅(debugging)
소스에 존재하는 오류를 잡는 것
5. 통합 개발 환경
1. 통합개발 환경 (IDE: Integrated Development Environment)
- 프로그램 개발에 필수적인 편집, 컴파일, 실행, 디버깅 기능을 하나로 통합한 도구
- Visual studio
윈도우즈에서의 대표적인 통합 개발 도구(마이크로소프트)
2. Visual studio community 설치 및 실행
- 웹 사이트 https://visualstudio.microsoft.com/ko에 접속
- 화면에서 community 2019를 선택하고 파일 실행
- 자신이 사용할 프로그래밍 언어와 개발 환경을 선택
우리는 C++를 사용한 데스크톱 개발을 선택함
나중에 필요하면 다른 프로그래밍 언어는 추가 설치가 가능함 - 설치가 완료되면 설치 프로그램을 종료함
- 윈도우의 [시작] 버튼을 누르고 [Visual Studio 2019]를 찾아서 실행함
솔루션(Solution)
문제해결에 필요한 프로젝트가 들어 있는 컨테이너
프로젝트(Project)
하나의 실행 파일을 만드는데 필요한 여러 가지 항목들이 들어 있는 컨테이너
Q 고급 언어로 작성된 프로그램을 기계어로 바꾸어 주는 도구는?
- 컴파일러
Q C언의 특징
- 간결한 프로그래밍이 가능하다.
- 실행 속도가 빠르다.
- 저수준의 프로그래밍이 가능하다.
Q 오류를 찾아 수정하는 일
- 디버깅
Q 프로그램 개발에 필수적인 편집, 컴파일, 실행, 디버깅 기능을 하나로 통합한 도구를 무엇이라고 하는가?
- 통합 개발 환경(IDE)
Q 고급언어
- C
- Java
- Python
Comments