ソースコードから理解する技術-UnderSourceCode

手を動かす(プログラムを組む)ことで技術を理解するブログ

golang

BoltでGoroutineを使って登録する場合のDB.Batch()について

はじめに 昨日に引き続きにBoltついてです。 GitHub - boltdb/bolt: An embedded key/value database for Go.今回はGoroutineの中でBoltに登録処理を行うケースを想定し、DB.Batch()を検証してみました。 DB.Batch() 公式のドキュメントは以下となります。 h…

Golangの組み込みDBとして使えるBoltについて

はじめに 前回にも書きましたが、Golangの組み込みDBとして使うことができるBoltを見つけたので、使ってみました。 GitHub - boltdb/bolt: An embedded key/value database for Go.以下、このDBについて紹介していきたいと思います。 Boltとは BoltはKeyValu…

GolangのローカルDBとしてBoltを使ってみた

前回の記事でBitcoinについて調べていましたが、その時参考にした記事ではローカルDBとしてBoltを使っていました。 Bolt GitHub - boltdb/bolt: An embedded key/value database for Go.Boltは上記になります。READMEが結構充実しているので、使うときには一…

Bitcoinの実装について調べてみた

タイトルにあるように、Bitcoinの実装について調べてみました。 色々なサイトがあったのですが、個人的には以下のサイトが分かりやすかったので紹介します。Building Blockchain in Go. Part 1: Basic Prototype - Going the distanceこちらのサイトはGolang…

JSON Web Tokenを返すGolang Serverを実装してみた

タイトルにあるように、JSON Web Tokenを返すGolang Serverを実装してみました。 認証が必要なAPIがあり、そのAPIのみTokenの検証を行なった後にアクセス可能にするケースを想定しています。とは言っても、基本的には Authentication in Golang with JWTs を…

urfave/cliを使ってみた

Building a Network Command Line Interface in Go | TutorialEdge.net という記事を見つけました。https://github.com/urfave/cli このライブラリを使い、いくつかのネットワークコマンドを実行するCLIアプリを作ってみる記事です。今回はこの記事を写経し…

GolangでTwitter Botを作成してみた

タイトルにあるようにGolangでTwitter Botを作成してみました。 EC2などのマシン上でバイナリを常駐させて動かすことを想定しています。ソースは以下となります。 GitHub - SrcHndWng/go-learning-tweet-random-search at v1.0.0 READMEにも書きましたが、機…

「Amazon Web Servicesを使ったサーバーレスアプリケーション開発ガイド」をGolangで写経してみた - その2

前回に引き続き、Amazon Web Servicesを使ったサーバーレスアプリケーション開発ガイド | マイナビブックスをGolangで写経しています。 今回はChapter4をやってみました。GitHub - SrcHndWng/go-learning-serverless-apps at chapter4 Twitterからデータを取…

「Amazon Web Servicesを使ったサーバーレスアプリケーション開発ガイド」をGolangで写経してみた

Amazon Web Servicesを使ったサーバーレスアプリケーション開発ガイド | マイナビブックスを読み始めました。 ただ読むだけではなく、Golangの勉強がてら、本で紹介されている処理を実装してみました。実装言語は先に書いたようにGolang、デプロイ周りはServ…

GolangとServerless FrameworkでGraphQLのAPIを作成 + 動作確認してみる

Building a Golang GraphQL API on AWS Lambda - A man with no server - Mediumという記事を見つけました。 こちらを参考に、Serverless Frameworkを用いてGraphQLのAPIを作成してみました。主なロジックは上記の記事とほぼ同様なのですが デプロイ周りにSe…

Golang + API GatewayでCRUDを実装してみた

AWS LambdaがGolangを正式サポートしてから暫く経ちました。 Serverless FrameworkもGolangでの実装をサポートしたようなので、タイトルにあるようにAPI Gatewayを使用したCRUDのAPIを作成してみました。Todoを登録・削除・参照するAPIのサンプルとなります…

Golangでテンプレートファイルを使った出力を行うチュートリアルをやってみた

はじめに Golangでテンプレートファイルを使った出力を行うことについて扱われている Using Go Templates | Gopher Academy Blog をやってみました。テンプレートについては今までも使ってはいましたが、改めて復習ということで。。。 チュートリアル形式の…

GolangでWebAssembly(wasm)を実行するチュートリアルをやってみた

はじめに GolangでWebAssembly(wasm)を実行する手順を紹介した Go and wasm: generating and executing wasm with Go | Gopher Academy Blog をやってみました。元々は「wasmとは何ぞや?」と思ったことからやってみたのですが この記事の中でも説明されてい…

GolangでWebアプリ作成〜Docker・Kubernetesで実行するチュートリアルをやってみた

はじめに GolangでWebアプリを作りDockerで動作を確認し、Kubernetesでデプロイする手順を紹介した Write a Kubernetes-ready service from zero step-by-step | Gopher Academy Blog をやってみました。とは言ってもKubernetesは当分使用する予定はないので…

珠玉のプログラミング 第一部の問題をやってみて

珠玉のプログラミング 本質を見抜いたアルゴリズムとデータ構造作者: ジョン・ベントリー,小林健一郎出版社/メーカー: 丸善出版発売日: 2014/02/28メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る「珠玉のプログラミング」の第一部を読…

Visual Studio CodeでGo言語(golang)のユニットテストをデバッグする

タイトルにあるように、Visual Studio CodeでGolangのユニットテストを実行してデバッグする方法についてです。 とは言っても、ほとんどデバッグ時の設定手順と同じですが・・・。 デバッグ時の設定手順 メニューバーの「Debug」より「Open Configurations」…

Visual Studio CodeでGo言語(golang)のユニットテストを実行する

例によって忘れないための備忘録です。 Visual Studio CodeにGo with Visual Studio Codeが入っていることが前提です。 手順 ユニットテストのファイル(〜_test.go)を作成する。 commnad + shift + p などでコマンドパレットを起動する。 「Go: Test File」…

Visual Studio CodeでGo言語(golang)のデバッグをするときの設定

タイトルの件について、いつも忘れるからメモ。 Visual Studio Codeのバージョンによって違うかも。 デバッグ時の設定手順 メニューバーの「Debug」より「Open Configurations」か「Add Configurations」を選ぶ。 launch.jsonが開く。 その中に設定を記述す…

A Tour of Goをやってみた(1)

前から気になっていたA Tour of Goをやり始めました。 初日は「welcome」から「Flow control statements: for, if, else, switch and defer」をやってたのだが、その感想を月並みだが箇条書きで書いてみます。 電車の中でiPadでやっていたので、ブラウザ上で…