ウェブを再び素晴らしいものにしましょう

画像



最新のウェブは、常に動いている複雑な動的システムです。 多くの記事で見られたように、新しいツールとフレームワークがほぼ毎日登場するため、すべての変更を追跡することは非常に困難になります。 知識は足場を持つ前に時代遅れになります。 もちろん、これはすべて、急速な開発と成長の明らかな結果ですが、これは必然的にWeb開発者に複雑さを追加し、職業に入るためのしきい値を増やします。



最初にbabelを構成し、次にwebpackを構成し、次に選択したフレームワークに固有の設定を処理して、単純なユーザーデータ入力フォームを作成する必要があるのは不合理です。 。 いいえ、ほとんどの場合、プロジェクトはすでに構成および構成されており、初心者は確かに、何をするのかを簡単に伝える運命に翻弄されることはありません。 しかし、それは本当に複雑になりすぎており、これらすべてのビルドシステムにかなりの時間を費やし、構成に苦労しているように見えることを認識する価値があります。



しかし、覚えてみよう-それは常にこのようなものでしたか? Webの作成者は、そのような未来を夢見ていましたか? いいえ、いまいましい、再びいいえ! 結局のところ、だれも、多くの場合い、だれもトリックに満ちている人はいませんでしたが、ウェブは異なっていました-シンプルでわかりやすい! ここにスクリプトを追加しました。スタイルはここにあり、ページレイアウトはここにあります。 それで、何が間違っていたのか、それは本当にすべてがとても悪くなったのか? 結局、javascriptとWeb全体が成長し、改善されただけで、言語はより強く、より表現力豊かになり、モジュール性が現れ、さまざまなアーキテクチャテンプレートの利点が明らかになりました。 私たちは本当に彼女を永遠に失ったのでしょうか?



画像

(壮大なスパイダーマン)



答えは実際には非常にシンプルで簡単です。 ウェブは本当に成長し、より複雑になりました。今では、ウェブテクノロジー向けに完全に記述されたマルチメディアアプリケーションや、ブラウザで3Dゲームを見つけることは珍しくありません。 しかし、主な問題は、私たちがまだ私たちに与える準備ができていないことをウェブから頻繁に望んでいることです-最新の技術と標準、実験的な建築テンプレート、すべてが最新で最も現代的であり、もちろんそれはどこでも誰でも動作するはずです、そしてすぐにください。 そして、ウェブパックが率いる野生のギャングがシーンに現れ、ボールを修正し始めます。 そして今、あなたはすでに複雑な構成でハングアップしており、あなたのプロジェクトは約1分半で、50メガバイトの重さです。 Finito la comedia。 構成の問題は、パフォーマンスをさらに絞り込み、サイズを小さくしようとする試みから始まります。 そして、組立ラインの設定に時間の大部分を費やした場合、どのような種類のアイデアの開発と実装について議論することができます。 あなたのチームのウェブパックのエキスパートを認めますか?



画像



私たちはこれに慣れていないが、これは正常であるという条件に達したが、他にどのように? タイプとフレームワーク、コーポラティズム、セキュリティに夢中になりました-口論さえできません。 しかし、この弱く型付けされた動的言語が考案された実験のこの簡単さと単純さはどこに行ったのでしょうか? そして、彼女ではなく、すべてが束と企業の山の下に消えました。 しかし、実際には何もできませんか?



立ち止まって考える価値はありますが、何をしているのですか? 結局のところ、webpack、ロールアップ、パーセル(必要に応じて下線)を使用して、ソースマップを使用してもデバッグできないこれらの読み取り不能なバンドルをすべて作成すると、誰かがこれを必要とするでしょうか? はい、すべてがそうです。バンドルから迅速かつ効率的に制作するには、どこにも手に入れることができません。また、最新のHTTP2でさえ、タスクがそれほど簡単になりませんでした。 そのため、開発者は秋の長い夕方にオフィスに座って、仕事に長く滞在し、数十万キロワットのエネルギーを燃やし、部門に詰め込み、企業に詰め込み、太陽の動きに合わせてシフトを世界中に詰め込みます。 それはまさにその通りであり、それが法律です。 Dura lex、sed lex。 シェークスピアの真の問題は、非難することなのか、非難することなのか-ビジュアルスタジオを開いた若いハムレットの唇を破って別の傑作を作る時間すら持たずに死ぬのです。



