상속이란 단어를 네이버에서 쳐보면 전혀 엉뚱한 답변이 나와서 정확한 키워드를 입력해 보기로 결심하고 객체지향 상속 이라는 문장으로 검색을 해 보았습니다.
블러그나 지식인에는 많은 답변이 있더군요 모두 비슷비슷해서 하나 찾아서 적어 둡니다. 또 잃어 버릴지도 모르니까 말이죠.

상속이란?
예를들어 가전제품 클래스를 물려받은 세탁기, 냉장고, 블렌더 등은 가전제품(슈퍼클래스)의 모든 특성을 물려받게 된다. 이때 세탁기, 냉장고, , 블렌더 등을 서브클래스라 한다.
특성을 물려받은 각각의 서브클래스는 자신만의 속성과 행동을 추가할 수 있다.

이렇게 정의를 해 두었군요.
우리는 흔히 슈퍼클래스, 부모클래스 그리고 서브클래스, 자식클래스라는 말들을 프로그램을 좀 다를줄 아는 사람들끼리 객체지향을 공부한 애들끼리 쓰는 말로 첨에는 단순하게 아 부모가 자식에게 물려주는 거구나 하는 생각으로 쓰곤 하죠. 저 또한 그랬구요. 네 맞습니다. 지금 생각하고 공부한 내용이 맞아요. 아직도 다른 참고 문서를 읽어보면 또 이런식으로 내용이 나왔네요.

"클래스를 상속한다. 와 클래스를 사용한다. 라는 말은 객체 지향 프로그래밍의 기초가 되는 프로그래밍 스타일 입니다."

이제 적당히 하고를 예를들어 코딩으로 표현해 볼까요?
public class Animal{
}

class dog : public Animal{
}

이런식에 방법은 우리가 통신을 하거나 파일관리 클래스를 만들때 자주 사용하는 방법인데요 통신에는 그종류가 너무나 많습니다. 예를들어 우리가 tcp 통신을 위해서 프로그래밍을 만들었다고 했다고 칩시다. 그럼 여러분은 tcp에 관련된 통신 모듈만 만드시나요? 아님 통신이라는 큰 공통 모듈을 하나 만들어서 tcp 클래스로 만들어 상속을 받아서 사용을 하시나요? 제 생각에는 상속을 받아서 사용하면 나중에 공통부분을 다시 구현하지 않아도 되고 유지보수도 편할 것 같아서 두번째가 더 현명하게 제작하는것 이라고 생각하네요. 

결론을 내리자면 어느게 답이라고 말하기 보다는 상속을 자신의 스타일에 맞게 이해하고 응용 할수 있어야 한다 입니다.. 저또한 그러기 위해서 많은 서적도 읽고 프로젝트중 코딩을 할때 응용도 많이 해 보았습니다.
프로그래밍 언어를 배운다는 것은 책을 정독해서 읽고 외우는게 아니라 손에 익힐정도로 많이 짜보고 쳐서 자기것으로 만드는것이 가장 중요하다고 하네요.

'기타 > 객체지향언어특징' 카테고리의 다른 글

추상화  (0) 2009.08.28
캡슐화  (0) 2009.08.28
다형성  (0) 2009.08.28
C++ 과 C#의 차이점  (0) 2009.08.19
간만에 날을 새는 바람에 늦잠을 자고 말았다. 학교에서는 오늘 일이 있다고 했는데 도와 주지도 못하고 그냥 늦게 등교해 버렸다 ㅠㅠ
등교도 늦게 하는 바람에 그냥 도서관에서 들려서 책이나 빌려서 가야 겠다는 생각으로 도서관을 나섰다. 도서관을 들어가는 순간 보고 싶고 배우고 싶은 욕심은 의욕보다 너무 앞서서 인지 정작 배우고 싶고 알고 싶은건 빌리지 않고 에세이 집을 하나 빌렸다. 임백천작가의 소산(소프트웨어 산책)을 말이다. 난 전에도 임백천작가의 누알을 읽은적이 있다. 하지만 이사람은 참 재밌다. 프로그램 시점보다 철학자라고 해야 하나 암튼 어려운 문법이나 개념을 쉽게 표현해서 더더욱 좋다.
서론이 너무 길었다. 암튼 책을 읽다 보니 다형성에 대한 개념이 나와서 잃어 버릴까봐 적어 두기로 했다.

