두 가지 이유로 대답이 복잡합니다.
컴퓨터 과학의 다른 사람들은 "개체"라는 용어를 다르게 해석합니다. 하나는 객체가 함께 패키지 된 일부 데이터와 작업으로 구성되어 있다는 것입니다. 다른 하나는 객체가 전부이지만 "상태"도 가지고 있다는 것입니다. 즉, 그것은 어떤 형태의 변경 가능한 엔티티입니다.
"변화"가 의미하는 것 (그리고 끊임없이 변화함에 따라 "엔티티"가 의미하는 것)과 수학적 설명이 실제로 변화 가능한 실체를 포착하는지와 관련하여 깊은 철학적 문제가 있습니다.
데이터 + 연산 의 의미에서 객체 : 그것은 수학의 표준입니다. 그룹 이론 교과서를 가져 가십시오. 그것은 어딘가에 같은 정의를 가질 것입니다h지( x ) = g엑스지− 1. (이것은 활용 연산자입니다.)h지이 용어에서 "개체"입니다. 일부 데이터가 있습니다 (g) 및 작업 x↦gxg−1. 또는 당신은 쌍을 취함으로써 그것을 더 객관적으로 만들 수 있습니다⟨g,x↦gxg−1⟩ 또는 트리플 ⟨g,x↦gxg−1,x↦g−1xg⟩. 이러한 종류의 "객체"는 람다 추상화와 튜플을 형성 할 수있는 방법이있는 기능적 프로그래밍 언어로 구성 할 수 있습니다. Abadi와 Cardelli의 "개체 이론"은 이러한 종류의 개체를 광범위하게 처리합니다.
와 객체 상태 (또는 객체 그 변화 ) :합니까 수학은 그런 일이? 나는 그렇게 생각하지 않습니다. 나는 전문적인 삶이 아닌 변화하는 것에 대해 수학자의 이야기를 보지 못했습니다. 뉴턴 쓰기x 아마도 변화하고있는 입자의 위치에 대해 x˙변화율에 따라 수학자들은 결국 뉴턴이 말한 것이 함수라는 것을 알아 냈습니다x(t) 실수에서 벡터 공간으로 x˙ 첫 번째 파생물 인 다른 기능이었습니다. x(t) 에 관하여 t. 이로부터 많은 깊이 생각하는 수학자들이 변화가 실제로 존재하지 않으며 당신이 가진 모든 것이 시간의 함수라고 결론지었습니다. 그러나 뉴턴 역학에서 변화 한 것은 위치가 아니라 입자 였습니다. 위치는 순간적인 상태입니다. 수학 자나 물리학자는 입자가 수학적 아이디어 인 척하지 않습니다. 물리적 인 것입니다.
개체와 함께 있습니다. 그것들은 "물리적"이고 상태는 수학적 속성입니다. 이 측면에 대한 좋은 설명은 Abelson과 Sussman의 3 장 컴퓨터 프로그램 의 구조와 해석 의 3 장을 참조하십시오 . 이것은 MIT의 교과서이며 모든 물리학 자에게 완벽하게 잘 이해하는 모든 과학자와 엔지니어들에게 가르칩니다.
입자가 수학적이지 않다고해서 수학적으로이를 처리 할 수는 없습니다. 수학자에게 2 입자 시스템을 모델링하도록 요청하면 즉시 2 개의 기능을 구성하고이를 호출합니다.x1(t) 과 x2(t). 따라서 두 입자는 의미없는 두 지수 (1과 2)로 줄어 듭니다. 이것은 우리가 그 입자가 무엇인지 모르고 신경 쓰지 않는다고 말하는 수학자의 방법입니다. 우리가 알아야 할 것은 그들의 위치가 독립적으로 (또는 개별적으로) 진화한다는 것입니다. 그래서 우리는 두 가지 기능으로 모델링 할 것입니다.
마찬가지로 객체 지향 프로그램을 모델링하는 표준 수학적 방법은 각 객체를 상태 공간에 대한 인덱스로 취급하는 것입니다. 유일한 차이점은 객체가왔다 갔다하고 시스템의 구조가 역동적이기 때문에 각 세계가 기본적으로 인덱스 모음 인 "가능한 세계"모델로 확장해야한다는 것입니다. 객체의 할당 및 할당 해제는 한 세계에서 다른 세계로 이동하는 것을 포함합니다.
그래도 문제가 있습니다. 역학과 달리 객체 상태를 캡슐화 하려고합니다 . 그러나 객체에 대한 수학적 설명은 상태를 온전히 배치하여 캡슐화를 완전히 파괴합니다. "관계형 파라 메트릭"이라는 수학적인 트릭이 있습니다.이 기법을 사용하면 크기를 줄일 수 있습니다. 캡슐화에 대한 개념적인 설명이 아니라 수학적 기법이라는 점을 제외하고는 지금은 다루지 않겠습니다. 캡슐화를 사용 하여 수학적으로 객체를 모델링하는 두 번째 방법은 상태를 미세화하고 관찰 가능한 이벤트로 객체 동작을 설명하는 것입니다. 이 두 모델에 대한 자세한 설명을 위해 Algol-like Languages의 객체 및 클래스 라는 제목의 논문을 참조 할 수 있습니다 .
[참고 사항 추가]
객체의 수학적 토대에 대한 훌륭한 분석은 William Cook의 기사 " 데이터 이해 이해, 다시 방문 " 에서 찾을 수 있습니다 .