>  기사  >  Java  >  Java 튜토리얼 객체 지향 및 프로세스 지향

Java 튜토리얼 객체 지향 및 프로세스 지향

巴扎黑
巴扎黑원래의
2017-08-17 11:06:531656검색

프로세스 지향과 객체 지향은 모두 소프트웨어 분석, 설계 및 개발에 대한 아이디어입니다. 이들은 사람들이 소프트웨어를 다양한 방식으로 분석, 설계 및 개발하도록 안내합니다. 초기에는 프로세스 지향적 사고가 있었고, 소프트웨어의 규모가 커지고 문제의 복잡성이 증가함에 따라 프로세스 지향적 사고의 단점이 점점 더 뚜렷해져서 현재의 주류 방식이 되었습니다. 둘 다 소프트웨어 분석, 설계 및 개발의 모든 단계를 거치며 해당 객체 지향을 객체 지향 분석(OOA), 객체 지향 설계(OOD) 및 객체 지향 프로그래밍(OOP)이라고 합니다. C 언어는 대표적인 프로세스 지향 언어이고, 자바는 대표적인 객체 지향 언어입니다.

프로세스 관점에서 문제를 생각할 때 먼저 "어떻게 단계별로 구현할 것인가?"를 생각하고, 그 단계를 단계별로 메소드로 매핑하여 최종적으로 완성합니다. 이는 협업이 많이 필요하지 않은 간단한 작업에 적합합니다. 예를 들어, 운전 방법은 다음과 같이 구현 단계를 쉽게 나열할 수 있습니다.

 1. 자동차 시동 걸기 2. 자동차 기어 넣기 3. 가속 페달 밟기 4. 출발

 프로세스 중심은 다음과 같은 간단한 작업에 적합합니다. 협업이 필요하지 않습니다. 그러나 "자동차를 만드는 방법"과 같은 더 복잡한 질문에 대해 생각해 보면 1234개의 단계를 나열하는 것이 불가능하다는 것을 알게 됩니다. 자동차를 만드는 일은 너무 복잡하고 완성하려면 많은 협력이 필요하기 때문입니다. 이때 객체지향적 사고가 등장했다.

 객체 지향(객체) 사고는 인간의 사고 패턴에 더 가깝습니다. 우리가 가장 먼저 생각하는 것은 "이것을 어떻게 디자인할 것인가?"입니다. 예를 들어, 자동차를 만들 때 우리는 "차를 어떻게 만들 것인가"보다는 "자동차를 어떻게 디자인할 것인가"를 먼저 생각합니다. 이것이 사고방식의 변화입니다.

  1. 객체 지향적 사고로 자동차를 만드는 것을 생각해 보고 자동차가 다음 객체로 구성되어 있음을 확인하세요.

  1. 타이어

  2. 엔진

  3. 자동차 쉘

4. 좌석

5. 앞 유리

 협력을 촉진하기 위해 타이어 공장에 타이어 제조 단계를 완료하도록 요청하고, 엔진 공장에 엔진 제조 단계를 완료하도록 요청했습니다. 이로써 우리는 모두가 자동차를 제조할 수 있다는 것을 알게 되었고 마침내. 동시에 조립하면 효율성이 크게 향상됩니다. 그러나 타이어 공장의 특정 조립 라인 운영에는 여전히 단계가 있으며 프로세스 지향적 사고와 여전히 분리될 수 없습니다.

따라서 객체 지향은 전체 시스템을 파악하고 분석하는 데 도움이 될 수 있습니다. 거시적 관점. 그러나 구현 부분(즉, 각 메서드)에 특정한 마이크로 작업은 여전히 ​​프로세스 중심 접근 방식으로 처리되어야 합니다.

 프로세스 지향과 객체 지향을 대립시켜서는 안 됩니다. 그들은 서로를 보완합니다. 객체지향은 프로세스지향과 분리될 수 없습니다!

 ·객체지향과 프로세스지향의 요약

  둘째, 둘 다 문제를 해결하는 사고방식이자 코드를 구성하는 방식입니다.

  3. 간단한 문제를 해결하려면 프로세스 지향을 사용하면 됩니다.

4. 복잡한 문제를 해결하려면 거시 수준에서는 객체 지향 파악을 사용하고 미시 수준에서는 프로세스 지향을 유지하세요.

 · 객체지향적 사고방식

  복잡한 문제에 직면했을 때, 먼저 문제에서 명사를 찾고, 그 중 어떤 명사를 클래스로 사용할 수 있는지 판단한 후, 그 속성과 메소드를 바탕으로 클래스 간의 관계를 판단합니다. 문제 요구사항에 따라 클래스가 결정됩니다.

Recommendations

 1. 객체지향에는 캡슐화, 상속, 다형성이라는 세 가지 주요 특성이 있는 반면, 프로세스지향에는 상속과 다형성이 없고 프로세스지향 캡슐화는 기능만 캡슐화하는 반면 객체지향은 데이터와 기능을 캡슐화할 수 있습니다. 따라서 객체지향의 장점은 더욱 분명해집니다.

  2. 고전적인 비유: 객체 지향은 밥그릇과 같고, 프로세스 지향은 계란 볶음밥과 같습니다. 덮밥의 장점은 "야채"와 "밥"이 분리되어 있어 밥그릇을 만드는 유연성이 높아진다는 점입니다. 식사가 만족스럽지 않으면 식사를 바꾸고, 요리가 만족스럽지 않으면 요리를 바꾸십시오. 소프트웨어 공학 용어로 보면 '유지관리성'이 더 좋고, '밥'과 '접시' 사이의 결합도는 상대적으로 낮습니다.

위 내용은 Java 튜토리얼 객체 지향 및 프로세스 지향의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.