NumberSet

SSS(G) ML の話題から

「小さい月(2,4,6,9,11)を判定する式をJavaではどう表現するか」という問題があり、それについて考えてみた。

(x==2 || x==4 || x==6 || x==9 || x==11)

これでいいと思うが、オブジェクト指向ではこれを判定するクラスを考えることから設計が始まる…

続きを読む

カテゴリー: Java

Childrens’ day

001307.jpg子供の日だったが、

あいにくの雨で、こいのぼりをあげるのはやめた。

写真は、実は5月2日に撮影したもの。

連休もあっという間に終了です。

遠出はしませんでしたが、それなりに

毎日忙しく家のことをやっていた感じでした。

Program

001306.jpg休み中になんとかしようと

思っていたプログラム修正が

あまりはかどらない。

着実に修正は進んでいるのだが、

GUIが多すぎて、テストしにくいというか。

もっときちんとテストケースを作成しながら

作ればよかったのだが、開発開始当時にはまだJUnitとかなかったからなぁ。

といっても仕方がないので、デバッガで動作させながら、修正。

Nanohana

001305.jpg今日は実家へ顔を出しに行く。

なっぱを家族でとりにいくことになって、

みんなで近くの畑まで散歩がてら

収穫に行く。

風が強くてちょっと肌寒かったが、まぁ楽しめた。

菜の花がきれいだったので、とりあえず撮影。

しかし、昨日の芝の疲れがあってか、ちょっとつらかった。

Shiba

001304.jpg
芝をうめてみた。

30枚も購入したが、

10枚分の地面をならすので

体力を使ってしまい、10枚は

かなりいいかげんにおいた。

残りの10枚は、買ってきたまま放置することに。

時間がとれたらやろう。

Exit statement

001254.jpg
写真は本文とはまったく関係ないですが、ファミレスでゲットしたブロックです。最近のお子様ランチにはこういうのがつく。

閑話休題
VBがC#やJavaよりもさえている1つの事例ではExitステートメントは良い機能として捉えられているようだが、ラベル付きbreak文とかにくらべて良いとは断言できない。そもそも、そういう処理にせざるを得ない場合には設計を見直すべきだろう。逆に、そうせざるを得ない場合はレアパターンなので、その場合にはラベルを有効に使えばいいだけではないだろうか。オブジェクト指向ならprivateメソッドにその処理を分離してreturnしても良いぐらいだろう。たしかに、Exit doとかは役に立ついい文法だが、それほどインパクトはない。

自分がVBのメリットをあげるとしたら、WYSIWYGなGUIエディタ、視覚的に理解しやすいオブジェクト指向言語という点だろう。他の言語からいろいろな良い機能をうまく取り込んではいるが、文法的にはBASICにつぎはぎをしているため、エラー処理の構造化がしにくいとか、ブロック範囲の把握がしにくいと感じる。

デメリットについては、GUIをもたないプログラム作成には強くないイメージがあり、ライブラリ化が苦手だという印象がある。MVCを分離できるように意識して設計し、VBでViewをプロトタイピングしてインタフェース評価を先行させながら、バックエンドをC#なりC++で構築するというのが、いいんではないだろうか。(ってよく言われてることですが)

同じように疑問に感じる人がいたようです。
Top > @IT会議室 > Insider.NET 会議室 > VBがC#やJavaよりもさえている1つの事例

カテゴリー: etc

Mobi

001287.jpgうわさのモビたべてみました。

ベーコン味は、ビールにあいそうな感じ。

チョコ味は、これから。

ほんとうは、辛口もほしかったんだけど、

体調を考えて次の機会にすることにしました。

パッケージの人たちはどうやら家族という設定

らしいです。

ミルクチョコくんの

「口溶けの良いチョコが魅力のプレイボーイ」

なんて紹介は笑える。