次に、私がこれについてどう思うか、Webアプリケーションの開発の見通しについて、社内のメモをいくつか書きました。
1年後、テクノロジーの開発に関連して、私の仮定は多くの点でより適切になりました。多くの点で私は正しいと判明しましたが、一部の場所では間違っていました。
イラストとメモを修正して提供し、それらを記事の形にすることにしました。
内容:
- エントリー
- 死のシナリオ
- 精神死、 またはHTML-新しいアセンブラー
- 身体的死、 またはHTML-新しいTurbo Pascal
- すべてがとても深刻ですか?
- ウェブ技術が正しく理解されていれば精神的な死はありません
- ウェブ技術が発展しても身体的な死はありません
- おわりに
- 注釈
現時点では、世界はリッチWebアプリケーションの全盛期に入っています。
Webベースのプログラムは、従来のデスクトップアプリケーションに取って代わりつつあります。 Gmail、Googleマップ、オンラインオフィス、さらにはWebオペレーティングシステム...リストを自分で続けることができます。
ただし、Webアプリケーションの進歩により、xHTML、CSS、JavaScriptなどの主要なクライアントWebテクノロジーの要件が増加しています。
そして、これらの技術が増え続ける需要に追いつかない場合、これは彼らのゆっくりとした衰退につながります...
死のシナリオ:
精神的な死、
またはHTML-新しいアセンブラーITのd明期には、すべてのプログラムはアセンブラーで作成されていました。
プログラマーは、アセンブラーコードをなめ、それをより美しく、理解しやすく、効率的にしようとしました。
最も高度なアセンブラーにはマクロの使用などのチップが含まれており、最も高度なプログラマーはこれらのチップの使用方法を知っていました。
ただし、アセンブラは低レベルの言語でした。乗算や除算などの基本的なコマンドさえ欠けていたため、開発者は低レベルのコマンドを使用して手動で記述する必要がありました。
したがって、アセンブラーは高水準言語に置き換えられました。 この場合、アセンブラは物理的にどこにも行っていません-高水準言語のすべてのプログラムは同じアセンブラコードにコンパイルされます[1] 。 い非効率的なアセンブラコード。
しかし、アセンブラーは姿を消しました[2] 。 プログラマの意識から姿を消した。 彼らは高レベルの言語で書き始めました。すでにこれらの言語でプログラムコードを舐め、完璧に仕上げました。 そして、美しいC ++プログラムがcompiledいアセンブラコードにコンパイルされるという事実は、誰も気にしません。
美しいアセンブリコードを記述する機能は低下しました。 プログラマーの生活を楽にする高度なアセンブラーの存在は不要になりました-なぜ、アセンブラーコードがコンパイラーによって生成されるのか。
したがって、物理的にどこにも行かずに、アセンブラーはIT業界から姿を消しました。
同様の運命がxHTML / CSS / JSを待っているかもしれません。
Web全体で、xHTMLは主要なWebテクノロジーです。
Web開発者は、このテクノロジーを完全なものにしました。CSSを使用してコンテンツからプレゼンテーションを分離し、テーブルレスおよびセマンティックレイアウトを適用し、マイクロフォーマットを使用することを学びました...
ただし、xHTMLには、タブ、メニュー、ツリー、カレンダーなど、最新のWebアプリケーションに必要なタグはありません。
Microsoftが正常に使用したもの。 マイクロソフトは、Webテクノロジーに長い歯を持っています。なぜなら、オープンスタンダードであるため、(Windows APIとは異なり)マイクロソフトの力に従わないからです。 私たちはこれで何かをしなければなりませんでした、そして、MicrosoftはxHTMLを物理的に破壊することができなかったので、少なくとも開発者の心の中ではそれを消すことが必要でした。
これが、 ASP.NET Webベースモデルの登場です。 ASP.NETでは、高レベルのサーバーコントロール(メニュー、タブ、ツリー)で作業が行われ、C ++プログラムがアセンブラーにコンパイルされるように、HTML、CSS、およびJavaScriptに「コンパイル」されます。
xHTML / CSS / JSはWeb開発者の心から消えます。 さらに、彼らはある程度までウェブ開発者ではなくなり、通常のWindowsフォーム/ Delphi / Visual Basicパラダイム、古き良きWindows APIに戻ります。
ASP.NETは、私たちがこれまで長年教えてきたもの、つまり、明確なxHTMLコード、テーブルレスおよびセマンティックレイアウトなどを記述する機能を低下させます。 Webの基礎の1つであるCSSも価値が低下します。Webサイトのデザインは、カスケードCSSモデルとはイデオロギーが大きく異なるASP.NETテーマ( テーマ )を使用して設定できるためです。
開発者がJavaScriptを忘れる可能性があるため、Microsoftはスクリプト#をリリースします。これは、C#でクライアントスクリプトを記述し、それらをJavaScriptにコンパイルできるコンパイラです。
多くの開発者はASP.NETが好きではありません[3] 。 典型的なタスクに対する迅速で便利な解決策のために研ぎ澄まされています。 しかし、純粋なHTML、CSS、およびJavaScriptで、自明ではない何かを作成することははるかに美しいです。
ただし、自明ではないタスクが発生する可能性があり、場合によっては1%に過ぎません。ASP.NETでは、典型的なタスクの残りの99%をより速く解決できます。 おそらくこれはそれほど美しくはありませんが、ビジネスには開発速度が必要です...
他のWebテクノロジーは、ASP.NETとの競合が困難です。 PHP開発者がWindowsのフレームワーク内のDelphiパラダイムについて考え始める助けを借りて、 Delphi for PHP製品が最近登場しました[4] 。
物事がさらに進むと、ウェブ技術は新しいアセンブラの運命を待っています。 HTML / CSS / JSは、物理的には主要なWebテクノロジーのままですが、低レベルの言語になり、開発者の意識から消えることがあります。
肉体的死、
またはHTML-新しいTurbo PascalTurbo Pascal開発環境を覚えているでしょう。 それは、テキスト疑似グラフィックインターフェイスを備えたコンソールプログラムでした。 Turbo Pascalシェル開発者が持っていたのは、80 * 25 ASCII文字のマトリックスとその色と背景だけでした。 それだけです!
そして、これらのテキスト文字を不可能にしました:彼らは、メインおよびコンテキストメニュー、擬似3次元プッシュボタン、ドラッグアンドドロップウィンドウテクノロジーを備えたマルチウィンドウインターフェイスを実装しました...一般に、現在のほとんどすべてが現代のグラフィカルWindowsプログラムにあります。
ただし、80 * 24文字のテーブルの制限を超えることはできませんでした。 どんなに頑張っても、1文字より細いオブジェクトを描画したり、対角線、さらには曲線を描くことはできません。 Turbo Pascalのようなインターフェースは歴史的に衰退し、Windows GUIに取って代わりました...
そして再び、物語は繰り返されるかもしれません。 Turbo Pascalの幽霊はxHTMLの上に浮かんでいます...
Webの基礎-HTML言語は、(現代的な意味での)サイト、さらにはWebアプリケーションを作成することさえ意図されていませんでした。 Tim Berners-Leeは、Wordのような科学文書を簡単にマークアップするために作成しました。
そして今、科学記事のマークアップ言語とスクリプト言語に基づいて、Gmail開発者は、従来のウィンドウプログラムのインターフェース機能に劣らず、時にはそれらを上回る、完全に機能するメールクライアントを作成しました。
ただし、ウェブテクノロジーには制限があり、どんなに一生懸命努力しても、飛び越えることはできません。 純粋なxHTML / CSS / JSを使用すると、3Dグラフィックスを作成したり、ベクターアニメーションを作成したり、サウンドを管理したり、クライアント側に大量のデータを保存したりすることはできません...
変化はもうすぐです。 Macromedia(現在のAdobe)は、長年にわたってFlash / Flexをリッチインターネットアプリケーションの基盤として推進してきました。 マイクロソフトは比較的最近ですが、熱心にWPF / Silverlightを推進しています[5] 。
また、xHTMLが変更されない場合、Turbo Pascal疑似グラフィックインターフェイスの運命を繰り返し、IT業界から永遠に姿を消します。
すべてがとても深刻ですか?
そのため、クライアントのWebテクノロジーでは、2つの悲劇的な運命が予想されます。
- 精神的な死 :彼らは物理的に残りますが、ASP.NETなどの高レベルの抽象化に覆われた開発者の意識からは消え、低レベル言語になります-新しいアセンブラ。
- 物理的な死 :完全に消えて、SilverlightまたはFlexに取って代わります。
精神的な死はありません、
web-, , xHTML/CSS/JS - . , .
:
, ASP.NET (, , , ..), , xHTML .
, , xHTML : ,
<font>
. , .
«» xHTML . , xHTML ASP.NET , «» xHTML, C++ . xHTML [6], ASP.NET , 99% .
:
, xHTML . , xHTML , , .. , , , . , , . , xHTML , . CSS «», , , ; JS .
1:
:
— , ,<font>
.
— , , .
, xHTML, , — .
CSS «», , : , ..;
JavaScript — / , , ..
2:
, , — . , , .
, CSS JS, .
3:
, — . , xHTML,<div>
,<h2>
.
, JavaScript , .
CSS JS , , xHTML .
‑ , ASP.NET.
, xHTML , . , xHTML , , . .., , , — , — . , xHTML . , , ! ?!
«» Windows-, , . ASP.NET , xHTML. , Windows-, . web- Windows, , (themes) ASP.NET CSS.
web- — JavaScript ( — ).
JavaScript — , , , Java C#.
, JavaScript, : , --, , .. , , C++, Java, Delphi VB. - , JavaScript , «» .
, . …
— ,
, JavaScript, , Prototype.js, Microsoft Ajax Library ( Atlas), , JavaScript, .
Prototype.js , JavaScript, , JavaScript
— Richard Cornford
, «» xHTML/CSS/JS — , . , , , web- - .
,
web-« » .
web- , web-: 2D 3D , , , …
, Flash/Silverlight .
, IT- Turbo Pascal, .
, xHTML, CSS JavaScript .
, W3C, , web-.
, web-: , , .
Semantic Web: RDF, OWL SPARQL. Semantic Web , . , , SPARQL- « », : «
2- ?
»
, , web- 1995 [7].
, , W3C .
, , . - «» : Mozilla Foundation, Opera Software Apple, WHATWG, web-, web-.
, 7 , : WHATWG W3C. HTML5 ( Web Applications 1.0) [8], :
- -, HTML4/xHTML1.1 , web-:
<canvas>
— ,<video>
— , .. - -, DOM API : offline, /, Drag&Drop - !
HTML5 — HTML, web-.
, xHTML/CSS/JS , :
- web-;
- , , web-.
- ↑ , . , , , .
- ↑ , , . , IT-.
- ↑ , ASP.NET . ASP.NET — , , , .NET Framework. , ASP.NET - .
- ↑ «Delphi for PHP», , , . , «Delphi for PHP» .
- ↑ Silverlight, . .
- ↑ , . , ASP.NET' xHTML , .
- ↑ W3C xForms . Mozilla Firefox, , xForms .
- ↑ web-, (x)HTML5 :
www.wikimedia.org, : www.codegear.com, www.microsoft.com, www.w3c.org, www.json.org, www.whatwg.org, www.gmail.com, www.dotnetheaven.com, idesisnery.blogspot.com