Language(99)
-
valid 시 non zero value required 오류
func checkRequired(v reflect.Value, t reflect.StructField, options tagOptionsMap) (bool, error) { if requiredOption, isRequired := options["required"]; isRequired { if len(requiredOption) > 0 { return false, Error{t.Name, fmt.Errorf(requiredOption), true} } return false, Error{t.Name, fmt.Errorf("non zero value required"), false} } else if _, isOptional := options["optional"]; fieldsRequiredByDe..
2018.02.02 -
Review
java 말고 golanginput / output은 동일하게 / export되지 않는 함수면 소문자로 SetValue (X) setValue(O)acet.EntityInfo = setValue(acet.EntityInfo)interface conversionswitch문을 사용할 수 있다. 해당 case의 타입이 들어오면 맞는 case 구문을 타게 된다.ex) Body가 인터페이스 형태 switch acet.Body.(type) {case *xxx.xxxx:case *aaa.xxxx:default : }
2017.10.24 -
test code..반성!
java나 go lang이나 테스트 코드가 있다.테스트 주도 개발이 좋다고 책에서 많이 보았다. 하지만 정작 그러한 책들을 보았음에도 불구하고..간만에 코드를 짜게 되었는데..(그동안 서버 발주부터 셋팅, ACL 신청 등등 이러한 일들을 했다.)테스트 코드를 짜야겠다는 생각을 하지 않은채 코드를 짰고, 테스트도 리퀘스트 부분만 잘들어가는지 대충 확인하고 다되었다고 PR을 날렸다.리뷰의 결과는 창피했다.왜 나는 꼼꼼하게 테스트 코드를 짜면서 테스트를 하지 않았을까?당연..테스트 코드를 짜기가 부담스러웠나보다..또는 단순하게만 테스트 코드를 짜왔을지도 모른다.막상 하려고보니..멍~하다. 자..그럼 이제 무엇을 해야할까?1) 앞으로 계속 두려워하며 쫄아서 피할것인가? OR2) 두려움을 극복하려고 노력할 것인가..
2017.10.13 -
golang Context란?
https://golang.org/pkg/context/ or https://godoc.org/golang.org/x/net/contextPackage context는 마감 시간, 취소 신호 및 기타 요청 범위 값을 API 경계와 프로세스간에 전달하는 컨텍스트 유형을 정의합니다.서버에 들어오는 요청은 컨텍스트를 만들어야하며 서버로 나가는 호출은 컨텍스트를 받아 들여야합니다. 이들 사이의 함수 호출 체인은 컨텍스트를 전파해야하며 선택적으로 WithCancel, WithDeadline, WithTimeout 또는 WithValue를 사용하여 생성 된 파생 된 컨텍스트로 대체해야합니다. 컨텍스트가 취소되면 그 컨텍스트도 파생됩니다. 작성 중~
2017.09.07 -
go lang - Map
go는 변수명 다음에 자료형이 온다. ex) var acet string java는 반대이다. ex) String acet; Map go var 맵명 map[키 자료형]값 자료형 ex) var acet map[string]int 할당은 make 사용! 예제는 아래에 있음. java는 HashMap acet = new HashMap 코드를 보자! 아래의 사이트에서 바로 테스트 해보면 된다. https://tour.golang.org/moretypes/19 package main import "fmt" func main() { // 자바에서는 new가 있다면 go에서는 make로 map을 할당한다. var acet map[string]string = make(map[string]string) acet = m..
2017.07.05 -
golang 정리
https://golang.org/pkg/net/http/ func NewRequest(method, urlStr string, body io.Reader) (*Request, error) { NewRequest는 메소드, URL 및 선택적 본문에 대해 새 Request를 반환합니다. 제공된 본문이 io.Closer 인 경우 반환되는 Request.Body가 body로 설정되고 클라이언트에 의해 닫힙니다. 메소드 Do, Post, PostForm, Transport.RoundTrip.NewRequest는 Client.Do와 함께 사용하기에 적합한 Request를 반환하거나 Transport.RoundTrip. 테스트에 사용할 요청을 만들려면 Server Handler는 다음과 같이 NewRequest 함..
2017.05.18