検索
ホームページウェブフロントエンドjsチュートリアル平均スタックアプリケーションを計画するための実用的なガイド

A Practical Guide to Planning a MEAN Stack Application

この記事は、マニングプレスの「マスタリング平均:マンゴ、エクスプレス、アングラー、ノード、第2版の使用」から抜粋しています。第2版​​は、Angular 2、Node 6、および最新の主流JavaScriptバージョンES2015(ES6)をカバーするために完全に改訂および更新されました。このエディションでは、更新された平均スタックを使用してWebアプリケーションを開発する方法を学習します。

キーポイント

  • 平均スタックアプリケーションを計画する場合、最初に各ページにあるものを深く掘り下げることなく、必要な画面を想像する必要があります。この段階でのスケッチは、アプリケーション全体を視覚化し、画面をコレクションとプロセスに整理するのに役立ちます。
  • 画面を論理セットに分割します。たとえば、すべての処理場所の画面を組み合わせることができますが、「About Us」のような独立したページは、その他のコレクションで組み合わせることができます。
  • アプリケーションのアーキテクチャを検討し、APIから始めます。データと相互作用するAPIの構築は、アーキテクチャの基礎です。サーバーから直接HTMLを提供するか、アプリケーションの特定の要件に基づいて単一ページアプリケーション(SPA)を選択するかどうかを判断します。
  • アーキテクチャは、Expressプロジェクトにカプセル化され、管理と展開が容易になります。ただし、アプリケーションのさまざまな部分を互いに分離するためにコードを適切に整理して、将来必要に応じて別々のプロジェクトに分割するのが簡単になることが重要です。

実用アプリケーション計画:Loc8r

イラストを容易にするために、平均スタックでloc8rと呼ばれる作業アプリケーションを構築していると仮定しましょう。 LOC8Rは、人々が働くことができるWiFiで近くの場所をリストします。また、各会場の施設、営業時間、評価、場所の地図も表示されます。

高度な平均スタックアプリケーション計画最初のステップは、アプリケーションで必要な画面を検討することです。個別のページビューとユーザーの旅に焦点を当てます。各ページの詳細に注意を払うことなく、これをハイレベルで行うことができます。アプリケーション全体を視覚化するのに役立つため、この段階で紙またはホワイトボードでスケッチするのが最善です。また、構築時の参照ポイントとして、スクリーンをコレクションやプロセスに整理するのにも役立ちます。ページまたはアプリケーションロジックの後ろに添付されているデータはないため、パーツを追加および削除したり、表示されているコンテンツと場所を変更したり、必要なページ数を変更したりできます。私たちは初めてそれを正しく行わない可能性が非常に高いです。

スクリーン計画

現代のjavascriptを読むことは、進化し続けるJavaScriptの世界に従ってください!この本を読むこの本を読んでください

loc8rを考えてみましょう。私たちの目標は次のとおりです

loc8rは、人々が働くことができるWiFiの近くの場所をリストします。各会場の施設、営業時間、評価、ロケーションマップを示しています。訪問者は評価やコメントを提出できます。

これから、必要な画面のいくつかを学ぶことができます:

近くの場所の画面リスト
  1. 単一の場所の詳細を示す画面
  2. 場所に関するコメントを追加するための画面
  3. また、訪問者にloc8rが何のためのものか、そしてなぜ別の画面をリストに追加する必要があるのか​​を伝えたいかもしれません。
  4. 「私たちについて」情報の画面

    画面をコレクションに分割します
次に、画面リストを取得し、それらが論理的に一緒に属する場所にそれらを整理したいと考えています。たとえば、リストの最初の3つはすべてポジションに関連しています。 aboutページはどこにも属しません。その他の「他の」コレクションに配置できます。スケッチを描くと、図1と同様の結果が得られます。

図1:アプリケーションの個別の画面を論理コレクションに整理します。

A Practical Guide to Planning a MEAN Stack Application

このような簡単なスケッチは計画の最初の段階であり、アーキテクチャについて考え始める前にこのフェーズを完了する必要があります。この段階では、基本ページを表示してプロセスを検討する機会が与えられます。たとえば、図1は、リストページから詳細ページまで、コメントを追加するフォームまで、ロケーションコレクションの基本的なユーザーの旅を示しています。

アーキテクチャデザイン

loc8rはシンプルに見え、画面はわずかです。ただし、データベースからデータベースからブラウザにデータを転送し、ユーザーがデータと対話し、データをデータベースに返信できるようにするため、アーキテクチャの構築方法について検討する必要があります。

APIで開始します

アプリケーションはデータベースを使用してデータを渡すため、必要な部品からアーキテクチャの構築を開始します。図2は、Expressおよびnode.jsを使用して構築されたREST APIである出発点を示しており、MongoDBデータベースとの対話を可能にします。

