개인 재정 자바의 객체 지향 프로그래밍 (OOP) - 더미

자바의 객체 지향 프로그래밍 (OOP) - 더미

차례:

비디오: Test First! @ahastudio - 이모콘 EMOCON 2016 S/S 2024

비디오: Test First! @ahastudio - 이모콘 EMOCON 2016 S/S 2024
Anonim

Java는 객체 지향적입니다. 그게 무슨 뜻 이죠? FORTRAN과 같이 컴퓨터가 "해야할 일 /해야할 일"명령을 내리는 데 주력하는 언어와 달리 객체 지향 언어는 데이터에 중점을 둡니다. 물론 객체 지향 프로그램은 여전히 ​​컴퓨터에 무엇을해야하는지 알려줍니다. 그러나 그들은 데이터를 구성하여 시작하고 명령은 나중에 나옵니다.

객체 지향 언어는 사람들이 모든 종류의 작업을 수행 할 수 있도록 데이터를 구성하기 때문에 "수행 / 수행"언어보다 낫습니다. 데이터를 수정하려면 수행 한 모든 작업을 스크랩하고 새로운 작업을 수행해야 할 때마다 새로 시작하는 대신 기존 작업을 기반으로 구축 할 수 있습니다. 컴퓨터 프로그래머는 일반적으로 똑똑한 사람이지만, 잠시 시간을내어 이것을 알아 냈습니다.

클래스를 사용하여 데이터를 구성합니다. 새로운 콘도미니엄 개발 (아직 공사 중)에서 주택을 추적하는 컴퓨터 프로그램을 작성한다고 가정 해보십시오. 집들은 서로 조금씩 다릅니다. 각 집에는 독특한 사이딩 색상, 실내 페인트 색상, 주방 캐비닛 스타일 등이 있습니다. 객체 지향 컴퓨터 프로그램에서 각 집은 하나의 객체입니다.

그러나 사물 전체가 이야기는 아닙니다. 집은 서로 약간 다르지만 모든 집은 같은 특성 목록을 공유합니다. 예를 들어, 각 집에는

사이딩 색상으로 알려진 특성이 있습니다.

각 주택에는 주방 캐비닛 스타일이라는 또 다른 특징이 있습니다. 당신의 객체 지향 프로그램에서 집 객체가 소유 할 수있는 모든 특성을 포함하는 마스터 목록이 필요합니다. 이 특성의 마스터 목록을 클래스라고합니다.

그럼 당신은 그것을 가지고 있습니다. 객체 지향 프로그래밍의 이름이 잘못되었습니다. 정말 "클래스와 객체로 프로그래밍"이라고해야합니다. "

라는 단어가

클래스

가 먼저 나열되었음을 유의하십시오. 건설중인 주택 개발에 대해 다시 생각해보십시오. 맨발의 먼지에 주차 된 구루병 트레일러의 어딘가에있는 청사진으로 알려진 특성의 마스터 목록입니다. 아키텍트의 청사진은 객체 지향 프로그래머 클래스와 같습니다. 청사진은 각 주택에 대한 특성 목록입니다. 청사진에는 "사이딩. "실제 집 개체에는 회색 사이딩이 있습니다. 청사진에는 "주방 캐비닛. "실제 집안에는 루이 14 세 부엌 캐비닛이 있습니다. 청사진을 작성한 지 1 년 후, 그것을 사용하여 10 채의 가옥을지었습니다. 클래스와 객체에서도 마찬가지입니다. 먼저 프로그래머는 클래스를 설명하는 코드를 작성합니다. 그런 다음 프로그램이 실행되면 컴퓨터는 (청사진) 클래스에서 개체를 만듭니다. 클래스와 객체 간의 실제 관계입니다. 프로그래머는 클래스를 정의하고 클래스 정의에서 컴퓨터가 개별 객체를 만듭니다.

객체 지향 언어에 대한 좋은 점은 무엇입니까?

당신이 이미 새로운 개발에서 주택에 대한 건축 지침을 추적하기위한 컴퓨터 프로그램을 작성했다고 상상해보십시오. 그런 다음 큰 보스가 수정 된 계획 - 집의 절반에 3 개의 침실이 있고 나머지 절반에 4 개의 계획이있는 계획 -을 결정합니다.

이전 FORTRAN / C 스타일의 컴퓨터 프로그래밍을 사용하는 경우 지침은 다음과 같습니다.

지하실을 파십시오.

도랑 양쪽에 콘크리트를 놓습니다.

지하실 프레임의 측면을 따라 2 개씩 놓습니다.

