Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Go初学者、最初の1週間の学び

 Go初学者、最初の1週間の学び

2022年1月29日 Kyoto.go remote #27 新春 Discord LT 会にて発表したLT資料です。

Presented in Kyoto.go remote #27, 8th Feb. 2022.

Nozomu Ikuta

January 29, 2022
Tweet

More Decks by Nozomu Ikuta

Other Decks in Technology

Transcript

  1. Nozomu Ikuta 29th Jan. 2022
    Goॳֶऀɺ࠷ॳͷ̍िؒͷֶͼ
    What I learned in the
    fi
    rst week

    View full-size slide

  2. ࣗݾ঺հ
    About Me 🙋
    • Twitter/GitHubɿˏNozomuIkuta

    • ϑϩϯτΤϯυΤϯδχΞ

    • Vue.js ೔ຊϢʔβʔάϧʔϓίΞελοϑʢ2022೥౓ʣ

    • Nuxt.js ίϛϡχςΟϝϯόʔ

    • ҰݴɿGitHub Issues͸࠷ߴͷSNSɻ໷த·Ͱ΍Γ͕ͪɻ

    View full-size slide

  3. ͜ͱͷ͸͡·Γ
    Background ✍
    • όοΫΤϯυ΋Ͱ͖ΔΑ͏ʹͳΓ͍ͨ

    • Goྑͦ͞͏ʢesbuildͷ୆಄ͳͲʣ

    • Go Language Speci
    fi
    cation ྠಡձͷଘࡏ

    View full-size slide

  4. Day 1 - 3
    The Go Programming Language Speci
    fi
    cation

    View full-size slide

  5. GoͰ͖ΔΑ͏ʹͳͬͯͳ͍
    🤷

    View full-size slide

  6. Day 4 - 5
    Research

    View full-size slide

  7. Node.js => GoͰ࿅श͠Α͏
    🧑💻

    View full-size slide

  8. commitlint
    Tool Spec 📄
    • GitίϛοτϝοηʔδͷϦϯλʔ

    • Conventional Commits ͷtypeͱscopeΛࢦఆ͢ΔΑ͏ʹϛχϚϜʹͭ͘Δ

    • ֎෦ϑΝΠϧͰઃఆ͍ͤͨ͞

    • YamlಡΈࠐΈʢಡΈࠐΉ͚ͩͰ͜ͷखؒʁʣ

    • Go ͷ plugin packageΛ࠾༻

    • ࢀߟɿGo ੡ CLI ʹϓϥάΠϯػߏΛ࡞Δํ๏nબʢZennʣ

    View full-size slide

  9. Day 6 - 7
    Implementation

    View full-size slide

  10. ܕΤϥʔ
    De
    fi
    ned Types 🛡
    • `func ([]string) []string` Λ `type GetterFunc func ([]string) []string` ʹ·ͱΊͨ

    • Build͕௨Βͳ͍

    • The Go Programming Language Speci
    fi
    cationΛࢥ͍ग़͢

    • The new type is called a de
    fi
    ned type. It is di
    ff
    erent from any other type,
    including the type it is created from.

    View full-size slide

  11. ʮΘ͔Βͳ͍͕͜͏͢Δͱಈ͘ʯ͕ͳ͘ͳΔ
    👨🎓

    View full-size slide

  12. ຊ೔ͷ·ͱΊ
    Summary 💡
    • ݁ہॻ͔ͳ͍ͱͰ͖ΔΑ͏ʹͳΒͳ͍

    • ΤϥʔΞϯυτϥΠΞϧ

    • ͭ͘Δ΋ͷ͕ͳ͍ͳΒɺϙʔςΟϯά͕͓͢͢Ί

    • εϖοΫ͸αϒηοτ͔Β͸͡ΊΒΕΔ

    • The Go Programming Language Speci
    fi
    cation͸ಡΜͩํ͕͍͍

    • ಈ͔ͳ͍ίʔυͷWhyΛࣗྗղܾͰ͖Δ

    View full-size slide