52

Classic ASP で約 2 年間、100 個の単純な Web フォームを作成してきましたが、.net に切り替える正当な理由がわかりません。ただし、私は .net に精通しているわけではないので、いくつか見逃している可能性があると確信しています。

仕事に関してよく耳にするポイントは次のとおりです。http://www.packtpub.com/article/Classic-ASP (私がこれらの考えをすべて共有しているわけではありませんが、出発点としては適切です)

この件について他の人が何を言おうとしているのか、非常に興味があります。

4

19 に答える 19

74

あなたは多くのものを見逃しています!ASP.NET は、かつて考えられていた従来の ASP よりも生産性、堅牢性、保守性が桁違いに優れています。サーバー側コントロール、サードパーティ コントロール、マスター ページ、フォーム認証、フォーム検証、適切なアプリケーション パーティション分割、簡単な展開、組み込みのデバッグとトレース、状態管理を促進する OO モデル。

WebForms または MVC を選択することもできます。何が欠けているかを徹底的に調査しないと、頭がおかしくなっていると言っても過言ではありません。

于 2008-09-05T03:27:57.103 に答える
54

ASP が好きで、ASP.NET に移行したい場合は、Web フォームを飛ばして MVC を学んでください。

于 2008-09-05T03:28:21.380 に答える
22

私にとっての最大の問題は、Webサイトではなく、アプリケーションを作成することです... UIは問題の小さな部分であり、大きな部分はビジネスロジックレイヤーとさまざまなエンタープライズ通信コンポーネントの作成です(SOAPを使用してSAPに接続しますか?問題ありません) !)。

.NET Toolkitを使用すると、すばらしいオブジェクト指向言語(C#)でプログラミングでき、強力なフレームワークが役立ちます。

VbScriptは、ビジネスアプリケーションを作成するためのすばらしい言語です。

ただし、単純な小さなWebフォームだけを実行する場合は、VbScriptを使用してください。

あなたのリンクに関する限り、それは基本的に要約されます:

  • WaaWaa、VisualStudioは好きではありません
  • WaaWaa、私は馬鹿のように本番サーバーで本番コードを編集したいと思います。
  • WaaWaa、コンパイルされた単一のDLLを展開するだけで、小さなサイトがasp.netアプリを展開する必要があることを私は知りません。

基本的に、一言で言えばその無知。

于 2008-09-05T03:51:04.147 に答える
20

具体的な質問 (「Classic と .Net の利点」) に焦点を当てると、.Net ではできないことで Classic でできることは 2 つだけだと思います。

1) 含まれています。ASP.Net では期待どおりに動作しません。もちろん、ASP.Net は同じことを達成するためのはるかに優れた方法を提供しますが、それでも多少の損失があり、古いサイトを .Net に移行するのが苦痛になる可能性があります。

2) ASP.Net は、アプリケーションのルート フォルダーの上には移動しません。私がいるところでは、物事が更新されたり、新しいものが追加されたりするにつれて、.Net アプリがあちこちに散らばっている、かなり複雑なイントラネットがあります。共通コードの 1 つのコピーをフォルダー階層のかなり高い位置に保持しながら、個々のアプリを独自の VD に分離できると便利です。しかし、それがソース管理の目的なので、大したことではありません。

私にとって、これまで Classic ASP と ASP.Net から移行した最大の利点は IDE です。関数が実際に実装されているファイルを探し回る必要がなく、関数呼び出しを右クリックして [定義に移動] を選択できるのは非常に便利です。大幅な時間の節約。また、関数呼び出し時のインテリセンス サポートとタイプ セーフも利点です。

于 2008-09-05T14:04:42.593 に答える
11

まず、パフォーマンス、スケーラビリティ、および Web アプリケーションのステートレスな世界により優れた基盤を提供するフレームワークです。

ウィキペディアの ASP.Net ページには、相違点に関するセクションがあります。

于 2008-09-05T03:25:13.057 に答える
11

私にとっては、Classic ASP は開発が迅速で、使用/習得が簡単で、過度に複雑ではなく、要求されるほとんどのことに対して非常に優れていると言わざるを得ません。

