인터페이스 타입은 입력이든 리턴이든 걍 타입 assertion 해서, 되게 만들며는 끝인뎅 ㅇㅂㅇ
문제가 모에영 ㅇㅂㅇ?
꿈돌리(edp1096)2021-06-12 14:33
답글
외부패키지가 인터페이스를 인자로 받으면 제가 그 인터페이스를 구현해야 하잖아요
예를들면 io.Reader 인터페이스를 구현하려면 Read([]byte) (int, error) 함수가 있어야 하는데
이 Read 함수는 사용자인 제가 만드는건가요? 타입이 여러개 있으면 그 타입마다 저 Read 함수를 만들어줘야하는건가요? ㅠㅠ
https://gall.dcinside.com/board/view/?id=programming&no=872954
인터페이스 타입은 입력이든 리턴이든 걍 타입 assertion 해서, 되게 만들며는 끝인뎅 ㅇㅂㅇ 문제가 모에영 ㅇㅂㅇ?
외부패키지가 인터페이스를 인자로 받으면 제가 그 인터페이스를 구현해야 하잖아요 예를들면 io.Reader 인터페이스를 구현하려면 Read([]byte) (int, error) 함수가 있어야 하는데 이 Read 함수는 사용자인 제가 만드는건가요? 타입이 여러개 있으면 그 타입마다 저 Read 함수를 만들어줘야하는건가요? ㅠㅠ
https://github.com/practice-golang/bookshelf/tree/master/db
덕타이핑으로 가신다묜 만드시능거 맞고영 ㅇㅂㅇㅋ 위 링크에서 db.go에 덕타이핑으로 인터페이스 함수 선언한 거랑 mysql.go , postgres.go, sqlite.go, sqlserver.go 함 보세영 ㅇㅂㅇ
import로 불러들인 라이브러리나 기본 패키지 함수를 덮어쓰는거도 가능 해여 ㅇㅂㅇ 필요한게 뭔지 몰라서 걍 생각나는 대로 다 말씀해드림 ㅇㅂㅇ
우왕 감사함니다 ㅠㅠ 읽어보고 모르는거 있으면 질문할게요 복받으세요!!