이것은 청사진 대신 지침의 긴 목록을 만드는 건축가와 같습니다. 계획을 수정하려면 목록을 정렬하여 침실을 구축하기위한 지침을 찾아야합니다. 상황을 악화 시키려면 지시 사항이 234, 394-410, 739, 10 및 2 페이지에 흩어져있을 수 있습니다. 작성자가 다른 사람의 복잡한 지시 사항을 해독해야한다면 작업이 10 배 더 어려워 질 것입니다.

수업을 시작하는 것은 청사진으로 시작하는 것과 같습니다. 3 베드룸 및 4 베드룸 주택을 모두 소유하기로 결정하면 1 층과 2 층이 있고 <2 층에 실내 벽이없는

주택

청사진이라는 청사진으로 시작할 수 있습니다. 그런 다음 두 개의 2 층 청사진을 만듭니다. 하나는 3 베드룸 하우스 용이고 다른 하나는 4 베드룸 하우스 용입니다. (이 새 청사진의 이름은 3 침실짜리 청사진과 4 침실 짜기 청사진입니다.)

당신의 건축가 동료들은 당신의 논리와 조직감에 놀랐지만 걱정이됩니다. 그들은 질문을 던집니다. "당신은 청사진 중 하나를 '3 베드룸 하우스'청사진이라고 불렀습니다. 집이 아닌 2 층을위한 청사진 인 경우 어떻게 할 수 있습니까? "

당신은 고의로 미소 짓고 대답합니다."3 층짜리 집 청사진은 '저층에 대한 정보는 원래 집 청사진을 참조하십시오. '그런 식으로, 3 베드룸 주택 청사진은 집 전체를 묘사합니다. 4 개의 침실이있는 청사진은 같은 것을 말할 수 있습니다. 이 설정을 통해 우리는 기존 주택 청사진을 작성하고 많은 비용을 절약하기 위해 이미 수행 한 모든 작업을 활용할 수 있습니다. "

3 베드룸 및 4 베드룸 하우스 클래스가 원래 하우스 클래스를

확장한다고 말할 수 있습니다.

원래의 집 클래스는 3 및 4 베드룸 하우스 클래스의 수퍼 클래스 라고합니다.그 정맥에서 3, 4 베드룸 하우스 클래스는 원래 하우스 클래스의 서브 클래스 입니다. 다른 말로하면, 원래의 집 클래스는 3 및 4 침실 하우스 클래스의

상위 클래스 라고합니다. 3 베드룸 및 4 베드룸 하우스 클래스는 원래 하우스 클래스의 아동 클래스 입니다. 말할 필요도없이, 집을 짓는 동료들도 질투심을 가지고 있습니다. 집을 짓는 사람들이 몰려 들고 당신의 위대한 아이디어를 듣습니다. 그래서, 그 순간에, 당신은 한 번 더 폭탄을 터뜨립니다. "하위 클래스가있는 클래스를 생성하면 미래에 청사진을 재사용 할 수 있습니다. 누군가가 함께 와서 5 베드룸 하우스를 원한다면 5 베드룸 하우스 청사진을 작성하여 원래의 하우스 청사진을 확장 할 수 있습니다. 우리는 원래 주택 청사진에 다시 돈을 쓸 필요가 없습니다. " "그러나 뒷줄에있는 동료는 "누군가 다른 1 층 디자인을 원한다면 어떻게 될까요? 원래의 청사진을 휴지통으로 옮기거나 원래 청사진 전체에 낙서를 시작합니까? 그건 큰돈이 들겠지, 그렇지? " 자신감 넘치는 분위기에서"우리는 원래 집 청사진을 망칠 필요가 없습니다. 누군가 거실에 저 쿠지를 원한다면 새로운 거실만을 설명하는 작은 청사진을 만들고이를 거실 자쿠지 청사진이라고 부를 수 있습니다. 그런 다음이 새로운 청사진은 나머지 집 (거실에없는 부분)에 대한 정보를 원래 집 청사진으로 나타낼 수 있습니다. "객체 지향 프로그래밍 언어로, 거실 자쿠지 청사진은 여전히 ​​원래의 청사진을 확장시킵니다. 저 쿠지 청사진은 여전히 ​​원래 주택 청사진의 하위 클래스입니다. 사실 수퍼 클래스, 상위 클래스 및 하위 클래스에 대한 모든 용어가 여전히 적용됩니다. 새로운 점은 원래 집 청사진의 거실 기능을 자쿠지 청사진

이 무시한다는 것입니다.

객체 지향 언어 이전의 시대에 프로그래밍 세계는 소프트웨어 개발에 위기를 경험했습니다. 프로그래머는 코드를 작성한 다음 새로운 요구 사항을 발견하고 코드를 휴지통에서 처음부터 다시 시작해야했습니다. 프로그래머가 작성한 코드를 다시 사용할 수 없기 때문에 이런 일이 반복되었습니다. 객체 지향 프로그래밍이 모든 것을 개선했습니다.

