다음 시나리오는 여러 번 발생했습니다.
특정 문제를 해결하는 알고리즘을 프로그래밍했습니다. 제대로 작동하고 올바른 솔루션을 찾습니다. 이제 알고리즘에 "솔루션을 얻는 방법에 대한 자세한 설명을 작성하십시오"라고 알리는 옵션이 필요합니다. 내 목표는 온라인 데모, 자습서 클래스 등에서 알고리즘을 사용할 수 있도록하는 것입니다. 설명 없이도 실시간으로 알고리즘을 실행할 수있는 옵션이 필요합니다. 좋은 디자인 패턴은 무엇입니까?
예 : 최대 공약수를 구하기 위해이 방법을 구현한다고 가정 합니다. 현재 구현 된 메소드는 정답을 리턴하지만 설명은 없습니다. 메소드가 다음과 같이 조치를 설명하는 옵션을 갖고 싶습니다.
Initially, a=6 and b=4. The number of 2-factors, d, is initialized to 0.
a and b are both even, so we divide them by 2 and increment d by 1.
Now, a=3 and b=2.
a is odd but b is even, so we divide b by 2.
Now, a=3 and b=1.
a and b are both odd, so we replace a by (a-b)/2 = 1.
Now, a=1 and b=1.
a=b, so the GCD is a*2^d = 2.
콘솔과 웹 기반 응용 프로그램 모두에 쉽게 표시 될 수 있도록 출력을 반환해야합니다.
설명이 필요하지 않을 때 알고리즘의 실시간 성능을 손상시키지 않으면 서 필요한 경우 설명을 제공하는 좋은 패턴은 무엇입니까?