golang シリーズ Go言語パッケージの公式ドキュメントページが新しくなってました! プログラミング言語特集Go 記事 2020年02月06日 春田拓海 | Takumi 7 こんにちは。DA事業本部の春田です。 先ほど、Golangのドキュメントを覗いてたら、下のInfoが表示されてました。 ほほう!ドメインもすっかり変わった、新しいドキュメントページができたようですね。早速覗いてみました。 […]
チームにある程度テストがかさばってくると、テストの実行時間が問題になる。せっかくテストを頑張って作っていても、実行時間が10分とか20分になってくるとどうしてもテストを動かすのが億劫になる。 せっかっく開発がノッてきたのに、テストのフィードバックがすぐ得られないと集中が途切れてしまう。手元なら実行範囲を狭めればいいだけだが、 CI 環境ではそうもいかないし、 そこでこけている原因を探るのに一回のトライエラーが10分間隔とかになると辛い。 まぁ、そういう建前は色々あるけど、テストのフィードバックが早く得られると困る人はいないと思う。 そういうわけでテストを並列実行しようという話が出てきて、php 界隈で並列実行を試みようとすると例えば以下のライブラリに行き当たる。 https://github.com/brianium/paratest https://github.com/verkkoka
幅広い開発者にGoによるコーディングを試してもらえるよう、前半はWindows環境+Eclipseを前提とした開発環境の作り方と、Goアプリケーションのビルド方法について説明します。後半は、「Goji」を利用した簡易的なWebアプリケーションの作り方について説明しますが、Goの構文や書き方といった基礎的なことの説明は割愛します。もし、Goプログラミングの基本を学習したい場合は、Webブラウザを使ってGoのコードの入力や実行を試すことができる「A Tour of Go」を試してみてください。 本稿を通して、1人でも多くの方にGoで開発を行うメリットや楽しさを実感していただけると幸いです。 Goの利点 世の中に様々な実績あるプログラミング言語が存在する中で、改めてGoを採用することにどのような利点があるのでしょうか? 私は次のような利点を感じています。 ビルドした結果が「環境依存のない単一の実
Goji というのは Go の Web アプリケーションフレームワークです。 機能的には薄めですが、標準の net/http と違ってメソッドベースでのルーティングもでき、Ruby の Sinatra みたいなノリで使えると思います。 この記事では Goji で PostgreSQL にアクセスする Web API を作って、Heroku にデプロイします。 構成 Go v1.4 WAF: Goji v0.8.1 ORM: Gorp v1.7 PostgreSQL v9.4.0 作るもの 持ち物リストアプリのための RESTful な JSON Web API (アプリの方も Swift で作って正月休み中に動かしたい) できたもの yuya-takeyama/bali-api 記事執筆時点でのコミットはこちらから とりあえず自分の環境で動かしたい、という方のために Heroku Butt
$ fresh 17:33:56 runner | InitFolders 17:33:56 runner | mkdir ./tmp 17:33:56 runner | mkdir ./tmp: file exists 17:33:56 watcher | Watching . 17:33:56 watcher | Watching view 17:33:56 main | Waiting (loop 1)... 17:33:56 main | receiving first event / 17:33:56 main | sleeping for 600 milliseconds 17:33:57 main | flushing events 17:33:57 main | Started! (15 Goroutines) 17:33:57 main | remove tmp/runn
Goの勉強を兼ねて、基本的なCURDを満たす、MVCなWEBアプリケーションを作りたいと思います。 データベース DBはSQLiteを使ってるサンプルが多いですが、せっかくなので今回はMySQL5.6を使うことにします。 ライブラリ GoでMVCフレームワークを作る場合、goji、gormあたりが定番のようなので、これらを使います。 バリデーションだとこれが定番、というのが見つからなかったので、今回は使いやすそうなvalvalにしました。 ライブラリのインストール 必要なライブラリを入れます。 $ go get github.com/wcl48/valval $ go get github.com/jinzhu/gorm $ go get github.com/zenazn/goji $ go get github.com/go-sql-driver/mysql どんな感じのWEBアプリケ
« Re: VimでURLをドメインだけに置換するコマンドを正規表現でうったら、本当に正規表現って意味不明なフォルムと思った。 | Main | golang のリファクタリングには gofmt ではなく、gorename を使おう。 » golang には go build というビルド機能があり、C言語と golang をまぜた cgo というC言語拡張も同じコマンドでビルド出来ます。 その際、ソースコードのコメントに CFLAGS や LDFLAGS を自ら指定する事が出来るので package gtk // #include "gtk.go.h" // #cgo pkg-config: gtk+-2.0 import "C" import ( "fmt" "log" "reflect" "runtime" "strings" "unsafe" "github.com/mattn/g
はじめに 先月の GoCon 2014 Autumn のキーノートスピーチで Rob Pike 先生が、「Simplicity is Complicated」というタイトルで講演を行いました( @tenntenn さんによるレポート記事 )。 その中で、「Go の定数は、裏では非常に複雑なことをやっている」という話をされていました。そのときに触れられていた、The Go blog の "Constants" という記事を読んだので、それについてまとめます。 TL;DR Go では、異なる型を混ぜた式は禁止し明示的な変換を要求する しかし、定数を毎回変換するのは面倒なので、定数は型を持たないことが可能になっている これによって、Go の定数は、実際の数字のように扱うことができる 参考文献 参考というか、そのままなので、下記を読めば、本記事を読む必要はありません。また、本記事を読んで興味を持っ
本記事はGo Advent Calendar 2014の18日目の記事です. Go言語は,クロスコンパイルや配布のしやすさからコマンドラインツールの作成に採用されることが多い.自分もGo言語でいくつかのコマンドラインツールを作成してきた.例えば,GitHub Releaseへのツールのアップロードを簡単に行うghrというコマンドラインツールを開発をしている. コマンドラインツールをつくるときもテストは重要である.Go言語では標準テストパッケージだけで十分なテストを書くことができる.しかし,コマンドラインツールは標準出力や標準入力といったI/O処理が多く発生する.そのテスト,例えばある引数を受けたらこの出力を返し,この終了ステータスで終了するといったテストは,ちゃんとした手法が確立されているわけではなく,迷うことが多い(少なくとも自分は結構悩んだ). 本記事では,いくつかのOSSツール(得に
この記事ははてなエンジニアアドベントカレンダー2014の8日目です。 今回は、Go言語でサーバ管理ツール Mackerel のコマンドラインツールmkr を作るときに調べたこと、考えたこと、やったことについて紹介します。(mkr は現時点では開発版での提供になります。) コマンドラインツールについて コマンドラインツールを作るにあたって、@deeeet さんの YAPC Asia 2014 での発表資料が非常に参考になります。 書籍 UNIXという考え方ーその思想と哲学 の内容をベースに、コマンドラインツールはどうあるべきかということが丁寧に説明されています。 上記資料から引用させていただくと、コマンドラインツールにおいて重要なポイントは以下の7つであるとされています。 1つのことに集中している 直感的に使える 他のツールと連携できる 利用を助けてくれる 適切なデフォルト値を持ち設定もでき
【追記】2023年3月21日 YAPC::Kyoto 2023で、ジョブキューシステムFireworqの設計と運用実績も含めて発表されました。id:tarao ++ 【加筆修正】 2020年2月16日 執筆時から6年も経過していますが、たまたまこの記事を振り返る機会があったので、日本語がおかしいところを一部修正したり、一緒に取り組んだ方々の名前が書かれていなかったところを修正しました。 【追記】2017年12年24日 このエントリのジョブキュー実装がFireworqという名でOSSとして公開されました。id:tarao ++ github.com この記事ははてなエンジニアアドベントカレンダー2014の4日目です。 前回は Mackerelで採用している技術一覧とその紹介 - Hatena Developer Blog でした。 社内の開発合宿で、 id:taraoさん、id:hakobe
こちらです。Perl でいうと Devel::KYTProf に性質がちかい。 motemen/go-loghttp · GitHub (GoDoc) 使用例 たとえばこういうコードに… package main import ( "io" "log" "net/http" "os" ) func main() { resp, err := http.Get(os.Args[1]) if err != nil { log.Fatal(err) } io.Copy(os.Stdout, resp.Body) } % go run main.go http://example.com/ <!doctype html> ... 一行追加すると: package main import ( "io" "log" "net/http" "os" _ "github.com/motemen/go-lo
はじめに こんにちは、Go界のカール・ライナーです。2013年の春から数えて4回目のGo Conferenceですが、今回はこれまでのスケジュールと異なり、午前中のキーノート2本をはじめ、初めて1日通してプレゼンを行う本気のカンファレンススタイルとなりました。 TL;DR 何より僕自身が一番楽しめましたし、運営してくださった方々、また一緒に盛り上げてくれたコミュニティのみなさん、ありがとうございました。また次のGoConが開催されることを楽しみにしています。 TLとプレゼンテーションまとめ スライドへのリンクがないものは公開され次第追って追加します。 TL Go Conference 2014 autumn - Togetterまとめ キーノート Rob Pike Goに入ってはGoに従え (鵜飼さん) プレゼンテーション App Engine for Golang Performance
Goに入ってはGoに従え Go Conference 2014 autumn 30 November 2014 鵜飼文敏 Fumitoshi Ukai Google Software Engineer - Chrome Infra team Go Readability Approver Go言語のReadabilityをレビューするチーム コードレビューを通じてGo言語のよいコードの書きかたを教える メインのプロジェクトとは別のコードをレビュー 一年前くらい前に参加して 20% timeで 200くらいのCLをレビューしました 今は一日3CLくらい、週に12CLほどのペースでやっています Gopher by Renée French 2 Readabilityスキルとは? プログラミング言語のリテラシー 作法にかなったやりかた で、読んだり書いたりできる能力 言語ごとに作法が違う C++
終了 2014/11/30(日) 10:00〜 Go Conference 2014 autumn Rob Pike氏来日! tenntenn 他 東京都品川区東品川4-12-3
日時: 2014-11:30 10:00~18:00 場所: 品川シーサイド 楽天タワー イベントURL: https://github.com/GoCon/GoCon/blob/master/2014autumn.rst togetter: http://togetter.com/li/751700 スライドは見つけ次第、追記予定 当日の品川シーサイドはミニ四駆大会があった Keynote1: Rob Pike (@rob_pike) (45min) Title: Simplicity is Complicated Go の成功の要因について話したい ちまたで言われているような早さ、容易さ、ツール、ライブラリ、並行性、インターフェースも違う 単純さが要因だと私は思ってる でもそれについて理解してもらうのは難しい 収束しようとしている言語たち Lang.Next カンファレンスにて、様々な
update, 2017: The book might be a couple years old, but it's still relevant. Nothing fundamental or outwardly major has changed in Go (the team has promised a stable API until the next major version). The big changes have been with the tooling, compiler and runtime as well as enhancing the standard library (like supporting HTTP/2). The Little Go Book is a free introduction to Google's Go programmi
When the UK Government Digital Service (GDS) started working on GOV.UK, much of it was built in Ruby. Since then, we’ve used a number of different programming languages across government including Java, Clojure, Scala, Python and Javascript. More recently, we’ve turned to Go for some projects. This is a brief experience report. It’s about how we’ve used Go and what we feel would be useful to know
Golang は使われていないものまで import しているとコンパイル時にエラーになります。 この仕様自体はとてもいいと思うのですが,ちょっとしたファイルを試行錯誤している時にどこかの行をコメントアウトする度に import 文も書き換えないとコンパイルできないというようなことが発生してイライラする事があります。 せっかくの静的型付け言語ですのでこの辺りを自動でいい感じにしてくれると嬉しいです。 そんなあなたに goimports がおすすめです goimports - GoDoc Emacs などのエディタで保存時に gofmt をかけて自動整形させる設定は誰でもしていることと思いますが,goimports は gofmt と全く同じ用に使えてかつ import 周りを自動でいい感じにしてくれるという優れものです。 インストールは go get でサクッと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く