ファイルやデータベースを開いたり閉じたり、書き込みや読み取りを実行したりする大きなプログラムを作成しました。「go の例外処理」というものがないので、「defer」ステートメントと「recover()」関数についてよく知らなかったので、ファイルのオープン、読み書き、データベース エントリのたびにエラー チェックを適用しました。など。
_,insert_err := stmt.Run(query)
if insert_err != nil{
mylogs.Error(insert_err.Error())
return db_updation_status
}
このため、最初に db_updation_status を "false" として定義し、プログラムのすべてがうまくいくまで "true" にしないようにしています。私はすべての関数でこれを行いました。失敗する可能性があると思われるすべての操作の後です。
defer-panic-recover を使用してこれを行うためのより良い方法があると思いますか? ここでこれらについて読んだhttp://golang.org/doc/articles/defer_panic_recover.htmlが、それらの使用方法を明確に理解できません。これらの構造は、例外処理に似たものを提供しますか? これらの構成要素がなくてもよいのでしょうか? 誰かがこれを簡単な言葉で説明してくれたり、これらの構造の使用例を提供して、上で使用したエラー処理のタイプと比較したりしてくれれば、本当にありがたいです。