2012-01-06 5 views
2

JScriptで従来のASPコードを書くことには、もっと人間的な構文、純粋なオブジェクトシステム、プログラマーの使い慣れ、一般的な迷惑行為の不足などがあります。既存のClassic ASPアプリケーションにレガシーVBScriptと新しいJScriptコードを混在させることもできます。Classic ASP/JScriptにはパフォーマンス、スケーラビリティ、または信頼性に欠点がありますか?

私はもっと使用されない理由があるはずだと考えてきました。それは勢いとドキュメンテーションの欠如ですか?または、パフォーマンス、スケーラビリティ、または信頼性の観点から、VBScriptに固執する良い理由はありますか?

N.B:VBScriptとJScriptの比較にのみ関心があります。私はClassic ASPが一般的に積み重なっていることを知っていますが、ここでは選択肢はありません。

答えて

2

私はJScriptを支持して投票しました。私は数年前にいくつかの研究を行い、いずれかを使用することに実際のパフォーマンスに影響がないことを発見しました。 多くの例とドキュメント(すべて古いもの)はVBScriptを使用しますが、JScriptをよく理解していれば翻訳が簡単です。

JScriptは、マイクロソフトのECMAScriptや「JavaScript」の味です。

  • JavaScriptは、Windows、Linux、Mac(およびiPhone、Android、Windows Phone、さらにはコンパイラ/インタプリタプロジェクト経由の.NETおよびJava)でも動作します。 VBScriptはWindows上でのみ動作し、私が知っている2つの主要なインタプリタがあります。Classic ASPとWindows Scripting Hostの両方が推奨されていません。
  • JavaScriptは、VBScriptのは(http://en.wikipedia.org/wiki/ECMAScript
  • JavaScriptは'95
  • マイクロソフト、グーグル、Mozillaとよりは積極的にJavaScriptを作成する方法を開発した後に、すべてのWindowsオペレーティングシステム上にデフォルトで含まれている独自の言語、オープンスタンダードですブラウザのような他の環境でも高速に動作します。 VBScriptのような開発はありません。これはかなり終わりです。
  • JavaScriptはOOP(継承、ポリモフィズム、クロージャによるカプセル化を含む)をサポートするオブジェクト/プロトタイプ言語です。これをVBScriptで試してみてください。 WSHで

http://javascript.crockford.com/prototypal.html

http://ejohn.org/blog/simple-javascript-inheritance/

http://w3mentor.com/learn/javascript-examples/object-oriented-javascript/example-of-encapsulation-using-javascript/

  • 両方のVBScriptとJScriptは、XMLを解析する組み込みツールを使用することができますが、JScriptのは、JSON
  • で勝っ
  • のJScriptを行うことができます1つか2つの非常にまれな例外を除いて、VBScriptは何でもできます。これらのRAREの場合、スクリプトエンジンActiveXObjectを使用してVBScriptを呼び出すことができます。
  • のVBScriptのみERROR

ONのVBScriptは、特定のAPIまたはインターフェイスとJScriptの上縁部を有しているが、この可能性がありました一方のJScriptは、偶数VB.NETを採用はるかに優れ/現代のtry {}キャッチ{}を有します容易に救済される。 jQueryはブラウザーのひどいDOM APIのために同じことをしますが、サーバー側のJScriptはこれが非常に柔軟であるため実行できます。

サーバー側のJScript(VBScriptではなく)では、Microsoftが受け入れているJavaScriptを知っている必要があるため、保守性の問題はないはずです(Windows 8、テンプレートでjQueryを含むVS2010を参照してください)。 。そしてはるかに)。

私は観客と無知ともっと関係があると思います。マイクロソフトは、VB開発者に対応しています。私は目がC#とJavaScriptに開かれる前に、VB開発者でした。

してください! JScriptを使用します。 JScriptを宣伝する。前進し、VBScriptをほこりの中に残しましょう。

1

