kadai1-yashiken#3
Conversation
|
コードに関する話でなくて申し訳ないのですが、こちらの資料にある通り、不要なファイルは削除した方が良いかと思うですが、如何でしょう?? |
コメントありがとうございます、仰る通りです。チェック不足で申し訳ないです... 教えていただいた資料もとても参考になります、ありがとうございます。 |
| @@ -1,3 +1,27 @@ | |||
| # yashiken追記 | |||
|
|
||
| ## 使い方 | ||
| ``` | ||
| go run main.go -s jpg -d png images |
There was a problem hiding this comment.
go run で使用することを想定しない。
ちゃんとビルドすることを想定する。
| return err | ||
| } | ||
| // 成功メッセージの表示 | ||
| fmt.Printf("%s converted to %s image\n", path, c.extCnv) |
There was a problem hiding this comment.
main パッケージ以外で標準出力に出力するのはできるだけ避ける
| } | ||
|
|
||
| // Converは、受け取ったファイルパスの画像ファイルを指定した形式に変換します | ||
| func (c Converter) Convert(path string) error { |
| // decodeは指定したファイルパスのファイルの読み取り、デコードを行います | ||
| func (c Converter) decode(path string) (image.Image, error) { | ||
| // ファイルの読み取り | ||
| file, err := os.Open(path) |
| } | ||
|
|
||
| // NewConverterはConverter構造体を生成するためのヘルパー関数です。 | ||
| func NewConverter(extSrc, extCnv string) *Converter { |
There was a problem hiding this comment.
構造体リテラルによる初期化以上の役割がなければ別にフィールドを隠蔽して初期化用関数を作る必要はない。
There was a problem hiding this comment.
関数名は利用側にとって分かりやすい名前にする。convert.NewConverter より converter.New 重複がなくてよい
| ) | ||
|
|
||
| // TestMainは、テストで変換した画像ファイルを消去するための関数です。 | ||
| func TestMain(m *testing.M) { |
| } | ||
| // 呼び出し結果と期待値の比較 | ||
| if *result != *expect { | ||
| t.Error("NewConverterの戻り値が正しくありません") |
There was a problem hiding this comment.
テストはエラーメッセージが非常に大事なのでどう正しくないのかを出す。
|
|
||
| // NewImgのテストです。正しいConverter構造体を返却することを確認します。 | ||
| func TestNewImg(t *testing.T) { | ||
| extSrc := "jpg" |
| } | ||
|
|
||
| // NewImgのテストです。正しいConverter構造体を返却することを確認します。 | ||
| func TestNewImg(t *testing.T) { |
There was a problem hiding this comment.
このテストっていりますか?
TestNewImgって名前は正しいですか?TestNewConverter?
|
コメントいただきありがとうございました。Gopher道場の場でも解説していただき、とても勉強になります。 テストのブラッシュアップは、課題2−2と併せて実施予定です。 |
仕様
jpg形式をpng形式に変換するjpg,jpeg,png,gif間の変換に対応。使い方
気になっている点