並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 5136件

新着順 人気順

golangの検索結果241 - 280 件 / 5136件

  • golang の httptest パッケージを使う - at kaneshin

    この記事は Go Advent Calendar 2016 - Qiita の2日目の記事です。 Golang については書きたいことがたくさんあるので、Go Advent Calendar 2016 その4が出てきても良いのではと思っている次第です。(空いていればいつでも書きます) さて、今回、この記事では Golang で書かれた Web アプリケーションのリクエストのユニットテストについて解説しようと思います。 github.com 1. Testing HTTP Handler 検証のために、ただ単に "pong" を返却する pingHandler と、URLクエリから値を取得してそのまま返却する echoHandler の2つを定義します。 ー pingHandler // pingHandler returns just "pong" string. func pingHan

      golang の httptest パッケージを使う - at kaneshin
    • Golang でスマートに標準出力テストを行う

      Golang で標準出力テストの方法の調査 最近Golangで標準出力をテストする際にどのような方法を取れば良いのか情報も少なく、しばらく迷走していたので、ここで一旦メモとしてまとめておく。 標準出力をテストする方法を模索した結果 今回調査した方法は主に以下の2つ os.Pipe() を駆使して出力先を切り替えて値をキャプチャする Testable Examples を利用する os.Pipe() を駆使して出力先を切り替えて値をキャプチャする まず初めに、標準出力を受け取る関数を定義して、出力先を切り替えて値をキャプチャする方法が妥当であろうと考え、以下のような共通関数を定義して呼び出すことにしました。 func PickStdout(t *testing.T, fnc func()) string { t.Helper() backup := os.Stdout defer func(

        Golang でスマートに標準出力テストを行う
      • Golang: Convert JSON to Struct

        Golang: Convert JSON in to a useful struct. Raw JSON Input { "example": { "from": { "json": true } } } Go Struct Output package main type MyJsonName struct { Example struct { From struct { JSON bool `json:"json"` } `json:"from"` } `json:"example"` } Notes: Also supports loading from remote json via the src param. Example: http://json2struct.mervine.net?src=http://json2struct.mervine.net/example.js

        • Big Sky :: Golang 1.4 で導入される generate を一足早く試してみる

          先日、golang の開発リポジトリに generate が入りました。 Go generate: A Proposal The go build command automates the construction of Go programs but sometimes preliminary processing is required, processing that go build does not support. https://docs.google.com/document/d/1V03LUfjSADDooDMhe-_K59EgpTEm3V8uvQRuNMAEnjg/edit 皆さんが期待している様な物なのかそうでないのか分かりませんが、ひとまずこの提案書を見る限り 使うのはライブラリユーザではなくライブラリ作者 go build で自動で generate してくれる

            Big Sky :: Golang 1.4 で導入される generate を一足早く試してみる
          • Golangを用いた様々な計算の高速化 - Qiita

            0.はじめに 競技プログラミングでは制限時間内に解を求めるようなプログラムが求められます。競技プログラミングでなくとも、必要に応じてプログラムを高速化したい場面は無数にあります。逐次処理のプログラムを並行化することで処理を高速化する、並行プログラミング/マルチスレッドプログラミングを活用できる機会は多いのではないでしょうか。1 本記事は Golang で逐次処理で計算できる処理を並行化/高速化することで、並行処理の威力や Golang の並行化の書きやすさを体感することを目標とします。 1.様々な計算の高速化 Go at Google: Language Design in the Service of Software Engineering にもあるように Golang の並行処理は CSP をベースにしており、並行処理が書きやすい言語と言えます。 Golang に組み込まれている g

              Golangを用いた様々な計算の高速化 - Qiita
            • 実践的なGAE/Goの構成について #golang #gcpja - Qiita

              2016年のGCPはFirebaseのアップデートから始まって東京リージョン開設と色々進化がありました。GAEよりはその他のGCPのサービスに注力していたのかなという印象です。 でもアジア初のGAEが日本というのは大きなニュースでした! 2017年にもどんどんデータセンターを増やすみたいで色々楽しみですね。 ちなみにGAEのChannel APIは来年シャットダウンされるらしいです。移行先としてリアルタイムの通信はFirebaseを使うのが公式のオススメのようです。 そう言えばGoogle Cloud PlatformもGoogle Cloudに改名してましたけどGCだと口頭でもわかりにくいしググラビリティも良くないのでGCPって言っていきたいです。 (追記: GCPでいいようです) そして本題の今年のGCPのアドベントカレンダーでは、皆悩んでいるらしいGAE/Goの構成についてです。 前

                実践的なGAE/Goの構成について #golang #gcpja - Qiita
              • golang で JSONPath 的にデータ取り出したいときは @mattn_jp の go-scan が便利 - tokuhirom's blog

                golang で net/http とってきて JSON を parse して所定のキーを取り出すプログラムを書きたかった。 こういう場合、JSONPath とか使って書きたいのだが、JSONPath が完全にサポートされている go のライブラリは見当たらなくて、mattn_jp さんが JSONPath 書こうとして途中でやめた gist がひっかかってくる程度。あとなんか yasuyuky/jsonpath というのもあるのだが、これはいわゆる JSONPath ではない。 JSONPath なくてマジ不便ヤンケ、と思っていたが、mattn_jp さんが go-scan というライブラリを書いていた。 golangのjson、型を作るかmap[string]interface{}にしてキャストするしかなくて最初はgolang面倒臭いなって思ってたけど小規模なら後者で十分だしそれ以上の

                • cgoでGolangとC++ライブラリをリンクするとき、何が起きているのか

                  関東も秋が深まり、「紅葉を見にいこうよう」と言ってスベるシーズンがやってきました。みなさんいかがお過ごしでしょうか、れもんです。 さて、自社サイトでGoやるよって発表したので最近はずっとGoを書いているのですが、ついに難題がやってきました。C++で書かれたライブラリをGoで使うというやつです。今日は、GoからC++のライブラリを使おうとするときに何が起きているのかという話と、それゆえにこのオプションを指定するとドツボにはまるのでやめた方がいいよという話です。 GoからC++を使うときの基本的な考え方はRubyとかPerlでC++のライブラリを使うときと同じです。なので、いつものセオリーでやってみることにしました。まぁC++なら素直にSWIG使えよって話もあるんですが、何事も最初は挑戦だってことで手で書きます。 そのいつものセオリーとは何かというと、C++のライブラリをCインタフェースで使え

                    cgoでGolangとC++ライブラリをリンクするとき、何が起きているのか
                  • Big Sky :: golang から簡単に俳句や短歌を検出出来るライブラリ go-haiku を書いた。

                    最近、俳句が流行ってますよね。 どうしても golang から簡単に俳句を検出する必要があったので、作ってみました。 mattn/go-haiku · GitHub https://github.com/mattn/go-haiku インストールは以下の様に簡単。ただし kagome という形態素解析ライブラリを使っており辞書を static にリンクするのでコンパイルは凄く遅いです。 $ go get github.com/mattn/go-haiku/cmd/haiku 使い方としてはまず引数 $ haiku あぁ柿くへば鐘が鳴るなり法隆寺 柿くへば 鐘が鳴るなり 法隆寺 そして標準入力 $ cat README.md | haiku 古池や 蛙飛び込む 水の音 さらに URL から $ haiku -u "https://ja.wikipedia.org/wiki/ハノイの塔" 中央

                      Big Sky :: golang から簡単に俳句や短歌を検出出来るライブラリ go-haiku を書いた。
                    • 【第2回】Go言語(Golang)入門~Firestore導入編~ – 株式会社ライトコード

                      Firestoreを利用してみるこれから何を書いていくか…? 迷ったのでTwitterでアンケートを取ってみました! 今日入門編書いたけど、次のGolangの記事どんなのがいいかな — 笹のり (@sasa_nss_app) September 5, 2019 結果、「Fire Storeを使ったNoSQLの何か」が1位に! 今回は、Firestoreでなにかやってみようかと思います! Firestoreとは? FirebaseやGCPが提供しているサービスの1つで、いわゆるNoSQLのクラウドデータベースです モバイルアプリケーションなどでは、各ローカルにデータベースを持ったりすることも多いですが、API側でデータを保存することも多いはずです。 本来ならば自分たちでデータベースを用意し、APIとしてのエンドポイントを用意しなければいけません。 しかし、Firestoreを利用するとGUI

                        【第2回】Go言語(Golang)入門~Firestore導入編~ – 株式会社ライトコード
                      • golangでビデオアルバムアプリを作った - write ahead log

                        golangで小さいツールはいろいろ書いてみたけどWebアプリも書いてみようということで作ってみた. github.com 正直途中から飽きてきて,やっつけで作った感が否めない. ある程度機能作って書き直していこうと思っていたけど,ある程度の機能さえ作っていない. 何ができるアプリか ビデオを登録して, 見れます. 説明もつけれます. それだけです. (ログインとかヘルプとかリンクつけてみましたが,ハッタリです) テスト動画にはNHKのクリエイティブライブラリを使わせてもらいました. ライブラリとか 今回は自分に縛りを課していて, サーバサイドは標準ライブラリのみで実装している. (SQLのDriverだけはmattn/go-sqlite3を利用.twtyといいid:mattnさんには感謝.) アプリ自体もSPAとかじゃなくてベーシックなWebアプリ. golangだとWebAPI実装とか

                          golangでビデオアルバムアプリを作った - write ahead log
                        • Rebuild: 42: When in Golang, Do as the Gophers Do (lestrrat)

                          Rebuild A Podcast by Tatsuhiko Miyagawa. Talking about Tech, Software Development and Gadgets. 0:00 miyagawa: 今日で2回目だよね、これ出てもらうの。 lestrrat: 2回目ですね。 miyagawa: lestrrat さんこと、牧さんです。 lestrrat: 牧です。よろしくお願いします。 miyagawa: 牧さんといえば、前出てもらったときも Perl の関係の YAPC とかでお馴染みだと思うんですけど。最近、GitHub とか Twitter とかの活動状況見てると、別のことをずっとやっていそうな雰囲気がすごいあってですね。それは何かというと、Go、Golang ですね。で、結構その辺の話を他のゲスト、例えば typester さんのときとかにちょこっと話したりした

                            Rebuild: 42: When in Golang, Do as the Gophers Do (lestrrat)
                          • Introduction · Build web application with Golang

                            Go Web プログラミング Webプログラミングが好きでGo webプログラミングを書きました。皆さんに気にいってもらえれば幸いです。

                            • 【第3回】Go言語(Golang)入門~Firestoreデータ操作編~ – 株式会社ライトコード

                              package main import ( "context" "log" firebase "firebase.google.com/go" "google.golang.org/api/option" ) func main() { // 初期化 ctx := context.Background() sa := option.WithCredentialsFile("path/to/serviceAccount.json") app, err := firebase.NewApp(ctx, nil, sa) if err != nil { log.Fatalln(err) } client, err := app.Firestore(ctx) if err != nil { log.Fatalln(err) } // データ追加 _, _, err = client.Collecti

                                【第3回】Go言語(Golang)入門~Firestoreデータ操作編~ – 株式会社ライトコード
                              • Big Sky :: Windows でも色付きでログが出せる golang のライブラリ「go-colorable」書いた。

                                golang には logger が星の数ほどあるのですが go言語におけるロギングについて — さにあらず コマンドラインオプションについて 分かり辛いので、僕の分かった事だけをメモしておきます。 ログの出力処理は glog.go#output を読めば大体分かります。 -logtostderr これを指定... http://blog.satotaichi.info/logging-frameworks-for-go その殆どがエスケープシーケンスを使って色を出しており、Windows で動かすと残念な表示になる物ばかりでした。 まさかログに色を付けたいという理由だけで ansicon を使うのは悲し過ぎるし、そもそも「ansicon 使ったら負けだと思ってる」ので、go-colorable というライブラリを書きました。 golang の logger はその殆どが標準パッケージの

                                  Big Sky :: Windows でも色付きでログが出せる golang のライブラリ「go-colorable」書いた。
                                • Big Sky :: golang で slim テンプレートエンジン書いてる。

                                  « Bash on Ubuntu on Windows の最高の端末環境を教えてやるからちょっと来い。 | Main | Golang で Windows の DLL を作る方法 » 「みんなのGo言語」が本日発売となりました。 現在、プログラミング言語のカテゴリで1位の様です。めでたい。 僕も執筆に参加させて頂いたので興味ある方はぜひ読んで欲しいです。 さて最近の僕がGo言語で何を書いていたかというと GitHub - mattn/go-slim: Slim Template Engine for golang Rslim template engine for golang https://github.com/mattn/go-slim slim template の golang 版です。忙しくてまだ完成はしていないんですが、ちょっとした物であれば使えるレベルまで出来ていると思って

                                    Big Sky :: golang で slim テンプレートエンジン書いてる。
                                  • 『Writing An Interpreter In Go / Go言語でつくるインタプリタ』 #golang - razokulover publog

                                    Writing An Interpreter In Goという本を読んだ。 この本はMonkeyという言語のインタプリタをGo言語で実装するという内容。 全編英語だが、200ページほどだし語り口も面白くてわかりやすいので読みやすい。 流れとしては大きくLexer・Parser・Evaluaterの章に分かれていて、それぞれ字句解析〜抽象構文木〜評価器をGoの標準機能だけで実装していく感じ。 Parserの部分ではyaccなどの既存ツールを使わずにPratt ParserというJS Lintでも使われている手法を用いて実装していくところが特に面白かった。 Pratt Parserについてはググってもあんまり情報が出てこなかったけど、いくつか英語のエントリがあって特に下記のPythonで解説してくれてるやつがわかりやすかった。 Top-Down operator precedence pars

                                      『Writing An Interpreter In Go / Go言語でつくるインタプリタ』 #golang - razokulover publog
                                    • golang でのクロスコンパイルの留意事項 — KaoriYa

                                      golang (for Windows) でクロスコンパイルする際にハマったポイントと、 解決方法を紹介します。 TL;DR golang のクロスコンパイルを準備する場合には、以下の点に留意してください。 (Windows のみ) gccは32ビット版か64ビット版か、使いたい方を正しく選択する 2つ以上の環境へクロスコンパイルする場合には、make.bat/make.bash 実行時に --no-clean を指定する クロスコンパイルの準備をする golang を用いるとクロスコンパイルが容易なことはよく知られています。例えば、Windows上のgolangであっても、OSX向けのバイナリを生成したり、EdisonやRaspberry Pi用のバイナリを生成できたりするのです。ただし、以下に示す、ちょっとした事前準備が必要です。 環境変数 GOOS, GOARCH を設定し %GOR

                                      • Google App Engine for Go のローカルサーバでデバッグをする #golang #GAE - Qiita

                                        はじめに Google App Engine for Go (GAE/Go) を使っていて、ローカルでデバッグがしたくなることがあるかと思います。 Goにはいくつかデバッガがあり、IDEが対応しているものもあります。 ここでは Delve というデバッガを使ってデバッグする方法を紹介します。 Delveは動いているGoのプロセスにアタッチしてデバッグすることができます。 そのため、GAE/Goのローカルサーバのプロセスにもアタッチしてデバッグすることができます。 しかし、GAE/Goのローカルサーバのプロセスは、複数動いていたり、切り替わったりするため、一筋縄ではいきません。 ここでは、以下の記事を基に、ターミナル上でローカルサーバのデバッグをやってみます。 Debugging Golang Appengine module with Visual Studio Code Delveのイン

                                          Google App Engine for Go のローカルサーバでデバッグをする #golang #GAE - Qiita
                                        • tcnksm/gcli を使った golang によるコマンドライン・ツール開発について - Qiita

                                          今回は「はじめての Go 言語 (on Windows) その10」の余録。 「はじめての Go 言語 (on Windows) その10」で tcnksm/gcli を紹介したけど,この tcnksm/gcli を使って cli パッケージの感想(評価までは行かない)を書いてみようと思う。なので tcnksm/gcli がサポートしていない cli パッケージは今回は対象外。 tcnksm/gcli がサポートする cli パッケージは以下のとおり。 flag codegangsta/cli mitchellh/cli Like Go command pattern flag は標準パッケージである。「Like Go command pattern」はパッケージではないのだが, Go コンパイラ実装パターンに似たコードを出力してくれる。 一言感想としてはこんな感じ。 flag サブコマン

                                            tcnksm/gcli を使った golang によるコマンドライン・ツール開発について - Qiita
                                          • 【翻訳】【Golang】標準的なパッケージのレイアウト - AllIsHackedOff

                                            Golangレベルアップしたいので色々な記事を翻訳して整理してみようと思った(会社でもそういう試みをやっているので真似っこです) Standard Package Layout — Medium vendoring、Generics。Goコミュニティではこれらは大きな問題とみなされてきた。そしてほとんど言及されることのないもう一つの問題がある。アプリケーションのパッケージのレイアウトだ。 私がこれまで開発してきたGoアプリケーションは、「自らのコードをどう構造化すればよいのか?」という問題に対してそれぞれ異なる答えを出してきた。すべてを1つのパッケージに押し込めたアプリケーションもあれば、型やモジュールごとにグループ化したアプリケーションもある。チーム全体で一貫した良い戦略がなければ、コードはアプリケーションの種々のパッケージにとっちらかってしまうだろう。われわれは、Goアプリケーションの

                                              【翻訳】【Golang】標準的なパッケージのレイアウト - AllIsHackedOff
                                            • Yet Another JSON な json5をgolangでparseできる奴を作った - from scratch

                                              このエントリは Go Advent Calendar 2014 の記事です。 さて、僕はJSONSchemaで疲弊してたんですが、主に疲弊してた理由としてはJSONの表現力不足(ケツカンマ許さない、コメントかけない等)とJSONSchema Validatorで不正な値があった時の情報量の少なさでして、JSONの表現力不足に関しては皆さんYAML使ったりして色々解決してるとは思います。 そこで自分もYAMLではなく、JSON5使って解決しようと考えてgolangで実装してみました。 JSON5の詳細に関してはこちらのエントリを参考にされると良いかと思います。 普通にjson5をインストールする インストールは簡単。 $ brew tap yosuke-furukawa/json5 $ brew install json5そんで、こんな感じのjson5ファイルを用意して、 // This i

                                                Yet Another JSON な json5をgolangでparseできる奴を作った - from scratch
                                              • Gorilla, the golang web toolkit

                                                What is Gorilla web toolkit?A helpful toolkit for the Go programming language that provides useful, composable packages for writing HTTP-based applications. Packages gorilla/muximplements a request router and dispatcher for matching incoming requests to their respective handler.

                                                • Big Sky :: Re: GoLangでJavaのenumっぽいライブラリ作った話

                                                  « ソースに一行追加するだけですべての HTTP 通信が環境変数指定のプロキシではなくIEの設定になるモジュールを書いた #golang | Main | golang で vimgirl bot を書いた。 » GoLangでJavaのenumっぽいライブラリ作った話 - おいぬま日報 なんとかなるわけなんだけど、これを毎回書くのは面倒なので... もっと良いやり方があったらぜひ教えて欲しいところです。 http://oinume.hatenablog.com/entry/introducing-goenum golang でユーザ型の値を文字列化する場合 Stringer というインタフェースを実装します。具体的には func (l Lang) String() string { switch l { case Go: return "Go" case Python: return "

                                                    Big Sky :: Re: GoLangでJavaのenumっぽいライブラリ作った話
                                                  • Golang + echoなREST APIサーバで、テスト実行時に自動でAPIドキュメントを生成できるようにする - 一から勉強させてください

                                                    最近、Golang (+echo) で REST API サーバを開発する機会があったのですが、テストを書いたら API ドキュメントを自動生成するような仕組みを作るために試行錯誤したのでメモです。 方針 API ドキュメントの生成にはtest2docを利用 テストを実行すると API Blueprint 形式でファイルを自動生成してくれそう 該当するメソッドの上にコメントを書くことで最低限の説明は記述できそう README には gorilla/muxと julienschmidt/httprouterのサンプルしか載っておらず echoでうまく動くかは試してみるしかなさそう テストから生成された .apibファイルをaglioみたいなツールにかませば HTML ファイルとして API ドキュメントができそう プロジェクト構成 github.com/danimal141/rest-api

                                                      Golang + echoなREST APIサーバで、テスト実行時に自動でAPIドキュメントを生成できるようにする - 一から勉強させてください
                                                    • Big Sky :: ruby と C++ と golang で gRPC のベンチマークを取ってみた。

                                                      « Protocol Buffers を利用した RPC、gRPC を golang から試してみた。 | Main | Vim 上のファイラを NERDTree から dirvish に乗り換えた。 » 先日、Google が開発しているリモートプロシージャコール、gRPC を golang から使うチュートリアルを書きましたが Big Sky :: Protocol Buffers を利用した RPC、gRPC を golang から試してみた。 http://mattn.kaoriya.net/software/lang/go/20150227144125.htm 今日は ruby と C++ から触ってみたいと思います。はじめに ruby の方ですが、Ruby 2.2.0 でビルドする事が出来ません。どうしても Ruby 2.2.0 から試したい人は、以下の PR にあるパッチを適

                                                        Big Sky :: ruby と C++ と golang で gRPC のベンチマークを取ってみた。
                                                      • 【Golang】VSCodeで自動生成されるテストコードをカスタマイズする - magamingのブログ

                                                        こんにちは。Goのテスト、書いていますか? 私はめちゃめちゃ書いています。 VSCodeに拡張機能(vscode-go)を入れることで、テストコードを自動生成することができることを最近知ったのですが、これがとても便利です。 使い方は以下の記事でまとめられています。 kdnakt.hatenablog.com これはめちゃめちゃ便利なのですが、デフォルトだと少し物足ないところがあったので、カスタムテンプレートを作成しました。 GitHub - Magaming/gotests-templates vscode-goは内部でgotestsを使っているので、それ用のテンプレートを用意している形です。 具体的には次のようなことをしています。 go-cmpを使う 標準だと reflect.DeepEqualで比較しているが、これだとtime.Time型を含んだ構造体の比較とかで死ぬ go-cmpは、

                                                          【Golang】VSCodeで自動生成されるテストコードをカスタマイズする - magamingのブログ
                                                        • Golangでインタプリタ作ってみた - Qiita

                                                          突然ですが、先日行われた学生向けのコンテストにおいてGolang製インタプリタ(Copal)で参戦しました。 当日の発表では、Gopher君でなんとか笑いを取ることが出来たので、Gopher君に感謝です。 質疑応答で色々と言われるかなと覚悟してましたが、無難な質問で助かりましたw。 後ほどTwitterを少し拝見すると「Golangのラッピング」じゃない?と思われた方もいました。 はい、そのとおりです。 開発期間がアレなんで、現状が精一杯でGolangと差別化する機能を搭載できませんでした。 あと、テストコード・ベンチマークも1行も書いてないという出来なので、正直恥ずかしいです。 (想定はしていましたが、質疑応答でここらへん聞かれなくてよかった…。) さて、前置きはここまでにして、Golang歴半年+αの私が大学のテスト期間の空き時間を使って2,3週間ほどで作ってみたインタプリタをちょっと

                                                            Golangでインタプリタ作ってみた - Qiita
                                                          • Golangでエレガントだと思うこと - 日々是鍛錬

                                                            @kana さんとハッカソンしていて、Golangのどこが好きか? と聞かれた時にうまく説明できなかったのでまとめておきます。 よく、Golangはgoroutineとchannelが取り上げられることが多いと思いますが、 それよりも、僕がGolangをGolangたらしめていると考えているものとして、TypeとInterfaceの機構です。 Golangの思想は、他の言語ではこうなんだけど? ということを踏まえてFAQで簡単に説明されています。 http://golang.org/doc/faq#types 例えばFAQのTypesの章にあるサンプルコードで示されているように、 package main import "fmt" type Fooer interface { Foo() string ImplementsFooer() } type Bar struct {} func

                                                              Golangでエレガントだと思うこと - 日々是鍛錬
                                                            • golangでTUIのスーパーマリオブラザーズ - demouth::blog

                                                              golangがどんなものか軽く触ってみようかと思い、何か題材でもないと触るのも難しいだろうという事で、TUIでスーパーマリオブラザーズでも実装してみようという謎の題材をふと思いついた。 早速実装しては見たものの、本来の目的であるgolangを知る事そっちのけで実装してしまい、あまり理解が深まらないまま今に至る。題材が悪かったかも。 github.com Githubのリリースページから実行ファイルをダウンロード、解凍、ターミナルから実行で起動します。 操作方法は、左右の矢印キーで移動、上矢印キーでジャンプです。 Mac、Linux、Windowsで動きますが手元のWindows7だとチラツキがハンパないです。 とはいえMacでコードを書いて、MacでWindowsのexeをビルドして、Windowsに配布でそのまま動くというのはなかなか素敵な体験でした。

                                                                golangでTUIのスーパーマリオブラザーズ - demouth::blog
                                                              • Golang is evil on shitty networks

                                                                This adventure starts with git-lfs. It was a normal day and I added a 500 MB binary asset to my server templates. When I went to push it, I found it interesting that git-lfs was uploading at 50KB per second. Being that I had a bit of free time that I’d much rather be spending on something else than waiting FOREVER to upload a file, I decided to head upstairs and plug into the ethernet. I watched i

                                                                  Golang is evil on shitty networks
                                                                • Big Sky :: Re: Golang で言語処理100本ノックの No.3 の問題を解いてベンチマークとってみた

                                                                  Golang で言語処理100本ノックの No.3 の問題を解いてベンチマークとってみた - Qiita http://qiita.com/megu_ma/items/01029c3ca24fb9820373 正規表現や strings.Trim 等はとても便利なのですが、いかんせん単一の関数呼び出しに対して真面目にループを回す作りになっており、戻り値がコピーされる前提の作りになっています。例えば func answer1() []int { // 単語に分解 words := strings.Split(sentence, " ") var pi []int for _, word := range words { word = strings.Trim(word, ",") word = strings.Trim(word, ".") // pi = append(pi, utf8.R

                                                                    Big Sky :: Re: Golang で言語処理100本ノックの No.3 の問題を解いてベンチマークとってみた
                                                                  • 【第12回】Go言語(Golang)入門~MySQL接続編~ – 株式会社ライトコード

                                                                    package main import ( "fmt" _ "github.com/go-sql-driver/mysql" "github.com/jinzhu/gorm" ) func main() { _, err := sqlConnect() if err != nil { panic(err.Error()) } else { fmt.Println("DB接続成功") } } // SQLConnect DB接続 func sqlConnect() (database *gorm.DB, err error) { DBMS := "mysql" USER := "go_example" PASS := "12345!" PROTOCOL := "tcp(localhost:3306)" DBNAME := "go_example" CONNECT := USER + ":"

                                                                      【第12回】Go言語(Golang)入門~MySQL接続編~ – 株式会社ライトコード
                                                                    • Golang と SDL2 でゲームを作る — KaoriYa

                                                                      Golang で SDL2 を使って作ったゲームを RasPi3 で遊びました。 その方法を紹介します。 本記事は Go Advent Calendar 2016 24 日目の記事です。 導入 皆さんは突然ゲームを書きたくなること、ありませんか? ありますよね? あるでしょ。あると言ってください! 私は最近 ドキュメントスキャナ を入手しまして、 手元にあった古いプログラミング雑誌をまとめてスキャンしてました。 あ、プログラミング雑誌ってのは若い人にはわからないかもしれませんが、 読者が投稿したゲームなどのプログラムのソースコードが掲載され、 それを他の読者が打ち込んで楽しむそういう雑誌です。 だいたいは BASIC で、 今となっては決して長いとはいえないソースコードなんですが、 それでも 超圧縮 されていたりして、 今読んでも「あー楽しいな(楽しかったな)」ってなるわけです。 私が所持

                                                                      • 循環複雑度を測定してくれるツールを作りました #Golang - Qiita

                                                                        背景 僕はGoを書く前はPythonを書いていました。 Pythonにはflake8という色々便利なやつがいて、自分のコードがPython界の流儀に従っているかチェックしてくれます。 Goだとgofmtとかがほぼ同等の機能を提供してくれています。 ですが、flake8にあってgofmtにないもの。それはコードの循環複雑度を指摘する機能です。 循環複雑度とは これがあるとついつい長く書いてしまった関数なんかを洗い出してリファクタするための手がかりになったりします。 これをGoで使うためにGoで書きました。 すでにあるかどうかは知りません。 使い方 リポジトリ ビルドしてパスの通った場所に配置して実行すると (go:go-cyclomatic-complexity) kenshikamata% ./gocc -path ./complexity complexity/ast.go :Line

                                                                          循環複雑度を測定してくれるツールを作りました #Golang - Qiita
                                                                        • GitHub - robertkrimen/otto: A JavaScript interpreter in Go (golang)

                                                                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                            GitHub - robertkrimen/otto: A JavaScript interpreter in Go (golang)
                                                                          • GitHub - a8m/golang-cheat-sheet: An overview of Go syntax and features.

                                                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                              GitHub - a8m/golang-cheat-sheet: An overview of Go syntax and features.
                                                                            • Big Sky :: golang 1.5 の internal パッケージの使い方。

                                                                              golang 1.5 がリリースされました。 Go 1.5 is released - The Go Blog Go 1.5 is released 19 August 2015 Today the Go project is proud to release Go 1.5, the sixth major s... https://blog.golang.org/go1.5 内容かなり盛りだくさんです。その中でも目を引くのが internal パッケージです。 golang ではパッケージ内のシンボルを外部から参照可能にする為に名称の先頭を大文字にする必要があります。しかしながら、そうしてしまうと無関係のパッケージからも参照可能になってしまう問題がありました。 ライブラリパッケージを作っていて内部の共通関数を切り出したい、しかしながらライブラリ以外の物からは使わせたくない、そういう場合に

                                                                                Big Sky :: golang 1.5 の internal パッケージの使い方。
                                                                              • goパッケージで簡単に静的解析して世界を広げよう #golang - Qiita

                                                                                はじめに Goの標準パッケージには、goパッケージというものがあり、Goのソースコードを静的解析するのに便利な機能が提供されています。 goパッケージを使うと、以下のようなツールが簡単に作れます。 ソースコードを自動生成するツール ソースコードに対してlintやフォーマットを行うツール リファクタリングツール ソースコードから特定の何かを検索するツール ミニ言語の処理系 また、goパッケージを学ぶとコンパイラや言語処理系の知識も学べるので、他の標準パッケージとはまた少し違った知識を得ることができ、プログラミングの知識の幅が広がります。 しかしながら、goパッケージに関する日本語の文献は少なく、学習しづらいのが辛いところです。 私もこれまでgoパッケージについて、Qiita上でいくつか記事を書いてきましたが、どの記事が何をするときに役に立つのか分かりづらくなっていました。 そこでこの記事では

                                                                                  goパッケージで簡単に静的解析して世界を広げよう #golang - Qiita
                                                                                • I have already used the name for *MY* programming language · Issue #9 · golang/go

                                                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                                    I have already used the name for *MY* programming language · Issue #9 · golang/go