検索
ホームページCMS チュートリアル&#&プレスアーキテクチャの再考: Web アプリケーション開発に WordPress を使用する

アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する

Sep 01, 2023 pm 08:25 PM
wordpressウェブ開発アーキテクチャのリファクタリング

このシリーズでは、WordPress を使用して Web アプリケーションを構築する方法について説明します。これはコードを取り上げる技術シリーズではありませんが、フレームワーク、基礎、デザイン パターン、アーキテクチャなどのトピックを取り上げます。 シリーズの最初の記事をまだ読んでいない場合は、読むことをお勧めします。ただし、この記事の目的のために、前回の記事を次のように要約できます。

つまり、ソフトウェアはフレームワーク上に構築でき、ソフトウェアは基盤を拡張できます。

簡単に言うと、フレームワークと基盤を区別します。この 2 つの用語は、同じものではありませんが、ソフトウェアでは同じ意味でよく使用されます。 WordPress はそれ自体がアプリケーションであるため、基盤となります。それは枠組みではありません。

これを行うには、WordPress で Web アプリケーションを構築する場合、アーキテクチャを再考するか、アプリケーションの構築方法の概念モデルを再考する必要があります。

Webアプリケーションの構造


可能な限り最も高いレベルでは、Web アプリケーションは通常、次の 3 つのコンポーネントで構成されます。

データベース層

    アプリケーション層
  1. プレゼンテーション層
  2. 一般的に言えば、プレゼンテーション層はユーザーが見て操作するものです。これには、ユーザーの目の前で何かを表示するために必要なすべてのスタイル、クライアント側のコード、マークアップが含まれています。
ユーザーが何かをクリックするか、ページがデータベースから取得した情報をレンダリングするときに、アプリケーション層と対話します。

アプリケーション層は、ブラウザーおよび/またはユーザー操作からデータベースへの情報を調整する役割を果たします。場合によっては、これには、データベースへの情報の書き込み (フォーム フィールドからの情報など) やデータベースからの情報の読み取り (ユーザーのアカウント情報の取得など) が含まれます。

プレゼンテーション層がさまざまなコンポーネント (スタイル、JavaScript、マークアップなど) で構成されるのと同様に、アプリケーション層も、データの読み取りと書き込みに必要なコンポーネントなど、さまざまな異なるコンポーネントで構成される場合があります。データをデータベース システムに送信し、情報をクリーンアップし、情報を検証し、当面の問題に固有の特定のルールを適用します。

最後に、データベース層はデータが保存される場所です。ファイル システムで構成されている場合もあれば、MySQL データベースで構成されている場合もあり、「クラウド内」のデータ ストア (Amazon S3 など) などのサードパーティ ソリューションで構成されている場合もあります。

すべて抽象的です

理解すべき重要な点は、ソフトウェアでは常にある程度の抽象化レベルを扱っているということです。たとえば、私たちはデータ ストレージやデータベース レイヤーについて話しますが、それについては具体的には語っていません。アプリケーション層とプレゼンテーション層についても同様です。

複数のテーブルを持つリレーショナル データベースについて話しているのでしょうか、それともクラウド ストレージについて話しているのでしょうか?

    データベースと通信するためにアプリケーション層に接続するためにどのデータ アクセス層を使用しますか?
  • フロントエンドではどのようなフレームワークと言語を使用しますか?普通の JavaScript、jQuery、Knockout.js? CSS プリプロセッサ - LESS や Sass はどうですか?
  • もちろん、これらの質問に対する答えを今すぐ提供するつもりはありませんが、重要なのは、すべての Web アプリケーションには同様のコンポーネントが含まれていますが、各コンポーネントの詳細はプロジェクトごとに異なるということです。

WordPress コンポーネント


WordPress は、それ自体が Web アプリケーションであるため、さまざまなテクノロジーがどのように組み合わされて Web アプリケーションを形成するかを示す完璧な例です。

データベース層

はMySQLデータベースです。
  1. アプリケーション層 (WordPress自体を考慮する人もいるでしょう)はPHPで書かれており、データストアへの読み取りと書き込みというコア操作の多くを処理すると同時に、開発者がデータストアをさらに活用するためのAPIを提供します。
  2. プレゼンテーション レイヤー基本的な CSS (少なくとも現時点では)、HTML (一部のテーマは現在 HTML5 を使用しています)、jQuery、および一部のダッシュボードは Backbone.js を使用します。
  3. これは WordPress アーキテクチャですが、アプリケーション上に構築したいプロジェクトはどうなるでしょうか?それらはどのようにして同じアーキテクチャに従うのでしょうか?
  4. さて、WordPress はフレームワークではなく基盤であることを覚えておいてください。そのため、デフォルトで WordPress アーキテクチャの影響を受けます。これは、場合によっては独自のライブラリを持ち込めないという意味ではありませんが、アプリケーションやプロジェクトの構築方法に影響します。