画像

(大丈夫)



しかし、待ってください、あなたはこれがすべて生産に必要だと言いましたが、開発はどうですか? 古き良き時代のように、サーバーを起動し、それを実稼働環境に送信する前にすべてをパックするだけで快適に開発できないのはなぜですか? そして、なぜ生産と開発に同じツールを使用するのでしょうか? 開発のために特別に調整されたソリューションを使用しないのはなぜですか?



そして、これは実際には論理的ではなく、代わりの選択肢がない場合、または単に慣れているからです。 しかし、あなたに選択肢があると言ったらどうしますか?



画像



hqに会う-Webアプリケーションを開発するための専用サーバー。 hqは、通常のサーバーでは処理できないすべてを理解するステロイド上の静的サーバーです。 JavaScript標準の最新機能が必要ですか、ブラウザはまだサポートしていませんか? -お願いします! ライブラリはcommonjs形式を使用しています-問題ありません! 特定の各フレームワークを操作するために研ぎ澄まされたその他のツールを使用して、hqはすぐにそれらすべてをサポートします。 hqは非常に優れているため、設定は必要ありません。機能するだけで機能します。 小包はありません。すべてはあなたのものとは異なります。hqは本当に設定を必要としません。単に存在しないため、どこにも行きません。 一度インストールする



npm install -g @hqjs/hq







そして、プロジェクトのルートで1つのコマンドで実行して、すぐに実験を開始します



hq







昔のギャングが私たちに同じことを提供してくれたと言います。おそらく、もう少し構成が少し簡単ではないかもしれませんが、すべてが非常に似ているので、なぜこの新しいチャックノリスがバージンの世界に必要なのでしょうか? そして、Greyjoy家の新しいモットーである「私たちは盗賊ではない!」でお答えします。 はい、実際、私たちはギャングではありません!



画像

(グレイジョイ・ハウス。バンドルをまかない)



こんにちは。13歳の時からウェブ開発に携わっており、19歳のときにバンギングを始めました。彼のガレージに行って、飛行機で昼夜を叩いたとき、友人がこれに夢中になりました。 何してるの? そして彼は、これは新しいことであり、今ではとてもファッショナブルでクールだと言ったので、絶対に試してみる必要があります。 最初はファイルを貼り付けてから、クロージャーコンパイラで小さなバンドルを試してみましたが、やめられませんでした。 gulp、browserify、そしてwebpack ...バンドルが難しくなりました。 停止する方法を知りませんでした、私は去ることができないサイクルに陥りました。 私が新しいプロジェクトに着くたびに、誰かがすでにそこを叩いていて、拒否することはまったく不可能でした。 盗賊は一流ではありません! 専門職の人々や親しい友人でさえも、コミュニケーションを拒否し、私がやめたいと思ったときに電話をかけませんでした。 だから行くところはありませんでした。 しかし、今はきれいです! 開発中に盗賊ではなくなりました! 私の友人や知人が私を叩いてくれなくなりましたが、今ではこれは当社では受け入れられません。 そして、あなたは何を知っていますか? こんなに気持ち良かったことがありません! 世界はついに新しい色で遊び始め、仕事と家族の両方に時間がかかり始めました。



