忍者ブログ
Since 14.Jan.2009:08:29 プログラミングと絵のブログ
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


実は仕事ではVBScriptでASPのサイトを作っているのですが

このVBScriptってのが終わってる

でも一応VBを元に作られたJScriptと対をなすスクリプト言語なのです

もちろんWindowsに初期装備

IEでは使えるけど他のブラウザでは使用不可

今日はひたすらVBScriptが他の言語に対して劣っている部分を挙げていこうかと

1.引数が固定個
JavaScriptみたいにargumentsで受け取ったり Rubyみたいに配列に多重代入したり C#とかみたいにオーバーロードしたりも不可。 おかげでDBのInsert処理をクラスにまとめようとしても オプションが渡せなくて断念した ハッシュで渡すのもめんどい そもそもKeyも取りにくいし
2.return無い
これはBasic系列だからみたいだけど 関数名 = 返り値 で返す。 ちなみにそこで処理が止まるわけじゃないので returnみたいに使うならexit function/subで処理を終了することも必要
3.try ~ catch ~ finally無い
on error resume next っていう命令でerrorを止めて、 あとはErr.Numberを使ってif文で例外処理。 何やってるか分かりにくい てか例外処理やってる気がしない。 ちゃんとやろうとするとif文でインデントだらけ
4.継承できない
一応できなくはないけど、直感的には無理。 コンストラクタでインスタンスを作成して、 そこからメソッドを呼び出すのが基本。
5.クラス変数、クラスメソッドが使えない
グローバル変数、グローバルメソッドで インスタンスを作成して、インスタンス変数を変更するのが基本 何が何でもnewでインスタンス作らないとメソッドが使えなくてめんどい
6.変数の宣言と初期化が別
JavaScriptなら var tmp = ""; のところを VBScriptだと dim tmp: tmp = "" または2行に分けて dim tmp tmp = "" で初期化。VBScriptでは:が命令の区切り。 付けても付けなくてもいい。
7.ハッシュが使いにくい
いちいちCreateObjectでオブジェクト作って、 Addメソッドで一組ずつ追加していく形で使う。 Rubyだったら{:symbol => "text", :symbol2 = > "text2"}とか JavaScriptだったら{key: item, key2: item2}とか オブジェクトを明示的に作る必要すらないのに
以上。グチでした。 いくら言っても上司がASPしか使わせてくれないので たまには外に発散しないとね? ストレスとか色々たまってますから
PR

Comment
Name
Title
Mail
URL
Comment
Pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
[33] [32] [31] [30] [29] [28] [27] [26] [25] [24] [23
«  Back :   HOME   : Next  »
カレンダー
11 2024/12 01
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
ブログ内検索
プロフィール
HN:
uguisu_an
年齢:
35
性別:
男性
誕生日:
1989/08/20
自己紹介:
基本的にテキトー
最新コメント
[10/01 くゆる]
[09/21 uguisu_an]
[09/17 mayigo]
[07/17 uguisu_an]
[07/15 shinh]
最新トラックバック
アクセス解析
フリーエリア
P R
忍者ブログ [PR]