JScript/Javascript をメイン言語とする ASP は、コードを書くのがとても楽しいものです。VBScript は頭脳の浪費であり、それが Classic ASP の悪名の原因になっていると思います。さらに、遅いと見なされますが、速度とユーザー数に関するすべての記事は、10 年以上前のサーバーに基づいています。2 台のサーバーで 1 日 60,000 人のユーザーがアクセスするサイトを運営していますが、CPU はほとんどちらつきません。最新のサーバーは、より多くの機能を提供します。

近年の Javascript の使用、設計、およびベスト プラクティスの飛躍的な進歩により、ASP JScript コーダーは、生活をさらに容易にする多くの利点を得ることができます。私は Mootools をサーバー側に移植しました。これにより、すばらしいヘルプ、クラス モデル、優れたイベント モデルなどを大量に手に入れることができます。ASPはとても楽しいです。更新: Mootools には、ダウンロードできるサーバー側のビルドがあります ( http://mootools.net/download )。

ASP.net は非常に強力ですが、うまく機能させるには学習曲線に大きなランプがあり、サイト全体がダウンする可能性があります。行われたこと。

ギャップに最も適した方を使用して、現時点で両方を使用して非常に楽しんでいます。私は、ASP スクリプトが使用する .net に小さな CMS Cacher と Thumbnailer をビルドしました。両方の長所。

于 2009-05-21T10:16:18.493 に答える
8

古いコードを振り返って、「何を考えていたんだ!これはゴミだ。コードを書くのがずっと上手になった!」と言うなら。その後、プログラマーとして開発されました。

サイトがかなり一時的なものである場合 (つまり、すばやく構築し、特定の目的と期間に使用され、その後事実上閉鎖される場合)、これらのサイトを最も快適な方法で公開することはまったく問題ありません。

古いサイトにバックポートする必要がある (またはバックポートしたい) バグ、修正、および改善の長いリストがある場合、または「小さなサイト」が大きくなり、複雑になり、これが重大な悲しみを引き起こしている場合は、一歩下がって、これらのサイトをどのように構成およびサポートするかを再評価してください。

ASP.NET が非常に成熟した効果的なプログラミング環境であることに、私は大いに同意します。ただし、他のツールと同様に、一夜にして自動的に「スーパー プログラマー」になるわけではないため、正しい使用方法を知る (または学習する) 必要があります。

緊張をほぐす方法の 1 つは、作成する次の "サイト" が ASP.NET で開発されることに上司に同意することです。ASP.NET について理解を深める必要があるため、現在のサイト配信方法よりもかなり時間がかかることを彼に説明してください。

個人的には、私はまだ移行段階にあります (そして、v1 から ASP.NET を使い始めました!) かなり堅牢なクラシック ASP フレームワークを開発し、使い慣れているからです。ただし、私は ASP.NET を戦略的に使用しており、非常に強力であることがわかりました。.net フレームワークには多くのものが組み込まれているため、ドキュメントで見つけることができる限り、コードを書く必要はありません。

また、VB.NET を使用しないで、弾丸をかじって C# を使用することもお勧めします。言語の変更はごくわずかですが、以前とまったく同じようにサイトを作成する可能性は低くなります。悪い習慣を断ち切るのに役立ち、新しいテクニックを学ぶ機会を与えてくれます。

幸運を!

于 2008-09-05T06:07:20.950 に答える
6

「デバッグ」という言葉があります。これを使用する必要はありませんが、常に使用します。.Netでは、Visual Studioを使用している場合、ASPでコードをデバッグしようとする場合と比較すると、すばらしいデバッガーがあります。

于 2008-09-05T04:42:02.077 に答える
5

このスレッドで質問に回答することはめったにありません。簡単な方法をとる代わりに、私はそれを突き刺します:

言及されていないいくつかの利点(JScript中心):

  • 言語全体を学び、それを十分に使用すれば記憶に残すことができます。.NETFramework全体を知っていると主張する人は誰も知りません。これにより、コーディングが非常に高速になります。
  • 弱いタイピングchar-これにより、何かをすばやく叩くときに、より迅速にコーディングできるようになります。たとえば、ほとんどの場合との違いを本当に気にしますstringか?(ここに宗教的な炎上戦争を挿入してください)
  • Eval:この非常に悪意のあるキーワードは、実際には非常に強力であり、実行時に非常に興味深い方法でコードを操作できます。
  • クライアント/サーバー言語の互換性:JScriptとJavascriptの類似性は、クライアント側で使用するのと同じインクルードファイルをサーバー側の検証に使用できることを意味します。
于 2010-01-16T13:06:12.657 に答える
5

ここにいる全員が有効な点を指摘しています。

私は 3 年前に .NET 2.0 に切り替えるまで、従来の ASP 開発者でした。

元に戻すことはできませんでした (いくつかの従来の ASP サイトをまだ修正する必要がありますが)。

データリピーターはデータをすばやく表示するのに最適ですが、データセットは素晴らしい機能を提供しますが、「大きな」サイトでのパフォーマンスに関してはひどいものです。公平を期すために、私は従来の ASP で配列を使用して、迂回的な方法でデータセットを作成してきました。データセットを使用するのは、e コマース サイトのバスケットだけです。私はrs.movenextなどが恋しいです...

FlySwat は、多くの開発者が犯す最大の過ちの 1 つを犯しました。

はい、.NET がもたらすビジネス ロジック、オブジェクト指向など... は優れています (スケーラビリティについては 100% 同意しませんが、間違いなくより拡張可能です)。「アプリケーション」という用語を使用するというナンセンスは忘れてください。私は n 層のオブジェクト指向サイトを構築する多くの優れた .NET 開発者に会ってきましたが、彼らは Web サイトを構築することの独自性を本当に理解していません。状態、またはJavascriptに過度に依存しているという厄介な問題など。これらの開発者のほとんどは、通常は W3C を満たしていない MS タイプのサイトを構築しており、クロス ブラウザ フレンドリーではなく、適切に劣化することはありません。また、バック オフィス アプリケーションであっても、IE のみと互換性があるということは受け入れられません。

.NET はまた、単純なサイトを「太らせる」傾向があります。.NET は、多くの点で、WinForm 開発者が Web サイト (または、彼らが好む Web アプリ) の構築を開始する方法でした。問題は、これにより、状態や標準などを気にする必要のない贅沢な開発者が大量に発生したことです...

どんな .NET サイトも従来の ASP で構築でき、エンド ユーザーにとってより高速 (ページの応答時間) に実行できると、私は今でも主張しています。

...しかし、私は古典的な ASP の良い思い出を持っていますが、イメージング、暗号化、圧縮、簡単な Web サービス統合、適切な OO、適切な n 層、拡張性などに関して .NET でできることは... .NET に利点があります。ユーザーが Cookie を受け入れない場合にセッション ID をクエリ文字列に書き込むように web.config に 1 行のコードを追加するだけのようなばかげたこと (これは従来の ASP では苦痛でした) でさえ素晴らしいです。

.NET に移行してください。後悔することはありませんが、いつか自分自身を犠牲にしてください (特に、オブジェクト指向 (継承、抽象化、ポリモーフィズム、およびカプセル化) について知らない場合)。従来の互換モードで .NET サイトの構築を開始しないでください。 VBScript がメインの開発言語だった場合、MS や他の人が信じているほど簡単にはジャンプできません。

私にとって最も重要なことは、古典的な ASP 時代から基本的な Web サイト アプリケーション (;-)) の設計を継承してきたことであり、これは言語間で決して変わるべきではありません。

