1 . 절차 지향 언어 에서 구조 적 프로그래밍 기법 이 필요 한 이유 와 그 방법 을 설명 하 세요 . - 현재 많 은 대학 의 학과 또는 전공 에서 절차 지향 프로그래밍 언어 및 객체 지향 프로그래밍 언어 관련 과목 이 개설 되 어 있 지만 , 이 두 개념 을 비교 하 면서 서로 의 차이점 , 장단점 을 뚜렷 하 게 이해 할 수 있 는 종합 적 인 과목 은 없 다 . 본 논문 에서 는 절차 지향 적 프로그래밍 및 객체 지향 적 프로그래밍 기법 을 비교 및 분석 하 고 , 하나 의 수업 상 에서 동시 에 이 를 비교 하 고 실습 을 진행할 수 있 는 교과목 자료 및 관련 웹 콘텐츠 를 개발 하 였 다 . 이 를 통하 여 각각 의 프로그래밍 기법 의 이해 는 물론 , 두 프로그래밍 기법 의 장단점 파악 및 응용 활용 능력 을 배양 할 수 있 도록 하 였 다 . 2 . 절차 지향 언어 와 객체 지향 언어 의 주요 차이점 을 설명 하 세요 . - 간단히 말 해 순차 적 프로그래밍 은 주어진 문제 를 순차 적 으로 작성 하 는 걸 말 합니다 . ( 주로 베이직 언어 가 그러 합니다 . ) 예 를 들 어 구구단 프로그램 을 작성 할 때 매인 -> 구구단 루틴 -> 종료 <- 이렇게 순차 적 으로 끝나 게 됩니다 . 하지만 단점 이 있 습니다 . .. 나중 에 프로젝트 가 점차 커지 게 되 면 코딩 한 이 도 소스 분석 을 하 지 못하 게 된다는 것 입니다 . 그리고 객체 지향 적 프로그래밍 은 이 와 반대 로 매인 -> 객체 1 ( 변수 ) -> 객체 2 ( 결과 값 ) -> 객체 3 ( 구구단 값 을 출력 해 주 는 함수 ) -> 종료 <- 위 와 약간 비슷 하 게 돌아갑니다 . .. 객체 지향 적 인 예 가 어려우 시 겠 지만 나중 에 프로젝트 가 커짐 에 따라 관리 / 효율 성 / 그리고 확장 성 ( 기능 추가 ) 버그 때려잡 기 등 의 작업 시간 이 많이 줄어들 게 되 며 생산 성 또한 뛰어난 다고 보 시 면 됩니다 . .. 코딩 자 와 다른 개발자 도 소스 분석 이 용이 하 다는 것 입니다 . 3 . 프로그래밍 언어 의 역할 은 무엇 인가요 ? - 벨 연구소 에서 1971 년 경 부터 리치 ( D . M . Ritchie ) 등 에 의해서 설계 개발 된 시스템 기술 용 의 프로그래밍 언어 이 다 . UNIX 오퍼레이팅 시스템 의 기술 에 사용 할 것 을 목적 으로 설계 한 언어 로 UNIX OS 의 대부분 이 이 언어 로 개발 되 었 다 . 컴퓨터 의 구조 에 밀착 한 기초 기술 이 가능 한 것 과 간결 한 표기 가 될 수 있 는 것 등 을 특징 으로 하 고 있 다 . 시스템 기술 ( 記 術 ) 용 언어 의 경우 에 는 기억 장치 의 주소 ( 어드레스 ) 등 과 같 은 하드웨어 자원 까지 기술 ( 記 術 ) 의 대상 으로 할 것 을 요구 하 고 있 는데 , C 언어 에서 는 이러 한 수준 의 개념 을 데이터 형 이나 함수 등 의 고 수준 언어 의 개념 에 잘 대응 하 고 있 다 . 따라서 언어 의 성격 상 일반 적 인 범용 의 언어 와 거의 다를 바 가 없 다 . 프로그램 을 다른 종류 의 컴퓨터 에 이식 하 는 것 도 용이 하 며 , 범용 언어 이 기 는 하 지만 강력 하 고 고 수준 의 언어 로 하 는 것 을 목표 로 하 고 있 지 않 다 . C 언어 는 프로그램 오류 를 쉽 게 발견 하 기 위한 기능 은 부족 하 지만 , 고 수준 언어 에서 자주 볼 수 있 는 기술 상 의 제약 이 적 기 때문 에 오히려 프로그래밍 하 기 쉬운 편리 한 언어 로 평가 되 며 , 프로그램 을 간결 하 게 쓰 기 위하 여 많 은 연구 를 한 언어 이 다 . C 언어 의 기본 특징 은 ASCII 코드 체계 로 영문 소문자 집합 을 바탕 으로 하 고 있 으며 , 함수 ( function ) 의 정의 문 들 의 집합 으로 구성 되 어 있 고 , 분할 컴파일 을 할 수 있 어 함수 정의부 밖 의 외부 변수 를 정의 함 으로써 컴파일 단위 가 다른 함수 의 외부 변수 를 참조 할 수 있 게 되 어 있 다 . 또한 프로그램 의 함수 기능 에 는 FORTRAN 의 SUBROUTINE 기능 과 FUNCTION 기능 을 가지 고 있 으며 , 함수 호출 시 매개변수 의 값 만 넘겨 주 는 호출 방식 을 따르 고 있 고 , 자료 의 주소 를 자유 롭 게 조작 할 수 있 는 점 들 이 다 .