カテゴリー : Go言語

Go言語習得中
ブログ内検索
 

Go言語でSearch Consoleの値を取得してみる

表題にある通り、 Go言語でGoogle Search Consoleの値を取得してみる。 https://search.google.com/search-console/about Google Search Consoleというのは、 運営しているサイトがどのような検索ワードで訪問してくるか? を調べることが出来るWebサービス。 早速、Search Consoleの値をGo言語で取得する為の手続きを見てみる。 https://console.clou...

Read More…

 

Go言語でKVSのRedisを使ってみる

Go言語で構築したサーバで複数台の構成にして、 ロードバランサで負荷分散しなければならない状況になりそうだ。 複数台にした時に問題になるのが、 複数サーバ間でセッションのような値を共有したいという問題が発生する。 どうにかできないかと検討してみたところ、 https://redis.io/ KVS(Key-Valueストア)のRedisであればできそうだ ということを思い出し、 NoSQL - Wikipedia Go言語でRedisの使い方を調べること...

Read More…

 

Go言語を使ってJSONから複数のデータを取得してみる

Go言語でJSON 前回JSONから、秘密鍵などが入ったデータファイルをmain.goで読み込んだ。 今回は、複数のデータの場合、どう呼び出すか試してみる。 まず、sample.jsonに下記のコードを入力する。 [ { "id" : 1, "name" : "usako", "reading" : "usano" }, { "id" : 2, "name" : "kumata", "reading" : "k...

Read More…

 

Go言語でJSON

JSONとは、JavaScript Object Notationの略で、テキストベースのデータフォーマットだ。 ***.jsonという形でデータファイルになる。秘密鍵などのデータを保存しておきたい時の設定ファイルとして使うことが多い。 今回は、~/workspace/json/sample.jsonを作成し、下記の情報を入力する。 { "id":1, "name":"usako", "reading":"usano" } lsonファイルは、{ “項目”:値.....

Read More…

 

Go言語でGoogle Analyticsのデータをチャットワークに送ってみる

「植物のミカタ」のGoogle Analytics(以後GAと略す)から取得したpageviewsをチャットワークに送ってみる。 今回は、前日のpageviewsと日付けを取得してみる。 ※pageviewsとは、閲覧されたページの合計数として定義される指標 実際のコードを書く前に今回のコードで必要なライブラリを取得しておく。 $ go get golang.org/x/oauth2 $ go get google.golang.org/api/analytics/v3 pa...

Read More…

 

妻がプログラミングをはじめてGo言語とQtでアプリを公開するまで

Go言語とQtで給与明細の計算機を作ってみたで記載した通り、 今年の四月からプログラミングの勉強をはじめ、 ちょうど半年が経過したところで、 Go言語とQtでGUIアプリケーションの税金計算のアプリを公開した。 実際に書いたコードはGitHubで管理して、 下記のURLから開発したコードを確認することができる。 https://github.com/ryoko-saito/payslip_on_restaurant_biz https://github.com/ryok...

Read More…

 

Go言語とQtで給与明細の計算機を作ってみた

パン屋を営んでいる友人が、給与明細を手で計算していて大変だわ~と嘆いていた。 なんとか彼女の悩みを解決したいと思い、旦那に話してみた。 「Go言語とQtで給与明細を作れるんじゃない?」 Qtカテゴリ まずは、給与明細にはどんな項目が必要なのか調べてみる。 必要な項目をノートに書きだしてみる。 とりあえず所得税はどうやって計算されているのか調べてみる。 給与所得の源泉徴収税額表は、7ページもあり甲と乙、扶養家族、扶養申請書を提出しているかどうかで所得税の計算方法が変わる。 ...

Read More…

 

Go言語でsyncパッケージを使ってみる

O'Reilly Japan - Go言語による並行処理 Go言語で並行処理についての本が出版されたので購入して読んでいる。 この本よりも前に Lambda Note Goならわかるシステムプログラミング Goでシステムプログラミングに触れる本でも並行処理について記載されていて、 syncパッケージのWaitGroupやMutexが大事だという記載があり、 説明文からもこれらが大事だということはわかるんだけれども、 普段並行処理を書かない私にとってしっくりこなかった...

Read More…

 

Go言語で関数の練習問題③

r := generate()とする数字をランダムに出力するgenerate関数を作成する。 package main import ( "fmt" ) func main() { r:=generate() fmt.Println(r) } func generate() int { rand.Seed(time.Now().UnixNano()) r := rand.Intn(10) return r } 今回は、お題にr := gen...

Read More…

 

Go言語で関数の練習問題②

今回は、greet(name) にname := "うさこさん"と入力すれば、こんにちはうさこさんと出力する関数を作成してみる。 package main import "fmt" func main() { name:="うさこさん” greet(name) } func greet(a string) { fmt.Println("こんにちはうさこさん”) } ここで作成する関数は、greet関数で、今回は、name := "うさこさん"と...

Read More…

 

Go言語で関数の練習問題①

関数を自分で作成する際、引数や返り値をどう設定すればよいのかわからなかったので、例題でどう書けばよいのか考えることにした。 Go言語で関数 Go言語でf(x) = x 2という関数を作ってみる。そこにx=3を代入して結果を表示してみる。 package main import "fmt" func main() { x := 3 y := f(x) fmt.Println(y) } // f(x) = x + 2という式を意味する関数 func f(...

Read More…

 

Go言語でQtのQComboBoxを使ってみる

Go言語でQtのQComboBoxを作ってみる。 QComboBox Class | Qt Widgets 5.11 package main import ( "os" "github.com/therecipe/qt/widgets" ) func main() { app := widgets.NewQApplication(len(os.Args), os.Args) window := widgets.NewQMainWindow(nil,...

Read More…

 

Go言語とQtで計算フォームを作成してみる

Go言語とQtを使って、下記のような計算フォームを作成してみる。 package main import ( "os" "strconv" "github.com/therecipe/qt/widgets" ) //packageスコープ内に変数を定義しておくと、mainの中、外でも変数を使うことができる var jikyuuInput *widgets.QLineEdit var jikanInput *widgets.QLineEdit var ...

Read More…

 

Go言語でQTのQLabelとQLineEditを組み合わせてみる

QLabelとQLineEditを組み合わせてみる。 下記のコードを入力する。 package main import ( "os" "github.com/therecipe/qt/widgets" ) func main() { app := widgets.NewQApplication(len(os.Args), os.Args) window := widgets.NewQMainWindow(nil, 0) window.SetMin...

Read More…

 

Go言語でQtのQGroupBoxとQGridLayoutを組み合わせたサンプル

QtのQGroupBoxとQtのQGridLayoutを使って、下記のような画面を作成してみる。 Go言語でQtのQGroupBoxを使ってみる Go言語でQtでQGridLayoutを使ってみる package main import ( "os" "github.com/therecipe/qt/widgets" ) func main() { app := widgets.NewQApplication(len(os.Args), os.Ar...

Read More…

 

Go言語でQtのQLineEditを使ってみる

Go言語でQtのQLabelを使ってみるに引き続き、 QtのQLineEditを使って、入力フォームを作成してみる。 QLineEdit Class | Qt Widgets 5.11 package main import ( "os" "github.com/therecipe/qt/widgets" ) func main() { app := widgets.NewQApplication(len(os.Args), os.Args) wi...

Read More…

 

Go言語でQtのQLabelを使ってみる

QLabelを使って、時間という言葉を表示してみる。 Go言語でQtのQBoxLayoutを使ってみる QLabel Class | Qt Widgets 5.11 下記のコードを入力する。 package main import ( "os" "github.com/therecipe/qt/widgets" ) func main() { app := widgets.NewQApplication(len(os.Args), os.Args) ...

Read More…

 

Go言語の構造体2

前回のパッケージの関数とメソッド周りに引き続き、Go言語の構造体周りを見ていく。 Go言語のパッケージの関数とメソッドについて Qtのコードを見ていると、NewQMAinWIndowやらSetLayoutといったNew~、Set~という記述をよく見かける。これを理解するためには、構造体の仕組みをおさらいした方がよさそうなので、もう一度構造体について詳しくみていくことにする。 Go言語でQtのQGroupBoxを使ってみる 構造体は、一つの変数にどのような値のセットをもつか厳格に決...

Read More…

 

Go言語のパッケージの関数とメソッドについて

Go言語のパッケージについてもう一度みていく。 Go言語でpackage Go言語で構造体のメソッド dir ├── main.go └── pac └── pac.go 上記のようにpacパッケージを作成し、nameとreadingフィールドを持ったPerson構造体を作成する。 この構造体に関連した関数を作成してみる。 pac/pac.go package pac//Person構造体を定義する type Person struct { name...

Read More…

 

Go言語でQtのQGroupBoxを使ってみる

Go言語でQtのQGroupBoxを使って、QFormLayoutとQGridLayoutを組み合わせた下記のような図を作ってみる。 QFormLayoutについては下記の記事に記載している。 Go言語でQtのQFormLayoutを使ってみる QGridLayoutについては下記の記事に記載している。 Go言語でQtでQGridLayoutを使ってみる QGroupBoxというのは、各レイアウトをグループ化出来るようになり、 一つのWindow内で複数のレイアウトを配置...

Read More…