ここ数日、隣のプロジェクトのトラブルサポートをしていました。複数ユーザがある部分の操作を繰り返すと突然システムが落ちる、というもので、お客さんからすれば「内部試験で拾えよ」と言いたくなるのが当然のようなものでしたが、原因究明が結構難航していました。
最終的にはいくつかの問題が絡んでいたものの、メインとなる問題はスレッドアンセーフなコードがあったことでした。
サーバサイドの開発では、static変数やシングルトンであるものを使う際にちゃんとマルチアクセスされることを意識しないとホント危ないですね。
とりあえず、「複数ユーザ」と「落ち方が謎」というキーワードで「本当にスレッドセーフ?」と突っ込みが入る部隊で良かったです;といっても以前にハマった経験があったから、なんですが(^^;
……
…
そんなネタ切れの中、今日はコードの折り畳みに関してです。
VS2005&C#2.0で開発しているとき、よく
#region メンバ変数の定義
....
メンバの定義がずらずら
....
#endregion
のように書いて、コードを折り畳んでいました。
これは開発メンバの暗黙の共有事項になっていて、初めてみた他人のコードでも、まず開いた際にどのあたりを読めばいいのか、がわかりやすくなります。
これはNetBeansでもやりたいな…あるのかな、と探した所ちゃんとありますね。少し長いですが。
....
メンバの定義がずらずら
....
で、#regionと同じことができました。
以下のように書くと
こんな感じに閉じれます。
C#のときは#regionと気軽に自分で書いていましたが、NetBeansのこれはちょっと長いなぁ…と思っていたら
囲みたい所を選択すると、以下のようにヒント(電球)マークが現れて、これをクリックすると、囲むメニューが
でます。これを選べば簡単に作ってくれました。
良かった。