于 2009-02-01T00:44:43.063 に答える
5

単純なサイトの場合、特に HTML をよく知っている場合は、実際には ASP.NET よりも ASP.NET を好みます。ただし、ASP では、ビジネス ロジックをビューから分離するのは困難です。あなたが書いたコードは、読むのも維持するのも難しいでしょう。

ただし、PHP は ASP よりも優れており、基本的なレベルでは多少似ています。また、自己完結型の Web 開発スタックに興味がある場合は、いつでも Rails または Django を使用できます (ただし、学習曲線ははるかに長くなります)。

于 2008-09-05T03:26:54.300 に答える
5

ASP.NET の利点の 1 つは、従来の ASP で行ったのとまったく同じようにサイトをコーディングできるオプションと、豊富な .NET フレームワークへのアクセスがあることです。既存の機能を保持し、必要な新しい ASP.NET 機能を追加できます。それらはよく混ざります。

残念ながら、参照記事の著者は、彼の発言から明らかなように、ASP.NET の背後にあるテクノロジにあまり精通していません (また、従来の ASP でさえない可能性があります)。彼の指摘のほとんどは無効であるか、単に間違っています。

于 2008-09-05T03:27:31.070 に答える
3

作成するのが単純な小さなWebページだけの場合は、何でもします。または、PHPをさらに学ぶことをお勧めします。あなたが得ようとしている応答のほとんどは、Webアプリケーションを作成する人々からのものであり、そのためにasp.netは、パワーと保守性において従来のaspからパンツを吹き飛ばします。