"객체는 수정(modification)에 닫히고 확장(extension)에 열려 있어야 한다는 것 Open-Close의 원리인데 그것은 곧 소프트웨어의 유지보수 비용과 노력을 결정적으로 절약시키는 객체지향 원리의 정수이다. 다형성이 없다면 그러한 원리는 구현 되기 어렵다"

이 구문이다. 다형성에 대한 이해가 잘 되지 않아서 적지 않은 책을 읽었지만 이런 내용은 수수히 수없이 들어봤을 것이다. 하지만 이렇게 쉽고 명쾌하게 풀어서 적어놓은것 참으로 대단한 일이다.

이참에 위키사전에는 얼마나 어렵게 나왔는지 찾아 보겠다.
헉 이를 어째 이건 진짜다. 찾아보니 다형성이라는 설명이 없다.
그래서 이번엔 네이버에서 찾아 봐야 겠다는 생각으로 키보드를 두드려 보았다.
역시 블러그식이나 지식인에는 있으나 명확한 대답은 얻을 수 없다.

그래서 정리 한다.
이내용은 "탱이의 생활" 블러그에서 퍼왔습니다.
다형성은 이란?
다형성이란 하나의 여러가지의 일을 하는 것을 말한다.

이것이 정의라고 한다. 좀더 자료를 찾아서 올리고 싶지만 급 피곤해서 오늘은 여기까지 적도록 한다. 담에 기회가 된다면 객체지향에 대해서 한번 정리해서 올려야 겠다.
이만 줄인다. 모두 지겨운 글을 읽어주셔서 감사드립니다. 꾸벅

'기타 > 객체지향언어특징' 카테고리의 다른 글

추상화  (0) 2009.08.28
캡슐화  (0) 2009.08.28
상속  (0) 2009.08.28
C++ 과 C#의 차이점  (0) 2009.08.19


프리웨어라 더욱 메리트 있어서 좋다.
아직 수정할것이 조금 있는데도 쓸만하다.
공짜니 말이다 ㅋㅋ
 관련사이트 : http://cafe.naver.com/hipervv

'기타 > 유틸' 카테고리의 다른 글

한글2010을 써보다  (0) 2010.07.28
문서 편집기 두번째 울트라 에디트 10.10 한글판  (0) 2009.08.25
보편화된 문서 편집도구 EditPlus v3.00 입니다.  (0) 2009.08.25
fport 사용법  (0) 2009.08.25
폴더의 암호걸기.  (0) 2009.08.24

역시 보편적인 문서 편집기 울트라 에디트 입니다.
키젠 못구하시면 이멜 주세용~
그럼 잘쓰세요.


p.s 키젠을 원하시면 쪽지나 이멜 주세용 ㅋ

보안은 입이 닳도록 말해록 말해도 정말 중요합니다.
오늘 시간에 다룰 것은 자신의 pc에 포트가 열려 있는지 확인할수 있는
툴을 설명할까 합니다.
자신의 port에 대한 정보를 얻기 위해서는 fport란 툴을 받아서 사용해야 합니다.

일단 위에 파일을 다운받아서

c:\fport 란 방으로 옴기시기 바랍니다.

시작 - 실행 - cmd

콘솔창을 띄웁니다. ㅎㅎ

콘솔창에서 c:\cd \

적어 주면 c:\가 나오는데

여기서 아까 만들어 둔 fport 방으로 들어가야 합니다.

방법은 c:\cd fport 를 입력해 줍니다.

그럼 fport 방으로 이동하게 되는데

거기서 fport를 입력하면 아래와 같은 결과가 나오게 됩니다.


위 그림은 제 컴퓨터 화면인데요. 가우스 효과가 들어간 부분이

port와 protocol에 대한 정보를 볼수 있습니다.

위와 같이 검색을 하여 수상한 port가 있을경우 강제로 끊으셔야 겠습니다.

이상 fport에 대한 포스트 였습니다.

모두 해킹 당하지 않도록 사전에 예방 합시다.


폴더를 보호하고 싶으신 분은 설치후 사용하시기 바랍니다.
키젠이 필요하신분은 쪽니나 이멜을 주세요.

꽤 재미난 툴 인거 같습니다. 써보세용 ㅋ

+ Recent posts