真剣に、バンドルの欠如は人生を大幅に簡素化します。 表現だけでなく、目的の行にもブレークポイントを設定できない場合は、耐え難い状況を覚えておいてください! または、webpack __webpack __ @#%^ $ !!!によって生成されたこれらの変数名 それらを読むとき、サタンに電話するのは驚くことではありませんが、コンソールと敵にそれらを書きたくはありません。そして、最も正反対は通常の人間の名前の後ろに隠されているので、他に何があるかを推測してください。 一般に、完全なソースマップであっても、デバッグはしばしば地獄に変わります。 node_modules内のコードを1日に何回誓いますか? エラーメッセージを理解することが不可能であり、このエラーがどこで発生するのかという理由で、不幸なReactおよびAngular開発者の頭にいくつの呪いが降りかかっていますか? hqに切り替えた後、これをすべて悪夢として忘れました。 本当に時間があります。なぜそうならないのか、静かに動かないのか、そしてこの10メガバイトのライブラリがビルドのどこから来たのか、困惑する必要はありません。 苦しみが減り、仕事が楽になり、それが喜びになりました。



画像

(この人はVargまたは変化する皮膚であり、動物の意識に侵入することができます。今、彼は敵を探してワシと舞い上がります)



最良の部分は、hqは新しくて複雑なものではなく、彼はいつも私たちと一緒にいるように感じ、すべてがとてもシンプルで馴染みがあるということです。 hqは、あなたを理解しているだけの静的サーバーです。 新しいプロジェクトの開始は非常に高速になり、コンソールに1つのコマンドが入力されるだけで、実験を開始できます。 フレームワーク、ライブラリ、フォーマット、アーキテクチャアプローチ-これらはすべて障壁を作成しなくなり、hqはすべて古き良き時代のように素早く、簡単に、そして論理的に機能します! さらに、hq オープンソースプロジェクトにより、常に何かを改善したり、新しい形式のサポートを追加したりできます。



率直に言って、私たちは欠陥を見つけました。 以前は、webpackで組み立てるのに数分かかったとき、香り豊かなコーヒーを1杯食べるためにキッチンを覗くのは素晴らしい言い訳でしたが、今ではすべてが非常に速く動作するため、この時間はありません。 しかし、おいしいコーヒーの言い訳を探す必要はありますか?



画像



これはどのように機能しますか? ここで、hqは、少しの黒魔術で味付けされたさまざまな非類似で一貫性のない部分からフランケンシュタイン博士によって編まれた巨大なモンスターのように見えるかもしれません。 しかし実際には、すべてが非常に調和的で均一です。 hqは、通常の静的サーバーと同様に、要求に応じて各ファイルを個別に配布します。 これにより、ツリーを完全に揺さぶることなく、未使用のコードを削除する機会は限られていますが、依存関係の分析に費やされる時間を大幅に節約できます。 すべての変換は、即座に実行されます。 さらに、必要な最小値のみが変換されます。 最新のブラウザを使用し、Web標準に準拠している場合、コードがまったく変更されることはほとんどありません。 標準に頼ることはできますが、慣れているライブラリが同じことをするという保証はありません。 それらのほとんどは、おそらくcommonjs形式で配信されるため、ブラウザでそのまま動作することはできません。 hqはこれを処理し、commonjsモジュールをESM形式に変換し、標準ではなく一般的なインポート(cssやjsonなど)を処理し、必要に応じてインポートされたオブジェクトを非構造化します。 hqはWebブラウザーと連携して機能し、キャッシュシステムを使用してアセットの配信を高速化し、変更されたファイルのみを転送します。 コードを変更するとページが自動的にリロードされるため、変更の結果を即座に評価できます。 hqは多くのフレームワークで動作しますが、それらのコードに依存しません。 代わりに、hqは、hq用に特別に作成されたbabelプラグインを使用して一連のAST変換を実行し、開発で使用されるさまざまなテクノロジーとアプローチを理解し、ブラウザーでサポートされる単一の標準に変換できるようにします。



このように、現代のWebが提示するすべての困難と課題にもかかわらず、プロジェクト開発は、Webテクノロジーのawn明期のように、シンプルで直感的なままです。 今すぐhqを試して、古いプロジェクトでの開発体験を改善するか、エキサイティングな新しいプロジェクトを作成してください。



npm install -g @hqjs/hq






All Articles