于 2008-09-05T04:05:20.213 に答える
2

WebフォームをスキップしてMVCに直行すると述べた人を除いて、ここにいる全員に同意します。これは役に立ちません。Webforms は、多数のテーブル表示などを行うデータベース駆動型アプリケーションに非常に役立ちます。私はいくつかの非常に大きな Webforms アプリケーションに取り組んできましたが、問題なく動作します。MVC は、よりインタラクティブな「Web 2.0」タイプのアプリケーションに適しています。

于 2009-03-06T02:39:38.560 に答える
2

私はいつも Classic ASP を使っています。

ASP.net を数年間試しましたが、ほとんどの Web サイト開発には複雑すぎました。私の顧客もそれを理解できなかったので気に入らなかった. また、1 人の開発者に縛られていないことも気に入っています。

ASP.NET は変化し続けており、最新の状態を維持するには、莫大な/一定の学習曲線が必要です。MS は主要言語を C# に切り替えたため、移行がさらに困難になりました。

.net を使用すると、生産性が大幅に低下しました。チュートリアルやすべての方法の例をずっと探していたからです。

Visual Studio はピッグ スローです。

PHP の構文は醜く、さまざまなフレームワークが多すぎるため、開発者向けに学習することは不可能です。私の意見では、専任のスタッフがいるイントラネットでの使用にのみ適しています。

従来の ASP はロックダウンされており、数年前と同じように今日も完全に機能します。いくつかのライブラリ ファイルを使用すると、パイのように簡単にコードを記述でき、例はインターネット上で無制限に利用できます。

vbscript は正しく書かれていますが、ほとんどの人はそうではありませんが、読みやすく効率的なコードです。jQuery などのライブラリのクライアント側のものを残し、何倍も生産性が向上することに気付きました。

于 2011-02-07T21:11:56.867 に答える
1

「aspをaspxに名前変更し、コンパイルするまで変更する」アプリケーションをasp.netに移植したので、.NETでのaspクラシックスタイルのプログラミングでさえ、aspクラシックよりも優れていると言えます。VS はもちろん、成功の穴に落ちて Web フォームやコード ビハインドの方法に向かうよう促しますが、言語は ASP クラシックのパターンを再現するのに十分な表現力があります (つまり、多くのゴールデン ナゲット/インライン)。コード、クロスポスティングページなど)

COBOL はどの言語でも記述できると前に聞いたことがあると思います。それは古典的なASPにも当てはまります。

于 2008-11-28T19:49:39.357 に答える
0

コードを書くのではなく、ソリューションを作成することでお金をもらっているので、従来の ASP よりも ASP.NET の方が好きです。従来の ASP は、非常に小規模で単純なサイトでは依然として実用的ですが、もう少し複雑なサイトを作成する場合、ASP.NET の背後には依然として多くの機能があります。さらに、ASP.NET を使用しても、メモ帳を使用して、埋め込まれた vb または c# コードを含む .aspx ファイルを自分で作成することができます。Visual Studio は、多くの追加機能を提供するだけで、自分でコードをさらに記述する必要がなくなります。そして、私が言ったように、私はコードを書くことで報酬を得ていません...

于 2010-08-30T13:13:26.757 に答える
0

この時点で (CTO からの指示なしに) 従来の ASP を使用している場合は、縮小を確認する必要があります。またはあなたはマゾヒストです。または、悪魔主義者として、その場合、あなたは地獄にいるので、それを望んでいます! :p

重大な注意事項として... Web アプリケーションの場合、WebForms を使用します。

軽量で高速でダーティな Web サイトの場合は、ASP.NET MVC を使用します。

ASP の良いところは、言語に VB.NET、C#、Eiffel、Boo、または PHP を使用できることです。PHPについては、Phalangerをチェックしてください...

于 2009-07-01T01:25:16.010 に答える