aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--NOTE.md13
-rw-r--r--slide.pdfbin237278 -> 243184 bytes
-rw-r--r--slide.saty3
3 files changed, 16 insertions, 0 deletions
diff --git a/NOTE.md b/NOTE.md
new file mode 100644
index 0000000..d2d54fa
--- /dev/null
+++ b/NOTE.md
@@ -0,0 +1,13 @@
+# PHP で `json_decode()` や `json_encode()` が `json_last_error()` や `json_last_error_msg()` でエラーを取るようになっている理由
+
+`json_last_error()` が実装されたのが、 `json_decode()`/`json_encode()` の実装より後
+
+# C# に検査例外がない理由
+
+C# 設計リーダへのインタビュー
+https://www.artima.com/articles/the-trouble-with-checked-exceptions
+
+# Go に例外がない理由
+
+Go の FAQ
+https://go.dev/doc/faq#exceptions
diff --git a/slide.pdf b/slide.pdf
index 46d50ac..1281a37 100644
--- a/slide.pdf
+++ b/slide.pdf
Binary files differ
diff --git a/slide.saty b/slide.saty
index b691a29..5d5c123 100644
--- a/slide.saty
+++ b/slide.saty
@@ -287,9 +287,12 @@ void do_something() {
* \good; エラーに情報を載せられる
* \good; エラーハンドリングを省略するとコンパイルエラーになる
** \good; 省略ができない
+ * \bad; どこでどの例外が投げられるのかわかりにくい
+ ** 注: 例外自体の問題ではなく、C++ や Java が採用している文法の問題
* \bad; 大域脱出は処理の動きが複雑になる
* \bad; 例外クラスの継承ツリー設計が困難
* \bad; 回復不能なエラーまで例外で表される
+ * 検査例外固有の問題がいくつかある (ここでは割愛)
}
>
>