図2標準の平均レストAPIから始まる、mongodb、express、node.jsを使用してください。

A Practical Guide to Planning a MEAN Stack Application

データと相互作用するAPIの構築は、アーキテクチャの基礎です。より興味深く難しい質問は、アプリケーションのアーキテクチャをどのように構築するのですか?

アプリケーションアーキテクチャオプション この時点で、アプリケーションの特定の要件と、平均スタックの部分を一緒に組み合わせて最適なソリューションを構築する方法を調べる必要があります。決定を変更するには、Mongodb、Express、Angular、またはnode.jsの特別な機能が必要ですか?サーバーから直接HTMLを提供したいですか、それともスパがより良いオプションですか?

loc8rの場合、特別な要件や特定の要件はありません。検索エンジンで簡単にrawってcrawってビジネスの成長計画に依存するかどうかです。目標が検索エンジンからオーガニックトラフィックをもたらすことである場合、はい、クロール可能である必要があります。目標がアプリケーションとしてアプリケーションを宣伝し、この方法で使用を促進することである場合、検索エンジンの可視性はそれほど重要ではないようです。

図3に示すように、3つの可能なアプリケーションアーキテクチャをすぐに想像できます。

    node.jsおよびexpressアプリケーション
  1. node.jsおよび角度相互作用を備えたエクスプレスアプリケーション
  2. Angular Spa
  3. これら3つのオプションを念頭に置いて
loc8rに最適なオプションはどれですか?

A Practical Guide to Planning a MEAN Stack Application

図3サーバーサイドエクスプレスおよびnode.jsアプリケーションからフルクライアントの角度スパまで、Loc8rアプリケーションを構築するための3つのオプション。

アプリケーションアーキテクチャを選択

を選択します

あるアーキテクチャを別のアーキテクチャよりも好むように促す特定のビジネス要件はありません。 3つのアーキテクチャすべてを構築することで、各アプローチがどのように機能するかを調査し、各テクノロジーを順番に調べ、アプリケーションレイヤーをレイヤーごとに構築できます。

node.jsとExpressアプリケーションから始めて、図3に示す順序でスキーマを構築し、Angularの追加を続けて、Angular SPAにリファクタリングします。これは通常Webサイトを構築する方法ではありませんが、平均スタックのあらゆる側面を学ぶ絶好の機会を提供します。

1つのエクスプレスプロジェクトのすべてをカプセル化します私たちが検討してきたアーキテクチャ図は、APIとアプリケーションロジックの個別のエクスプレスアプリケーションがあることを示唆しています。これは完全に可能であり、大規模なプロジェクトにも適しています。多くのトラフィックが期待される場合は、メインアプリケーションとAPIが異なるサーバーにあることを望むかもしれません。これの追加の利点は、それぞれのニーズに最適な各サーバーとアプリケーションに対してより特定の設定を設定できることです。

もう1つの方法は、シンプルで簡潔に保ち、すべてを単一のExpressプロジェクトに入れることです。このアプローチを使用すると、アプリケーションのホスティングと展開、およびソースコードのセットの管理について心配する必要があります。これは、loc8Rで行うことです。これにより、いくつかのサブアプリを備えたエクスプレスプロジェクトが提供されます。図4は、このアプローチを示しています。

A Practical Guide to Planning a MEAN Stack Application 図4同じExpressプロジェクトでAPIとアプリケーションロジックをカプセル化するアプリケーションアーキテクチャ。

この方法でアプリケーションを組み合わせるときは、アプリケーションのさまざまな部分を分離できるように、コードを適切に整理してください。コードを維持しやすくすることに加えて、適切なルートを取ることを決定したときに、コードを別々のプロジェクトに分割しやすくなります。これは、この本で議論し続ける重要なトピックです。

最終製品

ご覧のとおり、平均スタックのすべてのレイヤーを使用してloc8rを作成します。また、Twitter Bootstrapを含めて、レスポンシブレイアウトを作成するのに役立ちます。図5は、構築できるコンテンツのスクリーンショットを示しています。

A Practical Guide to Planning a MEAN Stack Application

図5 loc8rはサンプルアプリケーションです。さまざまなデバイスに異なるものを表示し、各場所の場所と詳細のリストを表示し、訪問者がログインしてコメントを残すことができます。

結論

これはこの記事に関するものです。これらの手順を実践し始めたい場合は、ManningのWebサイトにアクセスしてください。Mongo、Express、Angular、Node、第2版、または本の購入を使用して、Mastering Meanの無料章をダウンロードできます。それ以外の場合は、この記事で説明したことについて質問がある場合は、以下のコメントに投稿してください。