자바의 객체 지향 프로그래밍 (OOP) - 더미

편집자의 선택

플립 비디오 인형 치트 시트 - 인형

플립 비디오 인형 치트 시트 - 인형

플립 비디오 캠코더는 가장 사용하기 쉬운 캠코더입니다. 세계. 플립 비디오를 사용하면 비디오를 가리키고 촬영 한 다음 컴퓨터로 비디오를 복사 할 수 있습니다. 몇 번의 클릭 후, 당신은 Facebook, MySpace 및 YouTube에서 귀하의 작품을 과시하고 있습니다. Flip의 버튼을 해독함으로써 비디오를 고통없이 촬영하는 방법을 찾으십시오. 알아보기 ...

귀하의 디지털 필름에 대한 개인 상영 - 인형

귀하의 디지털 필름에 대한 개인 상영 - 인형

오늘, DSLR 필름 심사. HD가 장착 된 정교한 대형 스크린 TV는 여러 스피커의 서라운드 사운드 스테레오와 함께 아주 좋은 간식을 제공합니다. 따라서 영화 밤을 장소에서 쉽게 주최 할 수 있으며 영화관에 갈 수도 있습니다. ...

디지털 영화에 정적 제목을 추가하는 방법 - 인형

디지털 영화에 정적 제목을 추가하는 방법 - 인형

초연 요소는 다양한 선택을 제공합니다 DSLR 영화의 타이틀 선택 항목, 하위 3 분의 1 로케이터 정보. 로케이터 정보는 뉴스 세그먼트 및 다큐멘터리에서 장면의 사람이나 장소를 설명하는 데 사용되는 ID와 같습니다. 사람의 경우 이름과 설명이라는 두 줄로 구성됩니다. 예를 들어, Charles Dickens / Writer, ...

편집자의 선택

관계 속의 분노를 다루는 - 인형

관계 속의 분노를 다루는 - 인형

우리 모두는 때때로 파트너들과 화를 낸다. 분노가 당신과 당신의 관계에 미치는 파괴적인 영향을 최소화하는 데 도움이되는 다음 요령을 시도하십시오. 당신이 분노의 징후를 처음 알기 시작할 때, 당신의 파트너에게 무슨 일이 일어나는지 물어보십시오. 화가 난 사람을 상처 입히려 고합니다.

자폐증 진단의 영향 - 인형

자폐증 진단의 영향 - 인형

자폐아를 찾는 것이 매우 어렵습니다. 앞으로의 길은 쉬울 것이라고 아무도 말할 수 없습니다. 자녀의 생년월일과 본인의 생년월일에 관한 스크립트를 다시 작성해야 할 수도 있습니다. 당신은 지금 다루어야 할 새로운 쟁점, 압박 및 결정들을 가지고 있습니다. 그리고 주변 사람들은 ...

당신이 종속인지 결정하기 - 인형

당신이 종속인지 결정하기 - 인형

다음 증상 목록에서 확인하십시오. 당신은 모두가 공손 할 필요는 없으며, 코펜던트의 심각성 정도가 있습니다. 치료를하지 않으면 시간이 지남에 따라 코드 종속성이 악화되지만 도움을 받아 복구 할 수 있고 작업에서 훨씬 더 효과적 일 수 있습니다 ...

편집자의 선택

짧은 명상 묵상 시도 - 인형

짧은 명상 묵상 시도 - 인형

당신의 마음을 집중할 수있는 능력은 마음 챙김 명상을 통해 가장 강력하게 개발됩니다. Mindfulness 명상 중 하나는 호흡의 mindfulness입니다. 이것은 숨을 의식적으로 인식하는 것입니다. 명상을 스스로 시도하려면 다음 단계를 따르십시오. 자신의 호흡 감을 알아야합니다. 변경할 필요가 없습니다 ...

마음가짐의 세 측면 - 인형

마음가짐의 세 측면 - 인형

마음가짐은 세 가지 측면으로 주의 깊은 인식. 이 목록을 인쇄하여 핀이 무엇인지 생각 나게하십시오. 의도 - 당신의 의도는 당신이 마음가짐을 연습함으로써 얻고 자하는 것입니다. 스트레스를 줄이고 감정적 인 균형을 유지하거나 발견 할 수 있습니다.

다른 명상을 시도하십시오 - 인형

다른 명상을 시도하십시오 - 인형

명상 확장이라는 인식은 명상 확장의 중심에 있습니다. Mindfulness 명상 연습. 앉는 자리는 수천 년 동안 명상을 위해 그리고 정당한 이유로 사용되었습니다. 어떻게 평소에 앉아 있니? 당신이 대부분의 사람들과 비슷하다면, 아마 의자 나 소파 뒤에 기대어집니다. 네가 괜찮다면 ...