タグ

GoLangとGolangに関するramtigaのブックマーク (102)

  • ゲームボーイエミュレータをGo言語で書いた - undefined

    概要 Goはこれまで量を書いたことがなかったので入門にゲームボーイエミュレータを書いてみることにした。ゲームボーイである理由はたまたまよくできたゲームボーイの資料(http://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf)を見つけてしまったため。 成果物 github.com まだ基的なカートリッジタイプしか実装できていないがそこそこ動き始めたので公開することにした。直近は対応カートリッジを増やしながらWebAssemblyを吐けるようにしたい。 ゲームボーイの基仕様 項目 概要 CPU LR35902 4.19MHz 8bit RAM 8kB VRAM 8KB ROM 256k~32MBit Display 4階調モノクロ、160×144ドット スプライト 8×8 最大40個表示 / 1ライン上に 最大10個表示 背景 256×256ドット ウィン

    ゲームボーイエミュレータをGo言語で書いた - undefined
  • 端末の上で動かして遊べる!迷路コマンドをGo言語で書きました! - プログラムモグモグ

    迷路で遊びたくなったので作りました。Goで書いています。 github.com Homebrewをお使いの方は、次のコマンドでインストールしてください。 brew install itchyny/tap/maze そうでない方は、次のコマンドでビルドしてインストールするか、 go get github.com/itchyny/maze/cmd/maze あるいは https://github.com/itchyny/maze/releases よりバイナリーを落としてご利用ください。 mazeコマンドは、ランダムな迷路を出力します。 maze --interactive引数を渡すと、カーソルを動かして迷路を遊ぶことができます。 maze --interactive --format colorを渡すと迷路が綺麗に表示されます。--widthや--heightなどで迷路のサイズを制御すること

    端末の上で動かして遊べる!迷路コマンドをGo言語で書きました! - プログラムモグモグ
  • Go言語によるWebアプリケーション開発

    Goプログラミングについて一歩踏み込んだプロユースの解説書。読者はシンプルなコードを書きながら、実運用アプリケーションの開発で使うスキルとテクニックを学ぶことができます。書のサンプルプログラムはどれもシンプルですがとても実践的です。拡張性、並行処理、高可用性といったエンタープライズアプリケーションの開発で直面する現実的な問題に対するソリューションが含まれています。書を読めば、実際の業務に必要な技能――Goによる開発手法および関連技術の使い方――をマスターし、ツールやプログラムの開発スキルを迅速かつ簡単に向上できます。日語版では、監訳者の鵜飼文敏氏による巻末付録「Goらしいコードの書き方」を収録しました。 サポートページ(サンプルコードや正誤表) 監訳者まえがき まえがき 1章 WebSocketを使ったチャットアプリケーション 1.1 シンプルなWebサーバー 1.1.1 テンプレー

    Go言語によるWebアプリケーション開発
    ramtiga
    ramtiga 2016/01/05
    これは欲しい
  • 本物の golang を... 本物の Gopher を、お見せしますよ。 - Qiita

    事の始まり それはD言語くんへの嫉妬から始まった。 D言語くんの繁殖についての仮説 lsを間違えてdlと入力してしまったときに、D言語くんが通り過ぎるコマンド くっ悔しい... そしてショボいAAで2番煎じ。 lsを間違えてgolと入力してしまったときに、Gopherが通り過ぎるコマンド書いた。 こんなはずじゃない! 僕らの Gopher 君はこんなチープじゃない! 明日来てください。物の Gopher をお見せしますよ。 — mattn (@mattn_jp) December 15, 2015 (当はもうちょっと前から作ってましたが) 物のGopher君とは そして今回、これを公開するに至った。 まずはこれをご覧頂きたい。 !!!!!!!!!!!!1 こいつ・・・ 動くぞ・・・ golang で書いたデスクトップマスコットです。起動すると画面のタスクバーの上をウロウロします。たま

    本物の golang を... 本物の Gopher を、お見せしますよ。 - Qiita
  • アメッシュをターミナルに表示して、ついでに雨降ってたらSlackでおしえてくれるところまで、Goでやったことのまとめ - DRYな備忘録

    このエントリはGo その2 Advent Calendar 2015 - Qiitaの8日目です。 7日目のS_Shiomtoriさんの記事もコマンドラインツールの話でした。 % go get github.com/otiai10/amesh/amesh % amesh -g 思ったことや詰まったこと書きます Goでコマンドラインツールをつくりはじめるとき なんでわざわざGoでコマンドラインツールつくるか コンパイルが非常に早いので、ほぼスクリプト言語のようにソースファイルをWrite&Runして開発することができるから クロスコンパイルが容易なので、Goのコンパイル環境を要求せず、実行可能ファイルを納品できるから 並行処理を書きやすく、わりとデカめのことをさくっとやってのけたりするから Goでコマンドラインツールつくるときいつもハマること flagパッケージわりと使いにくい flag.A

    アメッシュをターミナルに表示して、ついでに雨降ってたらSlackでおしえてくれるところまで、Goでやったことのまとめ - DRYな備忘録
  • Go言語とHTTP2

    http2 in Go 1.6; dotGo 2015 - Google スライド 2015年の5月にRFCが出たばかりのHTTP2が2016年の2月にリリース予定のGo1.6で早くも利用可能になることになっている.HTTP2の勉強も兼ねてGo言語におけるHTTP2実装を追ってみる. 以下ではまず実際にHTTP2サーバを動かしChromeで接続してみる.次に現状コードがどのように管理されているかを追う.最後に実際にコードを動かしながらHTTP2の各種機能を追う.なお参照するコードはすべて以下のバージョンを利用している(まだWIPなのでコードなどは今後変わる可能性があるので注意). HTTP2とは? HTTP/2に関してはスライドやブログ記事,Podcastなど非常に豊富な情報がインターネット上に存在する.そもそもHTTP2とは何か?なぜ必要なのか?などを理解したい場合は参考に挙げた記事など

    ramtiga
    ramtiga 2015/11/19
    “参考”
  • 「commit-m: GitHubコミットメッセージの文例が検索できるサービス」がとても便利だったのでcliから使えるコマンド書いた - ( ꒪⌓꒪) ゆるよろ日記

    http://commit-m.minamijoyo.com/:titele という有名OSSのコミットメッセージを検索できるサービスがあって、英語のコミットメッセージを書くときに「あれ? これどういう風に書けばいいんダー」ってときに例文を検索できて捗る。 commit-m.minamijoyo.com が、自分の場合はコミットメッセージ書くときはvim とか git commit -m とかからなのでCLIで検索できたらより捗るかと思ってGolangで書いた。 APIとかは無いようなのでクロールしてる。 GoQuery 使えばこの手のクローラーが一瞬でかけるのでよさがある。 github.com go get github.com/yuroyoro/gommit-m で入れた後に gommit-m keyword [page] で検索できる。

    「commit-m: GitHubコミットメッセージの文例が検索できるサービス」がとても便利だったのでcliから使えるコマンド書いた - ( ꒪⌓꒪) ゆるよろ日記
  • Go 言語のプロジェクト構成 - fugafuga.write

    Goプロジェクトのディレクトリ構成などについて プロジェクト構成 プロジェクトディレクトリをgo_workとする。 go_work ├── bin -> go install 時にバイナリが格納される ├── pkg -> 依存パッケージのオブジェクトファイル格納場所 └── src -> ソースコード格納場所 上記3つのディレクトリがあることが前提。 環境変数$GOPATHにプロジェクトディレクトリを指定することで、依存パッケージの解決が自動的に行われる。 % cd go_work % export GOPATH=`pwd` パッケージについて Go のパッケージは、Ruby で言うところの gem にあたる。 パッケージは自分で作ったり、Git などでリポジトリが公開されていれば、それをgo get コマンドでコピーして利用できる。 パッケージの作成 gosample というパッケ

    Go 言語のプロジェクト構成 - fugafuga.write
  • Goオールスターズでpackage managementについて話してきました - YAMAGUCHI::weblog

    はじめに こんにちは。Gopherファンクラブ会員番号3番です。去る、10月11日にdots.さん主催の「Goオールスターズ」で登壇してGoでのpackage managementについて話してきました。 Goオールスターズ - dots. [ドッツ] ツイートのまとめや他の登壇者の方の資料はこちらです。 Goオールスターズ - Togetterまとめ Goだけでモバイルアプリを作ろう Goオールスターズ - 考える人、コードを書く人 過去に自作したGoプロダクトの紹介 - Goオールスターズ Goオールスターズで登壇してきました | おそらくはそれさえも平凡な日々 資料 資料はこちらです。 大体の流れはこんな感じです。 当面はGo体では当面は「ソースコードの明示性」「下位互換性」を保つためにgoツールでパッケージのバージョン管理をすることはしない 代わりにGo1.5ではven

    Goオールスターズでpackage managementについて話してきました - YAMAGUCHI::weblog
  • nginxとGoでつくるメルカリのプッシュ通知システム | メルカリエンジニアリング

    原稿の締め切りを越えた先にあるもの、それは校正です。「俺達の戦いはこれからだ!」的な展開に胸が熱く・・・いえ、ちょっと胃のあたりがチクチクする@cubicdaiyaです。 今回はメルカリのプッシュ通知システムとその変遷について紹介します。 メルカリとプッシュ通知 メルカリではアプリ内でのさまざまなイベントの発生時に対象ユーザに対してプッシュ通知を行うようになっています。アプリ内で発生するイベントというのは例えば、 商品の購入 購入した商品の発送 商品に対するいいね!、コメント といったものです。通常アプリ内でイベントが発生した際はAPIサーバにHTTPSリクエストを発行し、MySQLデータベースへの参照・更新が行われた後ユーザにレスポンスを返します。そして必要であればプッシュ通知を行います。 メルカリのプッシュ通知システムの課題と変遷 メルカリのプッシュ通知システムはこの1年間で2度刷新さ

    nginxとGoでつくるメルカリのプッシュ通知システム | メルカリエンジニアリング
  • Go packages from Hashicorp

    Go packages from Hashicorp hashi_wantedly 5 August 2015 deeeet About me @deeeet / @tcnksm http://deeeet.com 社内PaaS(CloudFoundryを利用)の開発運用 (CFの中でConsulが採用される予定) 2 TL;DR Hashicorp / mitchellh氏が開発しているGo pacakgeを紹介する 3 Goal Go言語を使ってるひと... このパッケージ良さそう! Go言語を使ってないががHashicorpツールは使っているひと... Hashicorpツールで使われているものも多い.コードを追うときの参考に! 4 Packages 自分が採用しているもの/触ったことのあるものを紹介する mitchellh/cli mitchellh/go-homedir mitc

  • 例えば、pecoをビルドしない - Qiita

    pecoが浸透し始めてる。すばらしい!でも同時に「pecoをビルドしようと思ったらgoが入っていなかった…」というポストもちらほら見かけるようになった。 qiitaに書いてある記事も結構goをインストールしてコンパイルするところから触れているものが多い。 これらが「ついでだからgoをインストールしよう」という意図なのか「pecoはgoがないとインストールできない」と思ってるからなのかわからないのでこの記事を書くことにした。 pecoを使うだけならgoをインストール必要する必要はない pecoの開発版を使いたいのでは無い限り、go体をインストールする必要はありません。go getする必要もありません リリースファイルをインストールする READMEにもあるようにpecoにはリリース版のファイル群があります。この中から使いたいバージョンのリリースを探してファイルを解凍し、pecoのバイナリを

    例えば、pecoをビルドしない - Qiita
  • GoだけでAndroidアプリを作る その1 〜インストール編〜

    連載目次 その1 〜インストール編〜 その2 〜画像の表示とイベント〜 その3 〜タッチイベントとライフサイクル〜 その4 〜音の再生とセンサー〜(予定) その5 〜簡単なゲームをつくってGoogle Play Storeに公開しよう〜(予定) はじめに @tenntennです。 もうすぐGoのバージョン1.5がリリースされる予定ですが, みなさまはどの機能に注目しているでしょうか? コンカレントGCだったりshared libraryが作れるようになったりと,Go 1.5は非常に楽しみです。 その中でも私は,Go 1.4で入ったGo Mobileのアップデートに注目しています。 Go Mobileは,Goを使ってモバイルアプリを書くためのツール類を提供するプロジェクトです。 Go 1.5では,iOS向けのアプリがビルドできるようになったり,Androidのサポートが強化されるようです。

    GoだけでAndroidアプリを作る その1 〜インストール編〜
  • 逆引きGolang

    これはなにか 逆引きRubyの内容をGolang化しつつあるものです。 当方も初学者なので、いろいろといい加減なコードが含まれると思いますが そのつもりでご参照ください。 Go 1.4.1 で確認しています。Golangは仕様変更が激しいので、都度仕様を確認ください。 なお、ソースコードはGithubに置いてありますので、 何かあればPull Requestでお知らせください。 なお、当初から予定していたファイル系とgoroutineまでなんとか書き上げたので、 ここでいったん更新を終了します(2015/08/12)。 目次 文字列 日付と時刻 数値 配列 マップ 正規表現 ファイル ディレクトリ goroutine Credits RubyTips is founded by TAKEUCHI Hitoshi. HTMLs are generated by Pandoc and deco

  • 動的言語だけやってた僕が、38日間Go言語を書いて学んだこと - Qiita

    Go言語を始めて38日たったので、これからGo言語を始めるプログラマにちょっとでもヒントになるように、どのようにGo言語を始めて、どのような手順で学んできたかまとめておきます。 筆者のバックグランド PHP歴、JavaScript歴10年~ Python 3ヶ月くらい Ruby 1日 静的言語経験ほぼ皆無(Java 3日くらい、Scala 3日くらい、Objective-C 1週間くらい、Cそもそも挫折、C# 1日) 静的言語というと、「コンパイルの一手間が面倒」だとか「環境を作るのが面倒」だとか先入観があり、ほぼわず嫌い状態でした。 Go言語とは? Go言語は2009年にGoogleによって作られたオープンソースの静的言語で、LinuxMacWindowsAndroidで動作します。最近ではGoogle App Engineで使うこともできます。 golang.jpの解説によると

    動的言語だけやってた僕が、38日間Go言語を書いて学んだこと - Qiita
  • Go 言語で rm 用ごみ箱ツール gomi を作った - Qiita

    背景:Golang でコマンドラインにゴミ箱を実装した話 b4b4r07/gomi - GitHub gomi is a simple trash script that works on CLI, written in golang gomi とは Go 言語製の CLI 向けごみ箱ツールです。ファイルを削除するとき当に削除する前に、専用のごみ箱(または、システムごみ箱)にプールしておくことができます。 ワンバイナリで動作する インタラクティブな操作で簡単にリストアできる 捨てたファイルを QuickLook できる システムのごみ箱と連携もでき「元に戻す」操作もできる YAML 形式の設定ファイルでカスタマイズすることができる Windows でも動く みなさん、ファイルの削除には rm を使用されると思いますが、誤って重要ファイルを削除してしまうということは初心者もさることながら、

    Go 言語で rm 用ごみ箱ツール gomi を作った - Qiita
  • 存在感増すグーグル発のプログラミング言語「Go」、国内でも採用事例が増加中

    プログラミング言語、「Go」の存在感が増している。Goは、2009年に米グーグルが発表し、オープンソースとして公開した言語(画面1)。動的型付け言語の高い生産性と、C/C++のような静的型付けを持つコンパイラ型言語の安全性/性能の両立を目的に開発された(関連記事:GoogleがUNIX作者らが開発した新言語「Go」をオープンソースとして公開)。 文法自体はCに似ているが、オブジェクト指向の考え方を採り入れ、ガベージコレクションの仕組みも備える。メモリーの確保や解放をプログラマーが明示的に行う必要がない。並列処理を標準でサポートしているのも特徴だ。 Go言語はグーグル自身がソフトウエア開発の一部で用いているほか、他社による採用事例も増えている。例えば米ドロップボックスは2014年7月、Go言語の採用を表明した。国内でも、はてなやメルカリ、Gunosyなどが、サービス開発の一部にGo言語を採用

    存在感増すグーグル発のプログラミング言語「Go」、国内でも採用事例が増加中
  • Gunosy APIチームGo開発フロー

    Gunosy.go#11の発表内容です

    Gunosy APIチームGo開発フロー
  • コード補完もできる Go の REPL「gore」を作った - 詩と創作・思索のひろば

    タイトルの通りです。Go は LL 的に使える、とはよく申しますが、そういう意識で使っていると REPL 的なことをしたいときに困りがちですよね。そこで作りました。gore。いい名前ですね。 motemen/gore · GitHub 以下のスクリーンキャストでだいたいの雰囲気をお察し下さい。 (スクリーンキャストは cho45/KeyCast を使って撮影しました) 特徴 gore の特徴は以下の通りです。 ラインエディタと履歴 複数行入力 パッケージのインポート、補完つき 式および文を実行可能 コード補完(nsf/gocode を利用) プリティプリント(k0kubun/pp か davecgh/go-spew がおすすめ) ドキュメントも引ける(godoc が必要) 以上のように、非常に便利なものになっております。むしろこの程度 REPL には当然あってほしい機能だとも言える。 イン

    コード補完もできる Go の REPL「gore」を作った - 詩と創作・思索のひろば
  • Go言語でActiveRecordライクなORMをつくった

    Goで DataMapperじゃなく、ActiveRecordライクにDB操作したいと思ってつくってみました。 go/parserとgo/astでソースを解析、個々の構造体ごとにARなコードを生成します。 argen ActiveRecord** Gen**eratorでargenです。 クイックスタート テーブルを表す構造体に+ARアノテーションをマークします。

    Go言語でActiveRecordライクなORMをつくった