プログラマメモ2

2011-03-20

担保する




「何々を担保する」と言い回しが、ぴんときてなかったんだけど、「何々が行われることを保証する」もしくは「何々を確実化する」とか、そんな意味なんだと思う。

開発の世界だと、「〜を設計することで、〜を担保する」、「〜を担保するのは、われわれの責任だ」とか、「〜を担保するのは、われわれではない」とか。

この用語が使われるのは、開発の中でも、G(グループ)間の役割がきまってたりとか、他社とのやりとり部分とか、で使われるんだろうな。

話かわって、設計書っていったい誰のため(何がうれしいのか)なのかなーって考えるときがある。体裁を整えることに精一杯で、役に立つ、メンテナンスするだけの価値を意識して、作成されている設計書ってどれぐらいあるんだろう。

ある機能•非機能要件にたいしてどれだけの質•量の設計書が必要だという指針ってあるのかな。作成するコストとそれをメンテナンスするコストを加味しているような指針。設計書がどれだけ閲覧されて、読まれているかという回数•ん時間から、設計書ごとの重要性がわかるかな。あと、ひとつの設計書を開いたらかならず、別の設計書をひらくルートがあるなら、その設計書同士の関連性がわかるとか。




ひきのうようけん


非機能要件という用語を使うといままで自分が、漠然と見落としていたものに焦点があたることがわかったのが、今週の成果。
非機能要件には含まれるものは、可用性、性能、信頼、運用、メンテナンス、拡張性、保守性、保守性、移行、セキュリティとかある。

小さいアプリを作るうえでも、非機能要件として、文書化しておくとのちのち助けになるなと。

あと、プロダクトのライフサイクルというか、まあいつまでサポートするのかとか、あらかじめ決めておくとよい。
作ることに精一杯なんだけど、まあ、生産物の死まで意識しとかないと。

非機能要件を意識しておくと、ソースコードを検討するときの視点が確立することもわかった。

ソースコードが冗長であることは今後の保守性、拡張性をさまたげるのでだめだよ、んで非機能要件を満たしていないよとか。

機能要件を満たして、非機能要件を満たして、はじめてクローズとなる。

何をいまさらといわれそうだけど、まあ、ようやくこういうことが実感として感じられたわけだ。>_<!


参考




2011-03-15

おらくる ろけーるびるだーその2


oracleです。LocaleBuilderです。試しているのはWindows上でです。

先日はカスタムキャラクターセットをDB適用できてひと安心と思ったら、今度は、Javaのプログラムからアクセスできない。
で調べたら、カスタムキャラクターセットを適用したら、アクセス用のJarを作成しないといけないようだ。



下記のようなBATを作成してNLTファイルからgdk_custom.jarなるものを作成してJavaプログラムのCLASSPATHに入れました。


set ORACLE_HOME=xxxxxxx
set CLASSPATH=%ORACLE_HOME%jlib/orai18n-tools.jar
set CLASSPATH=%CLASSPATH%;%ORACLE_HOME%lib/xmlparserv2.jar
set CLASSPATH=%CLASSPATH%;%ORACLE_HOME%jlib/orai18n.jar
set TARGET_NLT=xxxx.nlt

java Ginstall -a %TARGET_NLT%


手順として面倒だな。
あとorai18n-tools.jar以外の必要なクラスパスがのっていなかったのでtry&エラーして探したけど。
カスタムキャラクターセットを修正した場合、WebアプリケーションからDBオラクル接続しているケースとか毎回このjarを作成してインストールしてあげないといけないのかしらん。




2011-03-14

おらくる ろーけるびるだーその1


自分用メモです。
オラクルです。Locale Builderです。
windows版のオラクルでためしてます。
キャラクターセットをいろいろいじってます。

で何がしたいかといいいますと、変換できない文字を?にしてしまう動作を、変換できない場合は■に置換するというふうにしたいわけです。


LocaleBuilderで新しいキャラクタセットを作成します。
既存のJA16SJISTILDEをベースにしてつくってます。
で、文字の置換で、デフォルトのマルチバイト置換文字を?から変更したいと思います。


ロケール・データのカスタマイズ
まあ、この辺はとんとんと。

つぎは、
CSALTER

まずスキャンして

csscan \"sys/oracle@dbname as sysdba\" full=y


cd %ORACLE_HOME%/rdbms/admin/sql


sqlplus / as sysdba
SQL> @csalter.plb normal


なんとなくできた。

きちんとまとめよう。




2011-03-13

おらくる でーたべーすでJIS X 0213(第3、4水準)に対応するには




JIS X 0213で追加された文字に対応しているデータベースキャラクタセットは、Oracle Database 10g R1以降のAL32UTF8だけです。文字化けに関するトラブルに強くなる【実践編】(3/4) − @IT


あと、
AL32UTF8以外のキャラクタセットはJIS X 0208をベースとしたキャラクタセットであるため、JIS X 0213で追加された文字には対応していません。また、9iR2以前のAL32UTF8はUnicode 3.2に対応していないため、JIS X0213で追加された文字には対応していません。文字化けに関するトラブルに強くなる【実践編】(3/4) − @IT


えーと、つまり9iR2以前は、AL32UTF8といえども、第3、4水準は扱えないということですかね。LocaleBuilderでキャラクターセットをつくりなおさないということなのかしら。

ちなみに、UnicodeがJIS X0213をフルサポートしたのは、2002年のUnicode3.2から。
あと第3、4水準がJISでとりこまれたのは、JIS X0213から。

Oracle Database 10gがリリースされたのは2003年みたいなので、たしかに説明がつきそうなかんじ。

参考




2011-03-05

actionscript 練習 今日も元気にくろーじゃー


ActionScriptです。

クロージャを使えるのはべんりだなーと。
でも説明しろといわれるとうまく説明できないんだよねー



BTN.addEventListener (MouseEvent.MOUSE_DOWN, function() {
var i:int = 4;
var myTimer:Timer = new Timer(100, 3);
myTimer.start();
myTimer.addEventListener(TimerEvent.TIMER, function() {
trace("** JUMP:" + i--);
});




 

プログラマの本棚