Webテクノロジーと開発速度および生産性

前回の投稿のテーマを続けて、 トゥシェフという言葉についてコメントします。

また、古いOS / 2のインターフェースでは、必要なCPUおよびメモリリソースが桁違いに少なくなりました。
はい、これは事実です-桁違いに。



私には普遍的な解決策はありません。もちろん、 今日の感覚(すべてのバージョンのHTTPとHTMLとCSSの形式の歴史的な層)で今日私たちに与えられた現実があることを理解しています。 そして、世界的に何かを変えることは非常に困難です。 しかし、私はすべての開発者に、Webテクノロジーの現状の不条理について考えてほしい。 そうでなければ、誰も基本的な決定権を持ちません。 したがって、事実を示唆するものを提供します。



「カルマ」を除く前に、これらの言語のHTMLとCSSのすべての謝罪者に最初に再現することを提案する20年前のUIの例:









20年前、1992年の春、IBMはOS / 2 2.0オペレーティングシステムを導入しました。 そのAPIの標準の組み込みGpiBox関数は、5秒でコード内に呼び出すことができ、指定された丸い角の半径で長方形を描画できました。



標準のGpiSetModelTransformMatrix関数を使用すると、これらの長方形は、回転、平行移動、伸縮、傾斜などのアフィン変換を任意の組み合わせで受けることができます。



描画では、モダンなベクターCorelパッケージのように、線の太さ、接続方法、端の描画モードを制御できます。



OSのグラフィックはベクトルでした。 描画された形状は、クリッピングパスに変換できます 。 標準APIは任意のクリッピングをサポートしていました。 正方形または楕円形だけでなく、ベジエ曲線からAdobeベクターフォントの文字の輪郭と組み合わせて境界線を構築することもできます。



クリッピングには、穴(ネスト、交差、および自己交差形状)が含まれる場合があります。 交差または結合することで、多くのクリッピング領域を結合できます。



標準機能を使用してコントロールを記述しやすくするために、特定のポイントの指定された近傍にあるすべての図形のリストを要求することができました。



約20年前、 2メガバイトのメモリを搭載したTseng Labs ET4000グラフィックスカードは、現代のグラフィックスカードに比べて12分の1ほど小さいため1秒あたりの角が丸い925の長方形を描きました。 または、1秒あたり243個の長方形で、 楕円形のクリッピングを適用し、内部に星形の穴を開けます 実際のテストデータは次のとおりです。



テスト:クリッピングなしの通常の描画。

   速度:9579.350マーカー/秒。
   速度:10841.799ライン/秒。
   速度:毎秒924.878ラウンドボックス(1/4画面)。
   速度:毎秒508.562ボックス
   速度:毎秒32頂点の928.161ポリライン。
   速度:毎秒32頂点の21.150パターンで満たされたポリゴン。
   速度:毎秒512頂点の0.286トリッキーな巻きポリゴン。
   速度:55.076が満たされ、1秒あたりの楕円がランダムに減少しました。
   速度:14.684ランダムにスケーリングされたビットマップ(320x200ピクセル)/秒。
   速度:1秒あたり256頂点の17.191のネストされたポリゴン。


テスト: 星形の多角形の穴がある楕円によるクリッピングを使用した描画

   速度:毎秒3808.684マーカー。
   速度:1126.427行/秒。
   速度:243.402ラウンドボックス(1/4画面)/秒。
   速度:1秒あたり57.427のボックスがいっぱい。
   速度:毎秒32頂点の71.152ポリライン。
   速度:毎秒32頂点の26.752パターンで満たされたポリゴン。
   速度:毎秒512頂点の0.250トリッキーな巻きポリゴン。
   速度:68.130が満たされ、1秒あたりの楕円がランダムに減少しました。
   速度:26.885ランダムにスケーリングされたビットマップ(320x200ピクセル)/秒。
   速度:毎秒256頂点の26.160のネストされたポリゴン。


そして今、「実世界へようこそ」:



高度な資格を持つウェブプログラマーは、既製のツールキットを使用せずに、他の人のコードを引き裂かずにこれを行うように指示された場合、IE 6をブラケットの後ろに残さずに、現在のバージョンのブラウザーで角の丸い正方形の描画をプログラミングするのに数日かかります。



パラメーターの設定の柔軟性を完全にサポートする必要がある場合は、このためにHTML、CSS、JavaScriptを使用し、補助PNGファイル、さらにはVML / SVGを準備する必要があります。 同時に、星形の穴のある楕円に沿ったクリッピングの問題はありません... :)



マウスカーソルがこの正方形内に収まったのか、丸みを帯びた角の外側に残ったのかを、ブラウザ間で正確に判断することに疑問の余地はありません...



同時に、最新のソリューションでは、マップ上に毎秒数十個の正方形が描画され、さらに第12世代(1992年と比較)が生成され、 曲線が画面に直接表示されます



したがって、可能な限り、私見はこの技術スタックからすべてを他のものに移すべきです。 断片化された非ブラウザHTML + CSSを出力段階でメディアとして最大のみ使用します。 :)



All Articles