多くの人が古典的なASPにjScriptを使用する人はほとんどいませんが、VBScriptが最も好まれます。パフォーマンスの違いはわかりませんが、VBScriptを使用してコードサンプル、「完了」しているユーザー、および他の形式のサポートを見つける方が一般に簡単です。

2

これを一番上に答えてみましょう。 VBScriptサーバー側を使用します。 2つの主な理由から。

  1. ASPコーディングに関するすべてのサンプル/例/説明の99.99%がVBScriptで示されています。
  2. VBScriptは、OLEオートメーションインターフェイスで動作するように設計されています。

JScriptサーバー側では、実際のスケーラビリティやパフォーマンス上の問題はありません。

信頼性にはさらなる資格が必要です。 JScriptエンジンは、VBScriptエンジンほど実用的ではありません。しかし、システムの信頼性に対する多くは開発者によって異なります。

VBScriptとJScriptの両方に精通しているので、私はJScriptをサーバー上で前から提供していると思っていました(2つのJavascriptが私の好みの言語です)。サーバーを実行するコードクライアントサイドを実行するためのコードと、すべてが同じように見えます。したがって、クライアントとはまったく異なる構文でサーバー側コードを持つことは過小評価されることはありません。

JScriptを避けるための本当の理由は、VBScriptがCOM/OLEオートメーションオブジェクトで動作するように設計されているのに対して、COM/OLEオートメーションはJScriptに「靴ひじ」をかけなければならないということです。私は常に、オブジェクトにプロパティを追加しようとしていたコードを見つけていましたが、実際にはActiveXObjectは、相続財産の作成を受け付けませんでした。 VBScriptのようにデフォルトプロパティのコンセプトをJScriptが理解していないため、VBScript(私があなたが言うことを期待していなかったことが分かっていることが分かっている場合)は、かなり簡潔です。

通常、サーバー側のコードはADODBと連携していることを意味し、JScriptを見て少し気になりました。 VBScriptはJScriptのADODBのはるかに自然なパートナーです。

また、あなたに続くASPメンテナンスの開発者/請負業者も考慮する必要があります。現代世界のASPで働くことは十分に悪いですが、あなたは非常に非標準的な方法でASPで働くことを好むあなたのビジネスをしていません。 5年後には、古いデベロッパーが、非常に古いASPコードを調整してお金を稼ぐにはまだまだ進歩がありますが、VBScriptで書かれていると思っています。

+1

思いやりのある答えに感謝します。個人的には、ASPコードに関するすべてのサンプル/例/ディスカッションの99.99%がうっ血であることがわかりました。実際にVBScriptのサンプルをJScriptに翻訳しなければならなかったので、実際に何が行われているかを理解し、コピー&ペーストだけではなく、サンプルの品質。私は保守性についてあなたの意見を見ています:私はこれを行う場合、私はいくつかのVBScriptプログラマーをいつか非常に不幸にするつもりです! VBScriptの既定のプロパティで作業する例を教えてください。私はそれに精通していない。 – smammy

+1

私は、ActiveXObjectが任意のプロパティの作成を受け付けないと言っているときに何を得ているのか分かりません。私が扱ったCOMオブジェクトは一般化されたデータ構造ではなく、WinHTTPやXMLDOMのような明確なユーティリティクラスです。なぜ私はこれらのインスタンスの任意のプロパティを作成したいのですか?また、私はPerl DBIのようなインターフェースを提示するADODBの周りにJScriptラッパーライブラリーを既に書いていることを認めなければなりません。それはかなり気の利いたものです。 ;) – smammy

+0

あなたは "非標準的な方法"について何を話していますか? Microsoftは、ASP.NET用のC#とVB.NETと同じように、Classic ASPにVBScriptとJScriptの両方を提供しています。 JScript/JavaScriptは、VBScriptよりもはるかに広く使用されているので、私はその言葉に心から反対しています。 JScriptから離れた開発者は、親密な手持ちを必要とする可能性があるコピー貼りコーダーよりも多くの可能性があります。どのようにこれらの開発者は、クライアント側のコードも? – aikeru

関連する問題