平均スタックアプリケーション(FAQ)

の計画に関するFAQ 平均スタックとは何ですか?また、アプリケーション開発において重要なのはなぜですか?

平均スタックは、Webアプリケーションの開発に使用されるJavaScriptベースのテクノロジーのコレクションです。平均は、MongoDB、ExpressJS、AngularJS、Node.JSの頭字語です。 MongoDBはNOSQLデータベース、ExpressJSはWebアプリケーションフレームワーク、AngularJSはJavaScriptフレームワーク、node.jsはサーバープラットフォームです。アプリケーション開発における平均スタックの重要性は、その効率と柔軟性にあります。これにより、開発者はJavaScriptを使用してサーバーとクライアントの両方のコードを作成し、シームレスな統合と効率的なデータ処理を可能にします。

平均スタックアプリケーションのアーキテクチャはどのように機能しますか?

平均スタックアプリケーションのアーキテクチャは柔軟で効率的です。 MongoDB(NOSQLデータベース)はアプリケーションデータを保存します。 node.jsサーバーで実行されているExpressjsは、サーバー側の機能を処理します。 AngularJSは、クライアント(ユーザー指向)機能を管理します。アプリケーション全体がJavaScriptに記述されており、データがユーザーインタラクションからサーバーおよびデータベースにシームレスに流れるようにします。

アプリケーション開発に平均スタックを使用することの利点は何ですか?

平均スタックは、アプリケーション開発に多くの利点を提供します。 node.jsのおかげで、コードの再利用と高速が可能になります。 MongoDBは複雑なデータを保存する柔軟性を提供しますが、AngularJSはインタラクティブな機能を追加するためのクリーンな方法を提供します。 ExpressJSは、サーバールーティングの作成と管理のプロセスを簡素化します。さらに、すべてがJavaScriptに記載されているため、開発プロセスを簡素化および高速化します。

MongoDBは、平均スタックアプリケーションの効率をどのように改善しますか?

MongoDBは、高性能、高可用性、スケーラビリティの容易さを提供するNOSQLデータベースです。これは、テーブルと行を使用した従来のリレーショナルデータベースではなく、コレクションとドキュメントの概念に基づいています。これにより、MongoDBは大量のデータと複雑な階層データ構造の取り扱いに特に優れており、平均スタックアプリケーションの効率を改善するのに役立ちます。

AngularJSは平均スタックアプリケーションでどのような役割を果たしますか?

AngularJSは、平均スタックにアプリケーションを構築するための強力なJavaScriptフレームワークです。これにより、開発者はHTML語彙を拡張して、より表現力豊かで読みやすく、より高速な開発環境を作成することができます。 AngularJSは、HTMLのデータ結合機能も提供し、モデルコンポーネントとビューコンポーネント間のデータの自動同期を可能にします。

ExpressJS平均スタックアプリケーションでサーバー側の操作を簡素化する方法は?

ExpressJSは、Webアプリケーションとモバイルアプリケーションの両方に強力な機能を提供する最小限で柔軟なnode.js Webアプリケーションフレームワークです。シングルページ、マルチページ、およびハイブリッドWebアプリケーションを構築するためのシンプルなインターフェイスを提供することにより、サーバー側の操作を簡素化します。また、ルーティング、リクエスト、ビューを管理し、ミドルウェア操作を実行するのに役立ちます。

node.jsは、平均スタックアプリケーションのパフォーマンスをどのように強化しますか?

node.jsは、速くてスケーラブルなWebアプリケーションを簡単に構築するために、ChromeベースのJavaScriptランタイム上に構築されたプラットフォームです。イベント駆動型の非ブロッキングI/Oモデルを使用して、軽量で効率的にしているため、分散デバイス全体で実行されるデータ集約型のリアルタイムアプリケーションに最適です。これにより、ラグなしで複数のクライアントリクエストを同時に処理できるようにすることにより、平均スタックアプリケーションのパフォーマンスが向上します。

平均スタックアプリケーションを開発するための前提条件は何ですか?

平均スタックアプリケーションを開発するには、JavaScriptとHTMLの基本的な理解が必要です。また、NOSQLデータベース(特にMongoDB)について知る必要があり、クライアントとサーバー側のスクリプトを理解する必要があります。 AngularJS、ExpressJS、Node.JSに精通することが重要です。さらに、JSONとAjax Technologiesを理解することは大きな利益をもたらすでしょう。

他のフルスタックオプションとStackの意味はどうですか?

