Ginkgo難解
Ginkgo使えば使うほどわからなくなってくる。
上から順番に、途中経過もチェックしながら実行したいだけなんだけどなぁ。
POSTS
Ginkgo使えば使うほどわからなくなってくる。
上から順番に、途中経過もチェックしながら実行したいだけなんだけどなぁ。
詳解Go言語Webアプリケーション開発 | 清水陽一郎 | 工学 | Kindleストア | Amazon読み終わった。
後半のハンズオン、途中から説明が足りない感じで、何度かbudougumi0617/go_todo_app: 書籍「詳解Go言語Webアプリケーション開発」のサンプルコードリポジトリです。を見る必要があった。
そして上記リポジトリにも正誤表があるが、そこそこ違っている。
Kindle版なのだから即修正反映してくれればいいのに、と思うけどそうはいかないみたい。残念。
Read moreDocumentation for the go Generatorで生成したは良いけれど、使い方がわからず試行錯誤してみていたら、生成したdocsの中にサンプルコードが書かれていた。。
構造体のドキュメントとかだと思ってスルーしてたのが敗因。 生成物はちゃんと見ましょう。
久しぶりにonsi/ginkgo: A Modern Testing Framework for Go触って、やっぱりよくわからないなー、と。
BeforeEachとか使って、初期化処理を共通化しようとしたのだけれど、初期化されていない現象とか。
テスト用の構造体ってちゃんと作ろうとすると結構行数食ってしまうけど、あまりテストコードと離れたところに置きたくない気持ちもあり。
うーん。
詳解Go言語Webアプリケーション開発 | 清水陽一郎 | 工学 | Kindleストア | Amazonの後半のハンズオンを写経しながらやってみている。
あらためて手を動かして書くことで、新しい発見があったりして楽しい。
silencedetectがなんか思ったのと違う感じで、代わりにPythonとffmpegで動画の無音部分をカットする - QiitaにあるPythonのプログラムの無音検出部分を使ってみた。
Goでもmkb218/gosndfile: Go bindings for libsndfileを使ったらできそうだけど、importしただけでは動かなかったので今後の課題にしたい。
Shotcutのプロジェクトの保存形式がMLTで、中身はXMLのテキスト。
作業動画を編集していて、無音部分はスキップして尺を短くしたい。
無音部分はffmpegのsilencedetectで検出できるので、そのタイムスタンプで切ったShotcutプロジェクトを開けば、効率的に不要な部分を切り詰めつつ必要な部分を残せるのではないかという目論見。
https://github.com/umemak/ffmpeg_test/blob/main/main.go
とりあえずこんな感じで。
エラーのラッピングをすると何がうれしいのかという問いへの解答が見えた気がする。
ラッピングしない場合、元のエラーの文字列以外の情報が失われてしまうが、ラッピングするとエラー情報をアンラップして取り出すことができる。
失われてしまう情報が呼び出し元で必要な場合は、エラーをそのままreturnして返すか、必要な情報も含めてErrorfに書かないといけない。
Read more別の調べものをしていて見つけたsqlc.dev | Compile SQL to type-safe Goを試してみた。
schema.sql
は、今までMySQLの起動時に読み込ませていたSQLファイルがそのまま使えた。
query.sql
もgoのmodelパッケージ内に書いていたSQLをコピペで作れた。
結構良いかも。