목차
Ⅰ. 개요
Ⅱ. 객체지향기술의 정의
Ⅲ. 객체지향기술의 주요개념
1. 객체
1) 구조지향적 언어에서의 자료
2) 객체지향 언어에서의 객체
2. 클래스
3. 실체(instance)
4. 메시지(message)
5. method
1) method의 집합
2) 객체지향프로그래밍
Ⅳ. 객체지향기술의 역사
1. 수정
2. 문제
1) structured designed - process + data
2) 현대의 software
3) 새로운 설계기술
Ⅴ. 객체지향기술의 배경
Ⅵ. 객체지향기술의 필요성
1. 프로그램의 maintenance가 쉬워진다
2. 한 번 디버깅 된 코드는 새로운 기능 추가로 인하여 손댈 필요가 거의 없다
3. 한 번 작성된 객체(클래스)를 다른 곳에 재사용할 수 있다
Ⅶ. 객체지향기술의 의의
참고문헌
Ⅱ. 객체지향기술의 정의
Ⅲ. 객체지향기술의 주요개념
1. 객체
1) 구조지향적 언어에서의 자료
2) 객체지향 언어에서의 객체
2. 클래스
3. 실체(instance)
4. 메시지(message)
5. method
1) method의 집합
2) 객체지향프로그래밍
Ⅳ. 객체지향기술의 역사
1. 수정
2. 문제
1) structured designed - process + data
2) 현대의 software
3) 새로운 설계기술
Ⅴ. 객체지향기술의 배경
Ⅵ. 객체지향기술의 필요성
1. 프로그램의 maintenance가 쉬워진다
2. 한 번 디버깅 된 코드는 새로운 기능 추가로 인하여 손댈 필요가 거의 없다
3. 한 번 작성된 객체(클래스)를 다른 곳에 재사용할 수 있다
Ⅶ. 객체지향기술의 의의
참고문헌
본문내용
개인적인 생각을 몇자 적자면, 예를 들어 어느 회사에 10명의 사원이 있다고 하자. 이들은 모두 10가지의 일을 각각 전문으로 독립하여 분업한다.
이럴 경우에 만일 한 사람이 회사를 관둔다거나 또는 한 사람이 맡은 분야가 망한다고 하면 나머지 9명으로는 회사의 업무를 수행할 수가 없게 되고 진행하던 업무는 한 사람의 공백과 필요한 업무의 불충분으로 인해 완수할 수 없게 된다. 그러나 업무가 상호 완전 독립이 아니라 어느 정도 공유되고 있다면 한 사람의 결원이 크게 문제될 것이 없으며 또는 나머지 9가지의 일로서 다시 업무를 수행할 수 있을 것이다.
또한 다른 예를 들어보자.
프로그래밍언어 C 와 C++의 경우에, C++는 심각한 프로그래머들을 위한 좀더 enjoyable한 일반적인 목적의 프로그래밍언어이다. 소수의 작은 부분을 제외하고, C++은 C언어의 superset된 언어이다. 새로운 type을 정의하기위하여 효율적인 실용성과 유동성을 제공한다. 그러면서도 C언어에 의해 제공되어지는 실용성도 있으므로(C언어적인 요소를 많이 포함하고 있으므로) 이를 객체지향언어라 한다.
개인적인 생각으로 Object-Oriented Programing은 남에게 들어서 습득되어지는 流의 지식은 아닌 것 같다. 시중에 나와 있는 서적을 봐도 구체적으로 정의하기 힘들기도 하고, 작자들의 이론과 지식도 수학적으로 체계화된 것이 아닌 경험에 의한 것이 대부분이란 생각이다. 그러므로 프로그래머들은 오직 경험을 통해서만 이 O.O.P.개념을 이해하게 되지 않을까 한다.
Ⅶ. 객체지향기술의 의의
객체 지향 기술은 매우 오래 전부터 시뮬레이션, 프로그래밍 언어, 인공 지능, 데이타베이스 등 각 분야에서 연구되어 왔다. 제각기 다른 시각에서 발전된 객체 지향 개념은 1990년대에 들어서면서 여러 소프트웨어 기술 중에 가장 중요한 기술로 인식되고 있다.
특히 소프트웨어 생산 기술에 대한 관심이 프로그래밍에서 분석, 설계로 옮겨지면서 더욱 주목을 받고 있다. 최근 몇 년 동안 객체 재향 방법은 그래픽 사용자 인터페이스, 분산 시스템에서 대규모의 재무 관리 시뮬레이션에 이르기까지 많은 응용 분야에 적용되어 성공 사례를 보이고 있다. 소프트웨어 기술의 발전 속도가 하드웨어의 발전에 비하여 매우 느리고 소프트웨어 생산성이 그 수요를 따르지 못하는 근원적인 문제를 우리는 소프트웨어 위기하고 불렀다. 아직도 대부분의 소프트웨어는 그 기본 기능이 이미 개발되어 있음에도 불구하고 처음부터 새로 작성되는 경우가 많다.
약간의 차이 예를 들면 자료구조가 같더라도 타입이 다르거나 같은 기능을 하는 함수라도 매개 변수 타입의 차이 때문에 다시 사용하지 못한다. 1009년대에 들어서면서 이러한 문제들이 객체 지향 기술로 인하여 해결될 수 있다는 공감대가 형성되고 있다.
따라서 재래식 소프트웨어 개발 방법과 프로그래밍 언어로부터 객체 지향 기술로 전향하는 추세이며 앞으로는 객체 지향 기술이 소프트웨어 개발 방법에 주류를 이룰 것으로 전망된다.
특히 객체 지향 기술은 최근 소프트웨어 제품의 전형적인 타입인 사용자 중심, 대화식 프로그램의 개발에 아주 적합한 방법이다. 사용자 중심의 대화식 프로그램의 경우 조작되는 타입만 다르고 데이터를 조작하는 방법은 같은 것이 많다. 객체 지향 기술은 이러한 유사성을 이용할 수 있는 방법을 제공한다.
객체 지향 기술의 또 다른 특징은 프로그램을 뚜렷하게 구별되는 단위로 분할 할 수 있다는 것이다. 구별된 단위들은 잘 정의된 인터페이스를 이용 상호 작용할 수 있다. 이렇게 되면 큰 시스템에 대한 원래의 요구를 잘 분할하여 생각해 볼 수 있고 잘 분할된 시스템은 수정할 때 그 영향권이 적어지므로 변경 작업이 쉬워진다. 코드 재사용에 의하여 프로그램생산성을 높이고 변경이 쉬워지며 일관된 소프트웨어 개발 모델을 제공하는 객체 지향 기술은 앞으로 소프트웨어 생산 기술에서 매우 중요한 위치를 차지할 것이다.
참고문헌
김종훈 외 2명(2003), 객체지향기술을 도입한 망 관리 시스템 설계 및 구현, 한국정보과학회
김영태(1995), 객체지향 기술 개발, 한국소프트웨어개발연구조합
심재철(1997), 객체지향기술의 개요 및 발전동향, 행정안전부
이민화(1999), 객체지향 기술의 수용 모델, 부산외국어대학교
이민화(2001), 객체지향 기술의 확산에 영향을 주는 요인에 관한 경험적 연구, 한국정보시스템학회
최주희(2011), 객체지향 개념학습에서의 스토리텔링 활용 방법 연구, 고려대학교
이럴 경우에 만일 한 사람이 회사를 관둔다거나 또는 한 사람이 맡은 분야가 망한다고 하면 나머지 9명으로는 회사의 업무를 수행할 수가 없게 되고 진행하던 업무는 한 사람의 공백과 필요한 업무의 불충분으로 인해 완수할 수 없게 된다. 그러나 업무가 상호 완전 독립이 아니라 어느 정도 공유되고 있다면 한 사람의 결원이 크게 문제될 것이 없으며 또는 나머지 9가지의 일로서 다시 업무를 수행할 수 있을 것이다.
또한 다른 예를 들어보자.
프로그래밍언어 C 와 C++의 경우에, C++는 심각한 프로그래머들을 위한 좀더 enjoyable한 일반적인 목적의 프로그래밍언어이다. 소수의 작은 부분을 제외하고, C++은 C언어의 superset된 언어이다. 새로운 type을 정의하기위하여 효율적인 실용성과 유동성을 제공한다. 그러면서도 C언어에 의해 제공되어지는 실용성도 있으므로(C언어적인 요소를 많이 포함하고 있으므로) 이를 객체지향언어라 한다.
개인적인 생각으로 Object-Oriented Programing은 남에게 들어서 습득되어지는 流의 지식은 아닌 것 같다. 시중에 나와 있는 서적을 봐도 구체적으로 정의하기 힘들기도 하고, 작자들의 이론과 지식도 수학적으로 체계화된 것이 아닌 경험에 의한 것이 대부분이란 생각이다. 그러므로 프로그래머들은 오직 경험을 통해서만 이 O.O.P.개념을 이해하게 되지 않을까 한다.
Ⅶ. 객체지향기술의 의의
객체 지향 기술은 매우 오래 전부터 시뮬레이션, 프로그래밍 언어, 인공 지능, 데이타베이스 등 각 분야에서 연구되어 왔다. 제각기 다른 시각에서 발전된 객체 지향 개념은 1990년대에 들어서면서 여러 소프트웨어 기술 중에 가장 중요한 기술로 인식되고 있다.
특히 소프트웨어 생산 기술에 대한 관심이 프로그래밍에서 분석, 설계로 옮겨지면서 더욱 주목을 받고 있다. 최근 몇 년 동안 객체 재향 방법은 그래픽 사용자 인터페이스, 분산 시스템에서 대규모의 재무 관리 시뮬레이션에 이르기까지 많은 응용 분야에 적용되어 성공 사례를 보이고 있다. 소프트웨어 기술의 발전 속도가 하드웨어의 발전에 비하여 매우 느리고 소프트웨어 생산성이 그 수요를 따르지 못하는 근원적인 문제를 우리는 소프트웨어 위기하고 불렀다. 아직도 대부분의 소프트웨어는 그 기본 기능이 이미 개발되어 있음에도 불구하고 처음부터 새로 작성되는 경우가 많다.
약간의 차이 예를 들면 자료구조가 같더라도 타입이 다르거나 같은 기능을 하는 함수라도 매개 변수 타입의 차이 때문에 다시 사용하지 못한다. 1009년대에 들어서면서 이러한 문제들이 객체 지향 기술로 인하여 해결될 수 있다는 공감대가 형성되고 있다.
따라서 재래식 소프트웨어 개발 방법과 프로그래밍 언어로부터 객체 지향 기술로 전향하는 추세이며 앞으로는 객체 지향 기술이 소프트웨어 개발 방법에 주류를 이룰 것으로 전망된다.
특히 객체 지향 기술은 최근 소프트웨어 제품의 전형적인 타입인 사용자 중심, 대화식 프로그램의 개발에 아주 적합한 방법이다. 사용자 중심의 대화식 프로그램의 경우 조작되는 타입만 다르고 데이터를 조작하는 방법은 같은 것이 많다. 객체 지향 기술은 이러한 유사성을 이용할 수 있는 방법을 제공한다.
객체 지향 기술의 또 다른 특징은 프로그램을 뚜렷하게 구별되는 단위로 분할 할 수 있다는 것이다. 구별된 단위들은 잘 정의된 인터페이스를 이용 상호 작용할 수 있다. 이렇게 되면 큰 시스템에 대한 원래의 요구를 잘 분할하여 생각해 볼 수 있고 잘 분할된 시스템은 수정할 때 그 영향권이 적어지므로 변경 작업이 쉬워진다. 코드 재사용에 의하여 프로그램생산성을 높이고 변경이 쉬워지며 일관된 소프트웨어 개발 모델을 제공하는 객체 지향 기술은 앞으로 소프트웨어 생산 기술에서 매우 중요한 위치를 차지할 것이다.
참고문헌
김종훈 외 2명(2003), 객체지향기술을 도입한 망 관리 시스템 설계 및 구현, 한국정보과학회
김영태(1995), 객체지향 기술 개발, 한국소프트웨어개발연구조합
심재철(1997), 객체지향기술의 개요 및 발전동향, 행정안전부
이민화(1999), 객체지향 기술의 수용 모델, 부산외국어대학교
이민화(2001), 객체지향 기술의 확산에 영향을 주는 요인에 관한 경험적 연구, 한국정보시스템학회
최주희(2011), 객체지향 개념학습에서의 스토리텔링 활용 방법 연구, 고려대학교
추천자료
- 지식공유를 통한 소비자불평 관리 및 소비자충성도의 향상 : 소비자불만
- 지식경영과 교육행정에 과한 연구
- 지식정보 격차에서 오는 사회 양극화 문제의 원인과 극복방안
- 가치혁명으로서 인터넷과 지식관리시스템의 구축과 세부전략
- [신지식인][지식근로자][신지식인이론][지식근로자이론]신지식인(지식근로자)의 정의와 특성,...
- [신지식인][지식근로자]신지식인(지식근로자)의 개념, 특징과 신지식인(지식근로자)의 역할, ...
- 지식경쟁력의 결정요소, 선진국의 지식경쟁력강화 전략, 애니메이션산업과 우주산업의 지식경...
- 지식근로자 육성 HRD전략
- 정부혁신 정부지식관리시스템(민간기업의 지식경영)
- 온라인프로젝트학습(웹기반프로젝트학습)의 의의와 유형, 온라인프로젝트학습(웹기반프로젝트...
- WBI(웹기반학습,교육, 웹기반수업) 정의, 교육적기능, 특성, WBI(웹기반학습,교육, 웹기반수...
- 신지식인 운동의 한계와 해결방안
- 지식재산권(지재권, 지적재산권)의 정의와 특징, 지식재산권(지재권, 지적재산권)의 연혁과 ...
- [지식경쟁력, 우주산업, 항공기산업, 전자상거래산업, 영화산업]우주산업의 지식경쟁력, 항공...
소개글