miyohideの日記

技術的なメモなどを記しています

2018年9月1日(土)

あーだこーだというまにいつの間にか9月。早いよ、一年...

Go言語

業務でちょっとだけ触るようになってからちまちまと勉強しているGo言語。まだまだ慣れないというか、コツが掴めない感じがする。

まず「スターティングGo言語」でざっくりとした文法を把握した。

スターティングGo言語 (CodeZine BOOKS)

スターティングGo言語 (CodeZine BOOKS)

その後「みんなのGo言語」は読んでみたんだけれども、当時の自分には早すぎた感じがする。

みんなのGo言語【現場で使える実践テクニック】

みんなのGo言語【現場で使える実践テクニック】

その後、「Goならわかるシステムプログラミング」を輪読で読みつつ

Goならわかるシステムプログラミング

Goならわかるシステムプログラミング

Go言語でつくるインタプリタを現在は写経中というところ。

Go言語でつくるインタプリタ

Go言語でつくるインタプリタ

読んだ/読んでいる本はそこそこあるにしても、あまり身についたって感じはしない。そんな中、Goらしいコードを業務でも書くために - Speaker Deckを見かけて、ソースコードリーディングでもやってみようかと思っているこの頃。

2018年8月31日(金)

Gitのマージ済みブランチを整理

気がついたら、Gitリポジトリがごちゃごちゃになっていたので整理。マージ済みのブランチは

$ git branch --merged

で得られる。ここから現在のブランチを取り除くにはgrep -vを使って

$ git branch --merged | grep -v '*'

で。

これで得られたbranchを消せばいいのでxargsを使って

$ git branch --merged | grep -v '*' | xargs -I % git branch -d %

でOK。

2018年8月30日(木)

気がついたら3日間もサボっていた。う〜ん。いかん。

単体テスト結合テスト・総合テスト

akito0107.hatenablog.com

上記のブログを読んでいろいろと考えていた。

確かにプロジェクトを構成するメンバー間で各テスト工程の定義がバラバラなのは気になっていたんだけれども、明確な回答が示せずにいたので、一つの回答として参考になった。

個人的には、

Webシステムにおいては、

  • 単体テストは、一つの画面に対して、入力に対する出力(画面だったり、DBデータだったり)が正しいこと
  • 結合テストは、画面間の連携が正しく動くこと。例えば、画面遷移処理だったりA画面で操作した結果がB画面で正しく反映されることを確認する。
  • 総合テストは、Webシステムだけでなく、バッチ処理も含めた処理が正しく動くこと。バッチ処理の内容が正しく画面に反映されることなどを確認する。

バッチシステムにおいては、

  • 単体テストは、一つのバッチジョブにおいて、入力に対する出力(DBデータだったりファイルだったり)が正しいこと
  • 結合テストは、バッチ間の連携が正しく動くこと。
  • 総合テストは、Webシステムとの連携が正しく動くこと。

と考えています。

ただ、この定義だと一つ一つの工程が膨らみすぎる気がするので、もうちょっと細かく区切りたいなという思いがあります。

2018年8月26日(日)

るびまの新しい号をリリースした。色々とハマったので、記憶があるうちにやり方を整理したい。

Gitはデフォルトでファイル名の大文字・小文字の変更は検知しない

今回のるびまリリースでめっちゃハマった点。大文字小文字の変更、検知しないんだ...。修正は下記のQiitaにあるようにgit config core.ignorecase falseとすればOK。

qiita.com

2018年8月25日(土)

最近はRubyだけじゃなく、GolangJavaもやっている。もともと何でも屋だったんだけど、その様相がさらに色濃くなってきた感じ。

モダンなJava開発ガイド (2018年版)

qiita.com

Javaの世界からはしばらく離れていたので、自分もこの記事を見るまでは知らないことだらけだった。JavaのStream APIとか、ラムダ式とか。言葉は知っていても、実際には書けないので知らないのと同じこと。

Kotlinはそろそろやってみるかなあ。

2018年8月24日(金)

最近、Azureを仕事で触ることがあるんだけれども、全然わからない。安心安全なクラウド環境を作るのって難しくね?難しく考えすぎで習うより慣れろってことなのかなあ。

そんななか見つけたのが上記の本。まだ発売日前だけれども。

できれば電子書籍版でほしいんだけれどもしばらく出ないのかなぁ。

Windowsで使えるターミナルとシェルのまとめ

普段の開発はWindowsでやっているんだけれども、困るのがシェル。いろいろと試してみたんだけれども、このQiitaの記事を見ると知らないものもチラホラあって、もう一回試してみようかなと。

qiita.com

2018年8月21日(火)

最近、GoとかJavaとかJavaScriptがメイン。Ruby忘れそう。

RubyWorld Conference、CFPに応募したんだけれども落ちました。まぁ、しゃーない。切り替えていこう。

Reactを使うとなぜjQueryが要らなくなるのか

たまたま見つけた記事。そうそう、なんでjQuery不要論が出てくるのかが分からなかったんだけれども、これを読んでだいたい理解した気になった。気になったっていうのはまだReactがよく分かっていないので。

qiita.com