ホームページ > 記事 > ウェブフロントエンド > 8 年の歳月を経て、HTML 5 がついに完成しました。 _html/css_WEB-ITnose
HTML5 が世界を変えることについて私たちが初めて話したのは、おそらく Steve Jobs が、Adobe がマルチメディア開発を独占していた時代に、iOS では Flash と互換性がないと主張したためでした。あれから何年も経ち、誰もが HTML5 について話しているにもかかわらず、ほとんどの人はそれがまだ改良中のシステムであることさえ忘れています。
2007 年に W3C (World Wide Web Consortium) が HTML5 プロジェクトを設立し、2014 年 10 月末までにこの 8 年間の仕様が正式に完成しました。次に、HTML5 はネイティブ (ネイティブ) アプリの世界を真に破壊し始めます。この種の警戒心が少し煩わしくなってきましたが。しかし、HTML が何年にもわたってたどってきた道を振り返ると、その力を疑う必要はなくなります。
HTML5 の開発の歴史は、ユーザーのニーズ、テクノロジー開発者のニーズ、そして巨大なビジネス上の利益によって推進されてきました。インターネットの初期には、ユーザーがブラウザを開いてインターネットの世界にアクセスできるのは魔法のようなものでしたが、2005 年頃にインターネットが発展すると、次の変化が起こり始めました。それがブロードバンド インターネットでした。
ブロードバンドの普及とコンピュータの性能の向上により、人々はインターネットを介してニュースを読んだりメールを送受信したりするだけでは満足できなくなり、ストリーミングビデオやウェブゲームなど、より高い帯域幅を消費するエンターテイメント製品が登場し始めています。実際、ビデオやゲームは古くからのニーズであり、インターネットが普及していないときは、VCD やゲーム ディスクをオフラインで送信することで需要を満たしていました。その後、インターネットが徐々に普及し、人々はソフトウェアをダウンロードすることで使用方法を変更しました。 + ローカル メディア プレーヤー、より大きなクライアント ゲームをダウンロードします。
しかし、より良い消費者エクスペリエンスを提供する新しい方法が登場し、ストリーミング メディアやウェブ ゲームなど、これまでのすべてを覆しました。 Youtube などの企業がその流れを掴んで急成長し、さまざまな Web ゲーム会社も誕生しました。
HTML 標準は業界の変化を把握しておらず、時間に応じて進化していないため、ブラウザ製品はブラウザ プラグイン、つまり Flash によってアップグレードされていません。この商用プラグインは何億ものブラウザに導入されており、事実上の標準となっています。 2005 年、Adobe は Macromedia の買収に多額の投資を行い、Flash を傘下に収めました。この買収が、FLV ストリーミング メディアの典型的なケースに分類されることは明らかです。 Flash ゲームはインターネットを席巻しました。Adobe は新しい産業のアップグレードで多額の利益を獲得しました。
事実上の標準となった商用製品である Flash に加えて、W3C は別のプライベート拡張プロトコルのメーカーという困惑に直面しています。当時、IE はデスクトップ ブラウザを独占しており、多数の IE 専用構文を拡張していましたが、開発者はこれらの言語を誰が定義したのか知りませんでした。 Web 世界全体が Microsoft + Adobe の 2 社に誘拐されました。
多くのIT巨人、特にAppleとGoogleは落ち着きがありません。 PC オペレーティング システムの世界で突破口を開くのは難しく、Apple は Web ブラウザに大きな期待を寄せていますが、新興企業の Google は Mozilla を大きく支援していますが、YouTube 買収後も IE の地位に大きな影響を与えていませんでした。ライフラインが Adobe の手に渡ったのは非常に残念です。さらに、Google が IE の検索ボックスと Adobe FLV に対して支払っている年間料金は、実際には少額ではありません。
皆さんは W3C の議長ユニットなので、HTML5 の作業を再開しましょう。はい、これが実際に HTML5 が誕生した方法です。
2. HTML5 の第 1 段階: Web の強化と独占の打破
HTML5 標準をアップグレードする過程で、Apple と Google もブラウザ市場を再編する機会を捉えて、一方では HTML5 仕様に参加し、他方ではブラウザ製品に熱心に取り組みました。 Apple はまず Safari の開発を精力的に開始し、WebKit オープンソース プロジェクトを設立し、Safari を Windows プラットフォームに移行しました。Google は当初 Mozilla のスポンサーとなって Firefox を開発し、その後独自の v8 エンジンを開発して WebKit と統合し、2008 年に Chrome を正式に開始しました。新世代ブラウザ戦争で始まった「IEの私的仕様+Flashが標準ではない、我々が標準だ」というスローガンは、瞬く間に多くの人から批判される独占の代表となり、さらには開発を妨げる罪人となった。 Web (当時、IE6 はすでに存在していました。何年も更新されておらず、Firefox の進化を恐れていません)。
、
しかし、この時マイクロソフトもミスを犯し、仕様を完全にはサポートしておらず、相互に互換性のない一連のIE7、8、9、10を発売し、開発者の支持を完全に失ってしまいました。
Adobe の Flash は抑制され、Web の覇権者としての地位を失いました。IE の非公開標準は抑制され、最新のモバイル バージョンの IE が WebKit 構文をサポートし始めるまで、IE の市場シェアは低下し続けました。これは本当に残念です。 HTML6 が WebKit の独占を打破する時期が来たのだろうか。
Chrome と Safari の急速な進歩と IE+Flash の衰退により、HTML5 は終わりを迎え、次の時代であるモバイル インターネットに入りました。 HTML5 のクロスプラットフォームの利点は、モバイル インターネット時代にさらに強調されます。 HTML5 は、PC、Mac、iPhone、iPad、Android、Windows Phone、およびその他の主流プラットフォームで動作する唯一のクロスプラットフォーム言語です。 Java と Flash は両方ともこの地位を夢見ていましたが、その夢は iOS で終わりました。この時点で、HTML5 に基づくクロスプラットフォームのモバイル アプリケーションの開発が検討され始めました。当時、ネイティブ アプリケーションは、C/S 構造から B/S 構造への移行と同じように、単なる移行にすぎないと多くの人が信じていました。さらに、Objective-C と Java を学ぶのは非常に難しいので、Web 開発を知っているので、HTML5 に挑戦してみてはいかがでしょうか。
W3C は、カメラや GPS などの携帯電話固有の API を備えた HTML5 を拡張するために、この時点でデバイス API ワーキング グループを設立しました。しかし、問題は、モバイル インターネットの初期のイテレーションが速すぎて、モバイル OS が常に使用されなかったことです。メーター、距離センサー、気圧計のハードウェア API を拡張します。 。 。携帯電話のOSは毎年メジャーバージョンアップが行われます。何百ものメンバーユニットが共同で意思決定を行う組織である W3C には、標準草案の提案から合意に達するまでの非常に複雑なプロセスがあり、モバイル インターネットの初期の急速な反復に追いつくことができません。
PhoneGap の出現により、開発者に窓が開かれました。多くの人は、PhoneGap がブラウザの欠点を補うために API を拡張し続けることを期待しています。 Adobe は PhoneGap を見て、世界での地位を回復する希望を抱いたように見えましたが、Adobe が PhoneGap を買収した後、これには多くの問題があることが判明し、オープンソースでは Adobe が Flash のような商業的利益を得ることができなくなったため、寄付することになりました。 PhoneGap は Apache に変更され、Cordova 用に名前が変更されました。
さまざまな理由により、Cordova の位置付けは最終的にブラウザの機能強化にはならず、ハイブリッド開発へと移行しました。当時の背景を踏まえると、ネイティブはかけがえのないものであり、「ネイティブ+HTML5」というハイブリッドモデルの方が理にかなっていると考えたのです。そのため現在では「ネイティブエンジニア+HTML5エンジニア」が協力してアプリを完成させるためにCordovaが使われることが多くなりました。
このとき、Facebook は W3C に参加し、モバイル Web ワーキング グループの設立を主導しました。 FacebookはWebサークルに属しており、モバイルOSに独自の領域を持たず、AppleやGoogleが管理するネイティブアプリケーションのエコシステムを好まない。モバイル Web ワーキング グループの重要な目標は、HTML5 で開発された Web アプリケーションがネイティブ アプリケーションのエクスペリエンスを実現できるようにすることです。しかし、努力しても結果は失敗、ということは裏目に出ました。 2012 年、Facebook が HTML5 を放棄したというニュースが世界中の IT メディアに溢れ、HTML5 は即座に背景に追いやられました。
なぜ Facebook は HTML5 を放棄したのですか?重要なのは、当時、HTML5 に基づいて優れたモバイル アプリを作成することは実際には不可能だったということです。 Twitter などの競合他社のネイティブ アプリと比較すると、Facebook の HTML5 バージョンはユーザーを満足させることができません。たとえば、プッシュ機能では、HTML5 プッシュとネイティブ プッシュ エクスペリエンスの間には依然として大きなギャップがあり、HTML5 アプリケーションでの白い画面の切り替えや、スムーズでないプルダウンの更新/横スライド メニューなどの多くの問題は言うまでもありません。ネイティブ エンジニアがシェイク、QR コード、音声入力、モーメントへの共有などの機能を簡単に実装しているのを見ると、HTML5 エンジニアは自分たちが間違ったチームに所属していると感じます。
たとえ Facebook がコントロールされることを好まないとしても、ユーザーに見捨てられる危険を冒すことはできません。そしてFacebookはモバイルブラウザのコアを習得していないのだろうか?ブラウザーが追いつけない場合は、他のすべてが無駄になります。
携帯電話のブラウザのパフォーマンスはどのくらいですか?まず Google を見てください。Chrome は高性能ですが、Android のブラウザは WebKit で改造された粗悪な Android ブラウザです。もう一度見てください。iOS では他のブラウザ エンジンを App Store に置くことができません。 Safari エンジンを使用するアプリケーションは、Apple 独自の JavaScript アクセラレーション エンジン Nitro を呼び出すこともできません。その結果、Apple と Google はモバイル アプリの HTML5 仕様をブラウザーに積極的に実装しないだけでなく、HTML5 にさまざまな制限を課すことになりました。
当時のハードウェア機能の不足であったのか、モバイル OS メーカーの意図的な制限であったのか、結果は明らかです。モバイル インターネットの初期には、iOS と Android の後、世界はネイティブ アプリケーション エコシステムによって支配されるに違いありませんでした。最初に上司になった後、他の後輩が成長の機会を見つけることができます。
Facebook であれ PhoneGap であれ、初期の段階ではモバイル インターネットのシェアを獲得することはできませんが、粘り強く続ければチャンスは頻繁に現れます。
HTML5 は現時点で完成しますが、遅すぎることはなく、早すぎることもありません。ハードウェアのパフォーマンスは向上し、モバイル OS の反復速度は遅くなります。 HTML5 標準の完成により、すべての論争は終わりを迎えます。そして、HTML5 の時代が到来しました。かつて人々を希望に満ち溢れさせたこのテクノロジーは、Facebook などの多くの希望に満ちた開発者によって放棄されましたが、今では、かつてあなたを失望させた理由はもう存在しないと教えてくれるでしょう。これは少し驚くべきことであり、誰もが「それは本当ですか?」と尋ねずにはいられません。分解してみましょう。
HTML5 には「性機能障害」があることは業界ではよく知られています。つまり、HTML5 のパフォーマンスはネイティブほど良くなく、開発ツールもネイティブほど良くなく、呼び出し機能もネイティブほど良くありません。
これらの問題により、開発者は HTML5 を使用してネイティブ アプリと同じアプリを作成できなくなります。しかし、ハードウェアのアップグレードであれ、OS メーカーの戦略の変化であれ、関連ソフトウェア技術の成熟により、HTML5 の「パフォーマンス」の障害は解決されました。
Intel は、Android 4.0 ~ 4.3 スマートフォン上のアプリケーションが Android WebKit の代わりに Chromium エンジンをパッケージ化できるようにする Crosswalk エンジンをリリースしました。 Android 4.4 は将来的にはさらに多くの市場シェアを占めるでしょうが、主流の Android スマートフォンの現在のシステム バージョンは依然として 4.1 と 4.2 です。
専門分野でも多くの企業が良い成果を上げています。タッチセンサーの Cocos2d-html5、Egret ランタイム、Ludei CocoonJS は Canvas のパフォーマンスを向上させ、UC や Cheetah などの HTML5 ゲーム エクスペリエンスを向上させ、オーディオ プレーヤーやビデオ プレーヤーのパフォーマンスも向上します。
ハードウェアのアップグレード、ソフトウェアの成熟度、オペレーティング システム メーカーの戦略の変更など、それらはすべて HTML5 の爆発的な普及を促進しています。
ただし、私が HTML5 の流行と言っているのは、モバイル ブラウザの流行を意味しているわけではないことに注意してください。ユーザーはブラウザを開いて URL を入力するプロセスを嫌うため、HTML5 は良くないと言う人もいます。これは HTML5 に対する一面的な理解だと言えます。 HTML5!= 従来のブラウザ。プログラミング言語は依然として HTML、JavaScript、CSS ですが、配布方法は従来の Web サイトほど単純ではありません。 HTML5 アプリケーションへの入り口は、ブラウザを起動して URL を入力することであることはほとんどありません。これは、携帯電話のデスクトップに存在するアイコンである場合もあれば、スーパー アプリ (WeChat Moments など)、検索エンジン、アプリケーション マーケットなどから取得される場合もあります。広告提携。 。 。そこへの入り口はいたるところにあります。ネイティブアプリよりも入り口がたくさんあります。
5. ネイティブ アプリの破壊
しかし、HP 幹部がウォズに「誰がコンピューターを家に置くだろうか?」と語ったように、この考えは危険だと思います。 HTML5 は将来的にネイティブ アプリを確実に破壊するでしょう。 「性的パフォーマンス」の壁の撤廃はHTML5のデメリットを弱めるだけですが、デメリットが解消されるとHTML5のメリットは何でしょうか?開発者向け:
6. 他に何が変更されますか?
HTML5 の発生とネイティブ アプリのエコシステムの破壊は、多くの役割に影響を与える産業革命です。
現在、さまざまなブラウザ メーカー、アプリケーション マーケット メーカー、さらには ROM メーカーが、
より優れたブラウザ エンジンを統合するために懸命に取り組んでいます。 WeChat の組み込み Web ビューがより優れたキャンバス ゲームを実行できたらどうなるか、360 Mobile Assistant がクリックして使用する HTML5 アプリケーションを起動でき、パフォーマンス エクスペリエンスがネイティブ エクスペリエンスと一致したらどうなるか、Xiaomi rom にさらに強力な Web ビューが組み込まれたらどうなるかすべての HTML5 アプリケーションを Xiaomi 携帯電話で使用できるようになり、よりスムーズに実行されます。そう、この戦いはモバイルインターネットの世界での第二次世界大戦となるだろう。
アプリケーション配布市場は再編に直面するでしょう スーパーアプリの膨大なトラフィックは簡単に HTML5 アプリケーションへの入り口となり得、規模が大きいほど効果が大きくなるため、従来のアプリストアやオフラインのプリインストールさえも機能しなくなるでしょう。十分なトラフィックと非効率な発行モデルは市場の主流から締め出されるでしょう。トラフィックの多いアプリ ストアは、それ自体がスーパー アプリであり、適切に変換されていれば、HTML5 アプリの公開にも重点を置くことになります。
ネイティブ広告と統計 SDK プロバイダーは当惑に直面するでしょう、Google や Baidu などのウェブベースの広告と統計サービスはより大きな利点を得るでしょう。開発者は SDK をパッケージ化する必要がなくなり、スクリプトを導入するだけで済みます。
オープンソース技術はモバイルインターネット分野でさらに普及するでしょう。 HTML のオープン性により、多数のオープンソース製品が生み出され、それが HTML の隆盛を促進しました。 Github には多数の JS フレームワークがありますが、ネイティブのオープンソース コードの数は非常に少ないです。将来、モバイル インターネットの世界はオープンソースのおかげでより急速に発展するでしょう。ここには Github のようなメーカーにとってもチャンスがあります。
HTML の初期には、メモ帳でいくつかのタグを記述するだけで済みましたが、中期には HTML、JS、CSS がより複雑になり、より高度なテキスト エディターが必要になりました。コード量、複雑さ、開発モデルはネイティブ開発と同じですが、開発やデバッグの問題を解決するには、XCode や Eclipse などのプロフェッショナルな IDE ツールが必要です。メモ帳を使用してコードを記述できることに誇りを持っている一部の開発者は、考え方の変化に直面するか、より効率的な開発者によって排除されることさえあります。
HTML5 の力は多くのセキュリティ問題を引き起こすでしょう、そしてその解決策のアイデアは元のアイデアとは異なります 業界には新しいセキュリティ ベンダーのリーダーが現れるかもしれません。
書き終わると、少し話が大きくなった気がします。実際には、多くの変数があるため、将来がどのように発展するかを正確に予測することは誰にもできません。しかし、ユーザーと開発者の両方にとって利便性を高める傾向は間違いないと思います。 HTML5 の問題について一緒に議論し、論争から得た知識を磨き上げることは誰でも歓迎されます。