페이지

2022년 8월 26일 금요일

STEP 20 연산자 오버로드(1)

 이전 단계부터 Variable을 '투명한 상자'로 만드는 작업을 시작했지만 아직 + 와 * 같은 연산자에 대응하는 작업이 남아 있습니다. 예컨대  Variable 인스턴스 a와 b가 있을 때  y = a * b처럼 코딩할 수 있으면 아주 유용한데, 이렇게 확장하는 것이 이번 단계의 목표입니다.


궁극적인 목표는 Variable 인스턴스를 ndarray인스턴스처럼 '보이게 만드는 것입니다. 이렇게 하면 DeZero를 평범한 넘파이 코드를 작성하듯 사용할 수 있어서 넘파이를 사용해본 사람들이 아주 쉽게 배울 수 있습니다.


이제부터 + 와 *연산잘르 지원하도록 Variable을 확장할 것입니다. 그 첫 번째로 곱셈을 수행하는 함수를 구현하려 합니다(덧셈은 11단계에서 구현했습니다). 자, 곰셈을 후행하는 클래스 Mul을 구현해봅시다(Mul은 Multiply의 약자입니다).

댓글 없음: