.NetエンジニアのプロジェクトX
Amebaでブログを始めよう!

Trueとの比較について

Booleanという型は真(True)と偽(False)をあらわす型ですが時々以下のようなコーディングを見かけます。

まず、こんな関数があったとして・・・

Function HogeHoge(n as Integer) As Boolean
If n > 0 Then
Return False
End If
Return True
End Function

こんな使われ方をしている

If HogeHoge(0) = True Then ...

たしかに正しいコーディングなんですが・・・、

ただ、これだと結局は

If True = True Then ...

と解釈されるので

If HogeHoge(0) Then ...

と書いたほうがすっきりします。

このへんの話題って探せばあちこちで議論されていそうなんであまり深くは書きませんが、やっぱり、アセンブラやC言語とかを習得せずにいきなりVBから勉強を始めた人とかはこんなふうに書いてしまっているような気がします。

つーか、うちのプロジェクトはVBとCとPL/SQLの組み合わせでできているのでそのうちそういう人にCで書かせたら同じように組んでしまうんだろうか・・・。
そのときこんな話をしてもキョトンとされるんだろうなぁ。

これもひとつの魔力ですか(笑)

VBの足枷

突然ですが、VB6を使ってプログラムを組んでいるときに「不便だな~」と思っていたことのひとつに「Continueがない」ってのがありました(そうですよね?)。

そして時代は.NETになり、さまざまな言語が.NetFramework上で動くということと、C#とかではcontinueってあるし、VB.NETにだってあるさ。な~んて思いながらなんの疑問ももたずにContinueって書いて動かそうとすると動きません!それでも最初は「つづりを間違っているのか?」とか思ってさんざん「しーおーえぬてぃあい・・・」って口に出しながら首を傾げていました。

なんだってVBにはContinueってないんでしょう?
Break(Exit For, Exit Do)はあるのに・・・。

通信環境とノートPCのスロットの位置

私が働いているところはある客先なんですが、当然ネットワーク環境についてはかなり制限されています。

ただ、ノートPCの持ち込みは許可をもらえば可能なのでAirH"をそれにつなげ、インターネットを使って調べ物をしたりします。

と、ここまではどの職場でもよくあることだとは思いますが、客先の建物というのが窓のない閉ざされた空間なので電波の状態がよくありません。

で、私の使っているノートPCはちょうど左手を乗せるあたりにAirH"カードをさせるところがあるのですが、そこに左手を乗せると電波がとぎれます。

けっこうメールを出したり返事を書いたりするときにキーボードをたたこうとして左手を乗せてしまうので最近では左手がAirH"にかからないように(はたからみてると)かなり不自然な打ち方になってます。

最近のノートPCを見てもやっぱりこの左手を乗せるあたりにスロットがある機種をよく見かけるんですがもうちょっとカードを指す位置を上方にずらすとか背面にするとかしてあれば手が干渉することを防げると思うんですが、メーカーにそのへんを求めるのはわがままですかそうですか。

いや、単にぼやきなんですが、そういった環境で作業しているかたはその辺どうしてるんでしょうね。

マウスについて

仕事中、もっとも使う道具のひとつにマウスがあると思います。

私が仕事で使っているマウスはボール式なのでときどきすべりが悪くなります。

そのままにしておくとドラッグアンドドロップで失敗しそうになったりして危険なので
ふたを開けて掃除しています。

たまたまほかの人のマシンで作業をするときにそこのマウスを動かすとやっぱり
すべりが悪いときがあるので「掃除したら?」と聞くと、あまり気にならないそうな。

ウインドウをちょっと動かしたいだけなのにものすごい神経をすり減らしてしまって
生産性とかにも影響でそうなもんなんですが、そんなもんなんですかねぇ。

続カップラーメン

おまけです。カメラが向いていた先です。
その先にあるもの

いや、リクエストがあったもので。はい。

もう一枚。
その先にあるもの2
こんなところでかんべんしてください。

カップラーメン

なんか誰も書かなくなってますね~。
もう、ねたなんてなんでもいいんでいろいろ書き込んだらいいと思いますよ。

そんなわけで昨日WPCEXPOに行ってきました。
IT業界の有名どころがその会社の売り商品を展示していましたよ。
モバイルと携帯電話が結構多かったですね(液晶なんかもあったか)。うわさのW-ZERO3もありました。
すごい人だかりでした。
あと働くおね~さんもいっぱいいました。(^o^
そんなおね~さん達にカメラを向けている人達におもしろい人を発見しました。

カップラーメン?
写真じゃよくわからないかもしれませんがカメラのフラッシュの部分(レンズだったかもしれない)に
カップラーメンをくっつけていました。
カメラの撮影についてはよくわからないんですが何か違いがあらわれるんでしょうか?
おしえてエライ人!

.NETのTIPSではないけど・・・

え~、トリビア的な話をひとつ。
Windowsでメッセージボックスが出たときに書かれている内容を
画像としてほしいときは「PrintScreen」キーを押せばいいわけですが、
テキストとしてほしいときはCtrl+Cを押せばクリップボードにテキストとして
内容がコピーされるそうです。へぇー、へぇー、へぇー

ChkDatas?

あるプログラム(VB.NET)の調査をしていたら"ChkDatas"って項目がありました。

ChkDatas...まぁデータのチェックをするんだな?ふんふん・・・と調査を進めて
いこうと思ったんですが

・・・Datas? ( ゚д゚)?

Dataの複数形?でもなんか違和感が。
つーかDataってそれだけですでに複数形じゃん。Datasなんて単語は存在しないよ。




ちなみに単数形はdatumです。

何からはじめよう

VBといえば、まずは「DIM」ですか(笑)

要するに、変数宣言ですね。


dim i as Int32


という風に記述します。

ちなみに、昔からBasicやVBを使ってきたことがある人は、

「VBなんだから宣言しなくても予約語じゃなければ変数として使えるんじゃないの?」

・・・。確かに(笑)。私も、そう思っていました。


でも、.Net化されたVBでは、コンパイルしなければいけなくなったせいか、はたまた何でも型(Valiant型だったかな?)が廃止されてObject型になってしまったからでしょうか、dimで必ず宣言をします。

(ちょっと捜索してみると、「VariantType」って型?クラス?に変化してました。)

宣言しないと、ビルドで怒られるので、仕様ということでしょう。


まぁ、高速化をはかるためにも型を宣言してから使用するというのは理にかなっているわけで・・・。

こんなところまで気をつかわなければいけないほど、シビアな環境ってのはもうないかもしれませんが、必ず最初に変数を宣言しなさい的なコーディング規約を掲げているプロジェクトも少なくないので、そんなに馬鹿にしたものでもないのでしょう。


というわけで、VBでプログラムを書くなら、まずは「DIM」ですね。

いかんいかん

8月の初旬にブログ始めます、3日坊主にならないよう気をつけます~とか言っときながら1日坊主になってました。
いかんですね。さて久しぶりに書き込みますかねとログインしようとすると入れません。いかん!パスワード忘れた!思い出すのに苦労しましたよ。ということで、パスワードを忘れない程度に&ここの書き込みに早く慣れるようまたがんばってネタを集めて書き込んでいきたいと思います。では(って内容がなにもないっ)。