ライブラリや拡張性などについては後ほど詳しく説明しますが、まず最初に、今日では アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する (および MVVM の他のバリエーションやモデル、ビューなど) パラダイムがすべてであることに注意することが重要です。しかし、WordPress

はこの規則に従っていません。

これが良いことなのか悪いことなのかについては賛否両論ありますが、それがこの記事の目的ではありません。代わりに、WordPress はモデルビュー コントロール パネルではなくイベント駆動モデルを使用していることに注目してください。

これを行うには、イベント駆動型モデルがどのように機能するかを理解し、WordPress フックがどのように機能するかを明確に理解し、アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する やその他の使用するパラダイムから WordPress の管理方法に考え方を移行する方法を理解することが重要です。その情報。

イベントドリブンとはどういう意味ですか?

イベント駆動型アプリケーションの例を見る前に、アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する パラダイムに従うことが何を意味するのかを確認してみましょう。

  • まず、ビューをデモンストレーションとして使用します。ユーザーは情報を表示し、ユーザー インターフェイスを操作します。
  • 次に、コントローラーはモデルとビューの間で情報を調整します。これらはユーザーのアクションに応答し、モデルから情報を取得してビューに転送します。
  • その後、モデルはデータベース内のデータを表します。これはさまざまな方法で実行できますが、最も一般的な方法の 1 つは、データベース内のデータをオブジェクト リレーショナル モデルにマップして、データがオブジェクトの形式で表現されるようにすることです。

アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する モデル全体は次のとおりです:

アーキテクチャの再考: Web アプリケーション開発に WordPress を使用するアーキテクチャの再考: Web アプリケーション開発に WordPress を使用するアーキテクチャの再考: Web アプリケーション開発に WordPress を使用する

アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する图标题>

さて、イベント駆動型アプリケーションは、同じコンポーネントの一部を持つことができます。つまり、ビューとモデル、またはビューとデータ オブジェクトを持つことができますが、フロントエンドからの情報を調整するコントローラー バックエンドを必ずしも備えているわけではありません。バックエンドです。

これに対して、イベント駆動型プログラミングは「何かが起こる」という前提で動作します。したがって、WordPress の専門用語では、Actions は「アクション」と呼ばれます (もちろんフィルターもありますが、これについてはすぐに説明します)。

WordPress はフックを提供します。フックは実際には独自の機能を導入できる実行ポイントであり、WordPress が「このイベント が発生したとき、 これらの関数 をトリガーする必要がある」と認識します。ここで、これらの関数は、私たちが提供するものとして定義されています。

実のところ、フィルターは同じように機能しますが、目的は異なります。簡単に言うと、フィルターは、実行のためにアプリケーションに戻る前に、何らかの方法 (コンテンツの追加、先頭への追加、削除、更新など) でデータを操作する操作です。

それでは、これはどのように見えるでしょうか?

アーキテクチャの再考: Web アプリケーション開発に WordPress を使用するアーキテクチャの再考: Web アプリケーション開発に WordPress を使用するアーキテクチャの再考: Web アプリケーション開発に WordPress を使用する

###活動###

特に複雑なことはありませんね?

それでは、新しいアーキテクチャとは何でしょうか?

この記事の主な目的は、イベント駆動型プログラミングと、特に WordPress 上で Web アプリケーションを構築するための取り組みを調整する方法について考えさせることです。

つまり、私たちは、

イベント

、または「何かが起こった」という事実の観点から考えて、いつ自分の行動を適切に差し挟むべきかを知る必要があります。これについては次回の投稿で詳しく説明しますが、この特定の投稿から皆さんに理解していただきたい点は、何かが アーキテクチャの再考: Web アプリケーション開発に WordPress を使用する (または次に人気のあるパラダイム) ではないからといって、それが意味を持つわけではないということです。アプリケーション開発には適していません。 それぞれのパターンとアーキテクチャには長所と短所があり、そのすべてが Web アプリケーションの構築に成功します。

###次...###

