Slide 1

Slide 1 text

Togoo : Go Ͱ CLI Λ࡞ͬͯ ֶΜͩ͜ͱ 2016-02-15 ͝΋͘ձ #3

Slide 2

Slide 2 text

• @kakakakakku • Yoshiaki Yoshida • CyberAgent Crowd Funding, Inc. • Makuake • Ruby, DevOps, Certified Scrum Master • http://kakakakakku.hatenablog.com/ • https://github.com/kakakakakku

Slide 3

Slide 3 text

• ࠷ۙ Go ʹೖ໳ͨ͠ʢϏΪφʔʣ • ۀ຿Ͱ͸࢖ͬͯͳ͘ݸਓͰษڧத • ͝΋͘ձ օۈ৆ʂ

Slide 4

Slide 4 text

• A Tour of Go Λࢼͨ͠ • https://go-tour-jp.appspot.com/list • Θ͔ͬͨΑ͏ͰΘ͔ͬͯͳ͍ • ࣮ࡍʹࣗ෼ͰԿ͔࡞ͬͯΈΑ͏ͱࢥͬͨ

Slide 5

Slide 5 text

https://www.flickr.com/photos/kellymccarthy/7437621330 ΦϑΟεͷص͕ ෇ᝦͩΒ͚ͳ͜ͱʹؾ෇͘

Slide 6

Slide 6 text

https://www.flickr.com/photos/kellymccarthy/7437621330 ΦϑΟεͷص͕ ෇ᝦͩΒ͚ͳ͜ͱʹؾ෇͘ • λεΫ؅ཧʹॻ͘·Ͱ΋ͳ͍ࡉ͔ͳλεΫ • ;ͱࢥ͍ग़ͨ͠λεΫ • ʮௐ΂ͱ͍ͯʂʯͱৼΒΕͨλεΫ

Slide 7

Slide 7 text

Togoo : Simple CLI TODO Tool https://github.com/kakakakakku/togoo τ Ρ ʔ ΰ ʔ

Slide 8

Slide 8 text

Togoo Usage • togoo init ( -f ) • togoo add • togoo update • togoo done • togoo delete • togoo list ( -a ) ʢσʔλ͸ SQLite ʹొ࿥ʣ

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

ֶΜͩ͜ͱͳͲ

Slide 11

Slide 11 text

؀ڥߏங͠Α͏ • vim & IntelliJ Ͱ։ൃ؀ڥΛ੔͑ͨ • golint = Ոఉڭࢣ • https://github.com/golang/lint • goimports • https://github.com/bradfitz/goimports • Travis Ͱ CI ͯ͠όοδΛషΔ

Slide 12

Slide 12 text

͓࡞๏ΛֶͿ • Go Code Review Comments • https://github.com/golang/go/wiki/CodeReviewComments • Effective Go • https://golang.org/doc/effective_go.html • Go for gophers • http://talks.golang.org/2014/go4gophers.slide#1

Slide 13

Slide 13 text

ύοέʔδΛֶͿ • cli.go : https://github.com/codegangsta/cli • gcli : https://github.com/tcnksm/gcli • go-sqlite3 : https://github.com/mattn/go-sqlite3 • go-homedir : https://github.com/mitchellh/go-homedir • Table Writer : https://github.com/olekukonko/tablewriter table := tablewriter.NewWriter(os.Stdout) table.SetHeader([]string{"No", "Title", "Status"}) table.SetBorder(true) table.AppendBulk(data) table.Render()

Slide 14

Slide 14 text

gcli new -c add -c list mytodo ←ࣗಈͰ਽ܗΛ࡞ͬͯ͘Εͯ ←go build ͢Δͱ ←͙͢ಈ͘ ίϚϯυఆٛ CLI ໊

Slide 15

Slide 15 text

“Good CLI” Λ࡞ΔͳΒඞಡ https://speakerdeck.com/tcnksm/komandorainturunituiteyu-rutokinipu- falseyu-rukoto-number-yapcasia “1ͭͷ͜ͱʹूத͍ͯ͠Δ” “௚ײతʹ࢖͑Δ” ͳͲ…

Slide 16

Slide 16 text

ϙϞυʔϩςΫχοΫ࿈ܞ ࣗݾྲྀϙϞυʔϩΛ࣮ફ͍ͯ͠Δ࿩ - kakakakakku blog http://kakakakakku.hatenablog.com/entry/2016/01/30/233353

Slide 17

Slide 17 text

• ϙϞυʔϩςΫχοΫ࿈ܞͰ1೔த࢖͏ • ຖேλεΫΛચ͍ग़͢ • togoo add … • togoo add … • togoo add … • ϙϞυʔϩ͝ͱʹλεΫΛ׬ྃ͢Δ • togoo done … • togoo done … • togoo done …

Slide 18

Slide 18 text

• ࣗݾྲྀϙϞυʔϩ • ۀ຿֎ͷ OSS ׆ಈͳͲ΋ togoo add ͢Δ • ࡶ຿΋શͯ togoo add ͢Δ • ͋͑ͯίϯςΩετεΠονΛى͜͢ • ʮऩ֭చݮͷ๏ଇʯ

Slide 19

Slide 19 text

·ͱΊ

Slide 20

Slide 20 text

• Go ϏΪφʔͰ΋ CLI Λ࡞ΕΔʂʂʂ • υοάϑʔσΟϯά͢Δॏཁ͞ • OSS Ͱެ։͢ΔͱϓϧϦΫΛ΋Β͑ͨΓ͢Δ • ײಈ...ʂ