平均スタックは完全にJavaScriptに基づいており、クライアントとサーバー側で同じ言語を使用できるため、シームレスな開発プロセスを提供します。これは、複数の言語で習熟する必要がある他のフルスタックオプションの主な利点です。さらに、node.jsの非ブロッキングアーキテクチャにより、平均的なスタックアプリケーションが高速かつスケーラブルになり、リアルタイムアプリケーションに最初の選択肢になります。

平均スタックで別のデータベースを使用できますか?

MongoDBはJavaScriptと互換性があるため、平均スタックのデフォルトデータベースですが、他のデータベースが利用可能です。ただし、これには追加の構成とコードの調整が必要になる場合があり、平均スタックに知られているシームレスなデータフローが影響を受ける可能性があります。したがって、異なるデータベースを使用する必要がない場合を除き、MongoDBを使用することをお勧めします。

以上が平均スタックアプリケーションを計画するための実用的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
JavaScriptアプリケーション:フロントエンドからバックエンドまでJavaScriptアプリケーション:フロントエンドからバックエンドまでMay 04, 2025 am 12:12 AM

JavaScriptは、フロントエンドおよびバックエンド開発に使用できます。フロントエンドは、DOM操作を介してユーザーエクスペリエンスを強化し、バックエンドはnode.jsを介してサーバータスクを処理することを処理します。 1.フロントエンドの例:Webページテキストのコンテンツを変更します。 2。バックエンドの例:node.jsサーバーを作成します。

Python vs. Javascript:どの言語を学ぶべきですか?Python vs. Javascript:どの言語を学ぶべきですか?May 03, 2025 am 12:10 AM

PythonまたはJavaScriptの選択は、キャリア開発、学習曲線、エコシステムに基づいている必要があります。1)キャリア開発:Pythonはデータサイエンスとバックエンド開発に適していますが、JavaScriptはフロントエンドおよびフルスタック開発に適しています。 2)学習曲線:Python構文は簡潔で初心者に適しています。 JavaScriptの構文は柔軟です。 3)エコシステム:Pythonには豊富な科学コンピューティングライブラリがあり、JavaScriptには強力なフロントエンドフレームワークがあります。

JavaScriptフレームワーク:最新のWeb開発のパワーJavaScriptフレームワーク:最新のWeb開発のパワーMay 02, 2025 am 12:04 AM

JavaScriptフレームワークのパワーは、開発を簡素化し、ユーザーエクスペリエンスとアプリケーションのパフォーマンスを向上させることにあります。フレームワークを選択するときは、次のことを検討してください。1。プロジェクトのサイズと複雑さ、2。チームエクスペリエンス、3。エコシステムとコミュニティサポート。

JavaScript、C、およびブラウザの関係JavaScript、C、およびブラウザの関係May 01, 2025 am 12:06 AM

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか

node.jsは、型を使用してストリーミングしますnode.jsは、型を使用してストリーミングしますApr 30, 2025 am 08:22 AM

node.jsは、主にストリームのおかげで、効率的なI/Oで優れています。 ストリームはデータを段階的に処理し、メモリの過負荷を回避します。大きなファイル、ネットワークタスク、リアルタイムアプリケーションの場合。ストリームとTypeScriptのタイプの安全性を組み合わせることで、パワーが作成されます

Python vs. JavaScript:パフォーマンスと効率の考慮事項Python vs. JavaScript:パフォーマンスと効率の考慮事項Apr 30, 2025 am 12:08 AM

PythonとJavaScriptのパフォーマンスと効率の違いは、主に以下に反映されています。1)解釈された言語として、Pythonはゆっくりと実行されますが、開発効率が高く、迅速なプロトタイプ開発に適しています。 2)JavaScriptはブラウザ内の単一のスレッドに限定されていますが、マルチスレッドおよび非同期I/Oを使用してnode.jsのパフォーマンスを改善でき、両方とも実際のプロジェクトで利点があります。

JavaScriptの起源:その実装言語の調査JavaScriptの起源:その実装言語の調査Apr 29, 2025 am 12:51 AM

JavaScriptは1995年に発信され、Brandon Ikeによって作成され、言語をCに実現しました。 2。JavaScriptのメモリ管理とパフォーマンスの最適化は、C言語に依存しています。 3. C言語のクロスプラットフォーム機能は、さまざまなオペレーティングシステムでJavaScriptを効率的に実行するのに役立ちます。

舞台裏:JavaScriptをパワーする言語は何ですか?舞台裏:JavaScriptをパワーする言語は何ですか?Apr 28, 2025 am 12:01 AM

JavaScriptはブラウザとnode.js環境で実行され、JavaScriptエンジンに依存してコードを解析および実行します。 1)解析段階で抽象的構文ツリー(AST)を生成します。 2)ASTをコンパイル段階のバイトコードまたはマシンコードに変換します。 3)実行段階でコンパイルされたコードを実行します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません