릴리스 0.1 검토

6308 단어

릴리스 0.1 검토



함께 일할 사람을 찾는 것은 쉽습니다. 슬랙 채널에 링크를 올렸습니다.
Golang에서 작업하는 사람이 몇 명 있다는 사실에 놀랐습니다.

다른 사람의 코드로 작업하기 위해 동일한 작업을 수행하는 몇 가지 다른 방법을 찾았습니다. 사실, 나는 다른 사람들의 코드를 읽는 것을 즐기고 몇 가지 개선 사항을 발견했을 때 흥분했습니다. 누군가가 내 코드를 검토하기를 기다리는 것도 놀랍습니다. 더 나은 프로그래머가 되는 데 도움이 됩니다.

내가 찾은 문제.


  • add go module

  • 프로젝트에 go 모듈 지원을 추가하여 소스 코드를 어디에나 넣을 수 있습니다(내부 GOPATH 뿐만 아니라).
  • remove duplicate links

  • 파일에서 링크를 추출한 후 배열에 중복 링크가 있습니다. 중복 링크를 제거하는 기능을 추가했습니다.

    // remove duplicate strings from a slice of strings
    func removeDuplicate(urls []string) []string {
        result := make([]string, 0, len(urls))
        temp := map[string]struct{}{}
        for _, item := range urls {
            if _, ok := temp[item]; !ok {
                temp[item] = struct{}{}
                result = append(result, item)
            }
        }
        return result
    }
    


  • improve for loops

  • Go의 for 루프는 약간 까다롭습니다. for 루프를 개선하는 까다로운 방법을 찾았습니다.

    i := 0
    for i < len(links) {
        ls := <-channel
        if ls.GetLiveStatus() == false {
            downLinks = append(downLinks, ls.GetURL())
        } else {
            upLinks = append(upLinks, ls.GetURL())
        }
        i++
    }
    // After
    for range links {
        ls := <-channel
        if ls.GetLiveStatus() == false {
            downLinks = append(downLinks, ls.GetURL())
        } else {
            upLinks = append(upLinks, ls.GetURL())
        }
    }
    


    내 저장소의 문제


  • update readme

  • 일부 오타가 수정되었습니다.

  • improve condition

  • // before
    if *version == true {}
    
    // after
    if *version {}
    


    문제를 발견하는 것이 문제를 해결하는 것보다 어렵습니다. 오픈 소스 세계는 즐겁게 일할 수 있습니다.

    좋은 웹페이지 즐겨찾기