「国際化プログラミングの常識」をチラ見
再び、釣りなんだと信じて釣られてみる。
■ 国際化は「ほどほど」に!
(中略)さらに、Javaプログラマーが利用する国際化対応機能についても、すべてを使いこなす必要はありません。むしろ、国際化対応機能をむやみに使うと、訳の分からないソースコードが出来上がってしまう懸念すらあります。目的をしっかり持ち、必要となる国際化プログラミングを選択しながら、ほどほどに適切に利用する必要があるのです。
国際化プログラミングの常識: Javaプログラムの国際化について
「ほどほど」が「国際化」という言葉に係る例をはじめて見たわけですが、次の節を見て、なぜ筆者が「ほどほど」というのか分かったような気がした。次の文中にあった図が端的に状況を表わしていると思う。
あー、「blanco」というプロジェクトの仕様書を連載用に転用したんだなあ、というのはさておき、確かに、ソースコード中に
try { ... } catch (UnsupportedEncodingException e) { // 2001/12/30 棟方 追記: このメッセージの内容は //「サポートしていない文字コードが指定されました」です。 String msg = bundle.getString(AppConstant.MESSAGE1); // エラーログに記録するのみ log.error(msg, e); } catch (UTFDataFormatException e) { // 2001/12/30 棟方 追記:このメッセージの内容は //「不正な文字フォーマットです」です。 String msg = bundle.getString(AppConstant.MESSAGE2); // エラーログに記録するのみ log.error(msg, e); }
とかありまくったら「訳の分からないソースコード®」になるよなあ。というか、そういうコードを保守しまくっていた時期もあったなあと。
そこ連番つき定数とか使うところじゃないだろとか思うのは gettext 脳になっているからでしょうか。
(追記: ソースコード中の人名および日付はフィクションです。いかなる実在の人物や事象とは関係ありません。)