• 검색 결과가 없습니다.

프로그래밍언어 강의 개요

N/A
N/A
Protected

Academic year: 2022

Share "프로그래밍언어 강의 개요"

Copied!
12
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

프로그래밍언어 강의소개

2015-1 프로그래밍언어

2015. 3. 1.

교수 김 영 탁

영남대학교 공과대학 정보통신공학과

(Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr)

(2)

프로그래밍언어 강의 개요

목적

 C 프로그래밍언어를 기반으로 한 공학문제의 해결 방법 습득, C++ 프로그래밍언어의 기본 지식 습득 및 객체 지향형 프로그래 밍,소프트웨어 시스템 설계 및 구현 지식 습득

 관련 C/C++ 프로그래밍 실습

 C/C++ 기반 설계 프로젝트 수행

 선수과목: 정보통신공학 개론, 컴퓨터 프로그래밍 (C, Java)

교재 및 참고문헌

[1] 천인국, 쉽게 풀어 쓴 C언어 Express, 개정판, 생능출판사, 2014.

[2] Walter Savitch, Absolute C++, 5th Ed, Pearson, 2013.

(3)

인류 문명의 진화와 컴퓨터 프로그래밍

인류는 새로운 도구를 효율적으로 현명하게 사용함으로 써 문명을 진화시켰음

 increased

productivities

(생산성) with new tools of new materials, powered machines:

 from stone, stick, bronze, iron, telephone and computers

 increased

collaborations

(협동) among multiple persons

 increased

performance

(성능) in value creation

 increased

energy efficiencies

(에너지 효율성)

컴퓨터와 프로그래밍을 통하여 이러한 기능을 강화시킴

(4)

프로그래밍언어 과목을 통하여 무엇을 배우나?

 “엔지니어”로 생각하고 설계하는 방법을 배운다.

 Technician (기능공) vs. Engineer (엔지니어)

 Simple passive & repeated implementation (단순 반복 작업, 구현 위주 의 업무) vs.

 creative design (창의적 설계) and fast prototyping (신속한 시제품 개 발)

알고리즘의 기초에 대하여 배우며, 설계된 알고리즘에 따 라 프로그램을 설계/구현하는 기법을 배운다.

 C/C++ 프로그래밍 기법을 배운다.

프로그래밍의 즐거움

을 느낄 것이다!

(5)

강의주제 (1)

Part 1) 알고리즘과 프로그래밍 소개 - 컴퓨터, 프로그래밍과 소프트웨어

- 순서도 (flow chart)와 의사코드 (pseudo code) - 알고리즘

- 자료구조

Part 2) Structured Programming - 조건문: if, if-else, switch

- 입출력, printf, scanf

- 반복문: for, while, do-while - 함수 (function)

- 재귀 (recursion)

- 배열 (array), 탐색 (searching)과 정렬(sorting) - 파일 및 파일 입출력

- 구조체 (structure)

- 동적 메모리 할당 (dynamic memory allocation) - 포인터 (pointers)

- 연결 리스트 (linked list) - 이진 트리 (binary tree)

(6)

강의주제 (2)

Part 3) 객체 지향형 ( object programming) 프로그래밍 개요

- 객체 지향형 프로그래밍 소개 - 클래스 (class)와 객체 (object)

- 캡슐화 (encapsulation), 추상화 (abstraction), 정보 은닉 (information hiding)

- 소프트웨어 재사용 (software reuse)과 상속 (inheritance) - Operator overloading

(7)

수업 진행 및 평가 (1)

강의 및 실습

주당 2 시간 강의

주당 2 시간 실습

주당 2 시간 보충 설명 시간

시험

 학기당 실기 시험 4회

시험 1: 3월 28일 (토요일)

시험 2 (중간고사) : 4월 22일 (수요일)

시험 3: 5월 23일 (토요일)

시험 4 (기말고사) : 6월 17일 (수요일)

각 실기시험에 구두 시험 (oral test) 포함

 과제물 (homework)

각 장 (chapter) 별로 homework 부과

과제물 보고서는 각 장 별로 분리하여 제출

과제물 제출 기한: 과제물 공지 후 1주일 이내 (수업시간에 제출)

과제물 제출 기한 초과시 1주일 단위로 20%씩 점수 감점

(8)

수업 진행 및 평가 (2)

설계 프로젝트 (Design Project)

 공학교육인증 프로그램 (ABEEK)의 요구사항에 따른 4 주 분량의 설계 프로젝트 수행

 설계 문서 작성

 설계 및 구현, 성능 분석

 발표

 최종 보고서

성적 평가 (총 1000점 만점)

시험 4회 x 100 점 = 400점

실습 200점

설계프로젝트 200점

출석 및 퀴즈 100점

(9)

수업 진행 및 평가 (3)

조교 (Teaching Assistant: TA)

 황현동: 박사과정 (차세대 네트워킹 연구실, IT관 304호실)

 정용환: 학부4학년 (차세대 네트워킹 연구실, IT관 304호실)

 전화 : (053) 810-3940

 E-mail: mch2d@ynu.ac.kr, wjdsd@ynu.ac.kr

강의지원시스템

 강의자료 및 보충 설명자료

 실습자료

(10)

이 과목에서 배울 12 가지 중점 주제 (1)

<Part 1: C>

1) 2차원 배열을 사용한 55 행렬 계산 : 행렬 덧셈, 뺄셈, 곱셈, 행렬식, 역행렬

2) 100,000개 요소에 대한 선택정렬, quick sorting, 정렬 시간이 비교 3) 구조체 (structure)

4) 구조체 배열에 대한 정렬: Selection sorting of array of structure, Quick sorting of array of structure

5) 포인터 (pointer)

6) 2차원 배열의 동적 생성, 7  7 행렬 계산 7) 자기참조 구조체 (self-referential structure)

8) 기본적인 자료구조: 연결 리스트 (linked list), 이진 트리 (binary tree)

(11)

이 과목에서 배울 12 가지 중점 주제 (2)

<Part 2: C++>

9) 클래스(class)와 객체 (object): 클래스 선언 및 구현 (private data member, member function), encapsulation, abstraction,

information hiding

10) operator overloading: +, -, *, /, ==, !=, ++, --, ! (determinant of matrix), ~ (inverse of matrix)

11) 클래스 상속 (inheritance of classes)

12) 가상함수 (virtual function)와 polymorphism (同質異形)

(12)

Q & A

참조

관련 문서

• 키와 일치하는 원소를 리스트에서 찾을 때까지 혹은 발견된 원소 없이 리스트 의 모든 원소를 전부 비교할 때까지 반복된다.. • 일치하는 원소를

– 문자열에 있는 괄호를 차례대로 조사하면서 왼쪽 괄호를 만나면 스택에 삽 입하고,오른쪽 괄호를 만나면 스택에서 top 괄호를 
. 삭제한

[r]

Calculator 클래스를 사용하기 위해서는 패키지를 포함 하는 정확한 경로명을 컴파일러에게

[r]

The purpose of this study is to develop a multidimensional Flourish Scale for Early Childhood Teachers based on the opinions of the panel of early childhood education experts

low 인가된다.. 20mA 로서 LED 출력에 직접적으로 이용할 수 있다. 또한 입력포트로 사용될시 내부 풀업저항이 설정되어 있을 때 low 신호가 입력신호 로서 인가된다. RESET

이미지 변화에 사용되는 컴퓨터애니메이션 기법을 말한다.. 이 제도가