원형참조항
Circular reference원형 참조는 마지막 객체가 첫 번째 객체를 참조하여 폐쇄 루프를 발생시키는 일련의 참조를 말한다.
언어로
순환 참조는 순환 논리의 논리적 오류와 혼동해서는 안 된다.비록 순환 참조는 종종 도움이 되지 않고, 서로 참조하는 도서 색인의 두 항목과 같은 어떤 정보도 드러내지 않지만, 순환 참조가 반드시 쓸모 없는 것은 아니다.예를 들어 사전의 모든 단어는 다른 단어들로 정의되기 때문에 사전은 궁극적으로 순환 참조여야 하지만 그럼에도 불구하고 사전은 유용한 참고 자료로 남아 있다.순환 참조를 포함하는 문장은 여전히 의미 있을 수 있다.
- 그녀의 남동생은 그녀에게 새끼 고양이를 주었다. 그의 여동생은 그것에 대해 그에게 감사했다.
원형이지만 의미가 없는 것은 아니다.실제로 자기 참조는 아리스토텔레스의 비 모순의 법칙, 즉 근본적인 철학적 공리의 필연적인 결과라고 주장할 수 있다.이 견해에서 자기 참조가 없으면 논리와 수학은 불가능하게 되거나 적어도 유용성이 결여된다.[1][2]
컴퓨터 프로그래밍에서
컴퓨터 프로그래밍에서 하나의 코드 조각이 다른 코드로부터의 결과를 요구할 때 순환 참조가 나타날 수 있지만, 그 코드는 첫 번째 코드로부터의 결과를 필요로 한다.예를 들어, 다음 파이썬 프로그램의 posn과 plus1 두 기능은 순환 참조로 구성된다.[further explanation needed]
반항하다 양반의(k: 인트로) -> 인트로: 만일 k < 0: 돌아오다 플러스1(k) 돌아오다 k 반항하다 플러스1(n: 인트로) -> 인트로: 돌아오다 양반의(n + 1)
위의 예와 같은 순환 참조는 종료 조건이 있는 경우 유효한 결과를 반환할 수 있다.종료 조건이 없는 경우, 순환 참조는 라이브록 또는 무한 루프라고 알려진 상태로 연결되며, 이는 이론적으로 영원히 실행될 수 있다는 것을 의미한다.
반항하다 양반의(k: 인트로) -> 인트로: 돌아오다 플러스1(k) 반항하다 플러스1(n: 인트로) -> 인트로: 돌아오다 양반의(n + 1)
ISO 표준에서 SQL 순환 무결성 제약은 단일 테이블 내에서 암묵적으로 지원된다.다중 테이블 간에는 제약 조건을 지연 가능한 것으로 정의하여 원형 제약 조건(예: 외부 키)이 허용된다(Postgre의 경우 CREATE TABLE 참조).Oracle에 대한 SQL 및 DILERABLE 제약 조건 예제).이 경우 DML 문이 실행되는 시점이 아닌 트랜잭션의 끝에서 제약조건을 점검한다.순환 참조를 갱신하기 위해, 거래가 커밋되면 두 참조를 모두 만족시키는 두 개의 문장이 단일 거래로 발행될 수 있다.
스프레드시트에서
두 셀이 서로 결과를 요구할 때 스프레드시트에서도 순환 참조가 발생한다.예를 들어 Cell A1의 값을 Cell B1의 값에 5를 더하여 얻고, Cell B1의 값을 Cell A1의 값에 3을 더하여 얻으려면 값을 계산할 수 없다.(사양이 A1:=B1+5, B1=A1-5라 하더라도 여전히 원형 참조가 있다.예를 들어 A1=3과 B1=-2는 두 가지 경우를 모두 만족시킬 수 있는 A1과 B1의 다른 가능한 값이 무한히 많기 때문에 두 공식을 모두 만족시키는 것은 도움이 되지 않는다.)
워크시트의 원형 참조는 콜브룩 방정식 및 기타 여러 가지 등식과 같은 암묵적 방정식을 해결하는 데 매우 유용한 기법이 될 수 있으며, 그렇지 않으면 VBA의 지루한 뉴턴-래프슨 알고리즘이나 매크로 사용이 필요할 수 있다.[3]
비교할 수 없는 프로세스와 최종 산출물이 있는 반복 계산 프로세스 간의 순환 참조를 포함하는 프로세스에서 구별해야 한다.후자는 이를 처리할 수 있는 기능이 갖추어지지 않은 스프레드시트에서 실패할 수 있지만 그럼에도 불구하고 여전히 논리적으로 유효하다.[2]
참고 항목
- 인과 관계 – 한 프로세스가 다른 프로세스에 미치는 영향
- 순환 보고 – 단일 소스 데이터에 대한 여러 소스
- 중지 문제 – 지정된 프로그램이 실행을 마칠 것인지 아니면 영구적으로 계속될 것인지를 결정하는 문제
- 내포함수
- Quine(컴퓨팅) – 자가복제 프로그램
- 논쟁 퇴보 – 어떤 명제라도 끝없이 의문을 가질 수 있다는 인식론적 문제
- 자체 참조 – 자신을 가리키는 문장, 아이디어 또는 공식
- 내 버킷에 구멍이 있다 – 어린이 노래
참조
- ^ 테리 A. 오스본, 미국의 외국어 교육의 미래, 그린우드 출판 그룹, 2002년 페이지 31-33 ISBN0-89789-719-6
- ^ a b 로버트 피엥고, 로버트 메이, 지수 및 아이덴티티, 페이지 59-62, MIT 프레스, 1994 ISBN 0-262-56076-3.
- ^ "Solve Implicit Equations Inside Your Worksheet By Anilkumar M, Dr Sreenivasan E and Dr Raghunathan K". Archived from the original on 2009-08-17. Retrieved 2009-06-25..