このシリーズの次の記事では、WordPress で Web アプリケーションを構築する際にフックがどのように重要な役割を果たすかを詳しく見ていき、その後、WordPress が提供するいくつかの機能について見ていきます。 ( すべての種類の Web アプリケーションにとって信頼できる選択肢ではありません。

以上がアーキテクチャの再考: Web アプリケーション開発に WordPress を使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
WordPressを3日で学ぶことはできますか?WordPressを3日で学ぶことはできますか?Apr 09, 2025 am 12:16 AM

3日以内にWordPressを学ぶことができます。 1.テーマ、プラグインなどのマスター基本知識。2。インストールや作業原則などのコア関数を理解します。 3.例を使用して、基本的および高度な使用法を学びます。 4.デバッグテクニックとパフォーマンスの最適化の提案を理解します。

WordPressはCMSですか?WordPressはCMSですか?Apr 08, 2025 am 12:02 AM

WordPressはコンテンツ管理システム(CMS)です。コンテンツ管理、ユーザー管理、テーマ、プラグイン機能を提供して、Webサイトコンテンツの作成と管理をサポートします。その実用的な原則には、ブログから企業Webサイトまで、さまざまなニーズに適したデータベース管理、テンプレートシステム、プラグインアーキテクチャが含まれます。

ワードプレスは何に適していますか?ワードプレスは何に適していますか?Apr 07, 2025 am 12:06 AM

wordpressisisgoodforvirtalayanywebprojectoitsversitilityasacms.itexcelsin:1)ユーザーフレンドリー、柔軟性と柔軟性と顧客化の維持、およびプルージンの数値化; 3)seooptimization;

WixまたはWordPressを使用する必要がありますか?WixまたはWordPressを使用する必要がありますか?Apr 06, 2025 am 12:11 AM

WIXは、プログラミングの経験がないユーザーに適しており、WordPressは、よりコントロールと拡張機能を必要とするユーザーに適しています。 1)WIXはドラッグアンドドロップエディターとリッチテンプレートを提供しているため、Webサイトをすばやく構築できます。 2)オープンソースのCMSとして、WordPressには巨大なコミュニティとプラグインエコシステムがあり、詳細なカスタマイズと拡張をサポートしています。

WordPressの費用はいくらですか?WordPressの費用はいくらですか?Apr 05, 2025 am 12:13 AM

WordPress自体は無料ですが、使用するには余分な費用がかかります。1。WordPress.comは、無料から支払いまでの範囲のパッケージを提供し、価格は月あたり数ドルから数十ドルまでの範囲です。 2。WordPress.orgでは、ドメイン名(年間10〜20米ドル)とホスティングサービス(月額5〜50米ドル)を購入する必要があります。 3.ほとんどのプラグインとテーマは無料で、有料価格は数十から数百ドルです。適切なホスティングサービスを選択し、プラグインとテーマを合理的に使用し、定期的に維持および最適化することにより、WordPressのコストを効果的に制御および最適化できます。

WordPressはまだ無料ですか?WordPressはまだ無料ですか?Apr 04, 2025 am 12:06 AM

WordPressのコアバージョンは無料ですが、使用中に他の料金が発生する場合があります。 1。ドメイン名とホスティングサービスには支払いが必要です。 2。高度なテーマとプラグインが充電される場合があります。 3.プロフェッショナルサービスと高度な機能が請求される場合があります。

WordPressは初心者にとって簡単ですか?WordPressは初心者にとって簡単ですか?Apr 03, 2025 am 12:02 AM

WordPressは、初心者が簡単に始めることができます。 1.バックグラウンドにログインした後、ユーザーインターフェイスは直感的であり、シンプルなダッシュボードは必要なすべての関数リンクを提供します。 2。基本操作には、コンテンツの作成と編集が含まれます。 WysiWygエディターは、コンテンツの作成を簡素化します。 3.初心者は、プラグインとテーマを介してウェブサイトの機能を拡張でき、学習曲線は存在しますが、練習を通じて習得できます。

なぜWordPressを使用するのはなぜですか?なぜWordPressを使用するのはなぜですか?Apr 02, 2025 pm 02:57 PM

人々は、その力と柔軟性のためにWordPressを使用することを選択します。 1)WordPressは、さまざまなWebサイトのニーズに適した、使いやすさとスケーラビリティを備えたオープンソースのCMSです。 2)豊富なテーマとプラグイン、巨大なエコシステム、強力なコミュニティサポートがあります。 3)WordPressの作業原則は、テーマ、プラグイン、コア関数に基づいており、PHPとMySQLを使用してデータを処理し、パフォーマンスの最適化をサポートします。

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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