스티브 예지 (Steve Yegge)는 최근 보편적 인 디자인 패턴이라고 불리는 것에 interesting blog post이라고 게시했습니다. 거기서 그는 프로토 타입을 클래스 대신 모델링 도구로 사용하는 방법을 자세히 설명합니다. 나는 이것이 상속에 비해 결합이 덜한 방식을 좋아한다. 그러나 이것은 상속 대신 다른 클래스의 관점에서 클래스를 구현함으로써 클래스로도 얻을 수있는 것입니다. 다른 누구도 프로토 타입 사용에 대한 성공 사례를 갖고 있으며 프로토 타입을 사용하는 것이 클래스와 비교하여 유리한 점을 설명하는 데 도움이 될 수 있습니다. 정적 모델링과 동적 모델링이 비슷하다고 생각합니다. 그러나 더 많은 예제를 환영 할 것입니다.프로토 타입 대 클래스
답변
흥미로운 점 중 하나는 프로토 타입 기반 언어를 OO로 쉽게 만들 수 있지만 OO 언어를 프로토 타입 기반으로 만드는 것은 어렵다는 점입니다.
- 알렉스 Arnell의 inheritance.js 부모 '클래스'에 접근 할 수있는 완전한 자바 스크립트 행위 OO를 만드는 코드의 짧고 달콤한 덩어리입니다.
- 동일한 문제에 대한 John Resig의 해결책 중 하나는 http://ejohn.org/blog/simple-javascript-inheritance/입니다.
- Chapter 16 of Programming in Lua은 루아의 객체 지향을 설명합니다. 특히 section 16.2은 좋은 상속 예제를 제공합니다.
당신이 언급 한 것처럼 구성 대 상속을 제외하고는 프로토 타입이 어떻게 될지 완전히 명확하지 않습니다.
프로토 타입 언어는 복잡한 상속 행위를 쉽게 만듭니다. multiple inheritance, mixin과 같은 동작을 구현하거나 한 개체에서 다른 개체에 추가 할 동작을 선택하고 선택하면됩니다.
Wikipedia's article 언급 : "프로토 타입 기반 프로그래밍을지지하는 사람들은 클래스 기반 언어가 분류와 클래스 간의 관계에 우선적 인 초점을 둔 개발 모델을 권장한다고 주장합니다. 반대로 프로토 타입 기반 프로그래밍은 프로그래머에게 고무적인 것으로 보여집니다 몇몇 예제 집합의 동작에 초점을 맞추고 나중에이 객체들을 나중에 클래스와 비슷한 방식으로 사용되는 원형 객체로 분류하는 것에 대해 걱정할 필요가 있습니다. "
프로토 타입 패러다임은 장단점이 없다는 것은 아닙니다. OO가 더 제한적이라면 그것이 선택되기 때문입니다. 조심하지 않으면 모든 융통성이 문제를 일으키는 곳을 알 수 있습니다.
프로토 타입은 상속의 한 형태입니다. 프로토 타입은 다른 클래스에서 상속받은 클래스의 특성 및 동작을 가져 오는 대신 속성 및 동작을 다른 개체에서 직접 상속합니다.
예를 들어 JavaScript와 같이 prototype based language에있는 객체 지향 코드를 확인하십시오.
관심있는 사람들을 위해 NewtonScript은 이중 언어였습니다. 프로토 타입이 있고 수업을 들었습니다. 프로토 타입 또는 두 가지 모두에서 클래스를 상속할지 여부를 선택할 수 있습니다.
- 1. 이 대 프로토 타입
- 2. C++ 클래스 프로토 타입 충돌
- 3. 프로토 타입 클래스 클리어 입력
- 4. 프로토 타입
- 5. 프로토 타입
- 6. 프로토 타입
- 7. 프로토 타입
- 8. 프로토 타입
- 9. 프로토 타입
- 10. setInterval 이벤트로 클래스 프로토 타입 메서드 호출
- 11. div에 포함 된 프로토 타입 선택 클래스
- 12. 정의 자바 스크립트 클래스 프로토 타입 방법
- 13. 프로토 타입 선택자
- 14. AS3 프로토 타입 - 정적 변수입니까?
- 15. 자바 스크립트 - 프로토 타입
- 16. 프로토 타입 변환
- 17. PHP에서의 프로토 타입 상속
- 18. 전 인스턴스화 프로토 타입
- 19. 프로토 타입 메뉴
- 20. 프로토 타입 생성자 전화는
- 21. jQuery를 사용한 프로토 타입
- 22. jQuery/프로토 타입 충돌
- 23. 함수 프로토 타입 선언
- 24. 자바 스크립트 프로토 타입
- 25. 프로토 타입 - 테이블 셀
- 26. 프로토 타입 신경 네트워크
- 27. 프로토 타입 hide/show
- 28. node.js의 프로토 타입 상속
- 29. JavaScript 프로토 타입 draggable
- 30. 프로토 타입 : 이전 개체로?
의미, 프로토 타입 + 대표 == 클래스 + 상속 –
오타 : OOP 클래스 기반 상속 (오리 타이핑의 부분 집합이다) 프로토 타입의 부분 집합 – Ken