ホームページ バックエンド開発 PHPチュートリアル Web アプリケーションの開発方法を説明する 5 つのステップ

Web アプリケーションの開発方法を説明する 5 つのステップ

Nov 11, 2016 pm 01:15 PM

これはよくある質問であり、当然のことです。プログラマーとして、なぜ私が Web アプリケーションの開発方法を知っていると思われなければならないのでしょうか?この質問に対する簡単な答えはなく、教育機関ですら明確な答えを持っていない可能性があります。私が通っていた大学ではこのテーマに関するコースが提供されていませんでした。したがって、この分野のほとんどの Web 開発者と同様に、私も実際にやって実験することでこれを学びました。誰も作り方を教えてくれなかったので、自分で何かを作ることから始め、Web アプリケーションの開発方法を学ぶのはそのプロセスの副産物でした。これはあらゆる言語を学ぶのに非常に効果的な方法です。

幸いなことに、ここでは Web アプリケーションを開発する方法の主なプロセスについて説明します。これがあなたのスタートに役立つことを願っています。 `

Web アプリケーションと Web サイトの違い

まず最初に、Web アプリケーションの開発は Web サイトの開発とは異なることを説明したいと思います。全体的には大きな類似点がありますが、開発にかかる時間には大きな違いがあります。では、Web アプリケーションと Web サイトの違いは何でしょうか?通常、ウィキペディアはこの問題の説明に役立ちます。ウィキペディアがアプリケーション ソフトウェアをどのように定義しているかを見てみましょう:

アプリケーション ソフトウェアは、アプリケーションとも呼ばれ、ユーザーが特定の目的で設計された 1 つ以上のコンピューター ソフトウェアを実行できるように特別に設計されたソフトウェアを指します。特定のタスク。エンタープライズ ソフトウェア、会計ソフトウェア、オフィス スイート、描画ソフトウェア、メディア プレーヤーなどはすべて、このカテゴリのソフトウェアに分類されます。

アプリケーション ソフトウェアとは対照的に、システム ソフトウェアとミドルウェアはコンピューターのパフォーマンスとコンピューターとの統合方法を管理しますが、通常、これらのタスクはユーザーに利益をもたらすタスクの実行に直接反映されません。たとえば、あまり適切ではない物理的な例えですが、アプリケーション ソフトウェアとシステム ソフトウェアの関係は、電球と発電所の関係に似ています。発電所 (システム ソフトウェア) は電気を生成するだけで、実際の電力は持ちません。ユーザーにサービスを提供するために電球などのアプリケーション ツールが使用される場合を除き、独自の目的。

内部から、Web アプリケーションの私自身の定義を要約しました:

Web アプリケーションは、ユーザーが特定のタスクを完了できるようにする Web サイトです。通常の Web サイトの主な目的は、ユーザーに情報 (ブログ、ニュース、ガイダンスなど) を提供することです。

Web アプリケーション開発プロセス

特性が明確になったので、Web アプリケーション開発のプロセス全体を定義し始めることができます。もちろん、プロジェクトの規模によっては、プロセスの一部のステップは頭の中で実行できるほど小さい場合もありますが、全体を見るのは常に良いことです。また、この記事では各手順の詳細な説明は行っていないことを理解することが重要です。

ステップ 1: 分析

Web アプリケーション開発の最初のステップは、ニーズを分析することです。ここで、アプリケーションが提供する機能のできるだけ包括的なリストを定義する必要があります。クライアントのためにこれを行う場合は、クライアントが何を望んでいるのかを理解する必要があります(そして、お互いが相手が何を話しているのかを確実に理解する必要があります)。議論から、要件とソフトウェア仕様を要約できます。自分で開発する場合でも、この Web アプリケーションに実行させたい機能を書き留めておくことをお勧めします。

ステップ 2: 設計

Web アプリケーションが何をする必要があるかを理解したら、設計を開始できます。通常、このステップはデザインが改良されるたびに何度も繰り返されます。最初に行う必要があるのは、ページ フロー図を描くことです (紙に書くか、ソフトウェア ツールを使用するか、お好みの方法を使用してください。私は変更をより迅速に行うことができるので、紙を使用するのが好きです)。ページ フロー図は、通常、実装する Web アプリケーションがどのように見えるかを示す非常に抽象的な白黒の図です (色を追加することもできますが、シンプルにするようにしてください)。

このステップにより、アプリケーションが最終的にどのようになるかがわかります。 37signals が主張していることとは反対に、いくつかの単語による説明を使用し、適度に詳しく説明することをお勧めします。良いアイデアを思いついたとき、または何かをどのように行うべきかを思いついたときは、それを紙にマークします(たとえば、このボタンをクリックすると、別の要素が変更または非表示になるはずです。これをプロセスの中で書き留めます)絵)。

作成したスケッチに満足したら、物理モデルの作成を開始できます。

物理モデルはまだパターンですが、色と詳細が付いています。最終的なモックアップは、実装する Web アプリケーションのスクリーンショットのようになります。クライアントのために開発を行う場合、クライアントはこれらの点を検討して承認を与えるでしょう。ただし、多くの人はこのステップをスキップすることを好み (主に非デザイナー)、Web プロトタイプに直接進みたいと考えています。

プロトタイプは HTML で開発され、CSS (場合によっては JavaScript) を使用してレンダリングされます。ページ レイアウトを作成し、リンクをクリックできるようにし、色、フォント、フォント サイズを設定する必要があります (物理モデルを作成すれば簡単です)。ここにあるものはすべて最終的なアプリケーションで使用できるため、このステップは非常に重要です。可能であれば、プロトタイプでユーザビリティ テストを実行すると、長期的には多くの間違いを防ぐことができます。

このステップの最後には、Web アプリケーションがどのように構成されているかが基本的にわかります。ログイン ページとは何ですか?ユーザーはどのようにホームページから各ページに移動しますか?

ステップ 3: 実装する

フレームワークを選択する

開発したいものがわかったので、それを作成する必要があります。この部分は大変な作業であり、ほとんどの時間を費やすことになります。最初に決定しなければならないのは、どのように開始するか、どのテクノロジーとどのフレームワークを使用するかです。選択肢はたくさんあり、自分に合ったものを選択する必要があります。最も一般的に使用されるフレームワークのリストは次のとおりです:

ASP.NET

PHP上の任意のプロセスフレームワーク

Djangoを使用したPython

Ruby on Rails

どのフレームワークが最適であるかを示す明確な基準はありません。それらはすべて異なり、それぞれに独自の強みがあります。知っておく必要がある最も重要なことは、それらのいずれでも便利な Web アプリケーションを開発できるということです。

開発

開発方法がわかったら、早速始めましょう。この開発作業には多くの部分があるように見えますが、結局のところ、これらは標準的なプログラミング作業です。バックグラウンドでクラス、オブジェクト、サービス、プロシージャ、永続化レイヤーを作成し、これらのオブジェクトをデータベースに保存します。バックグラウンドは、どのアプリケーションにとっても、通常のプログラミングと何ら変わりません。次に、フロント デスクの開発が始まります。ここで作成するコードは、ユーザーにとって実際の操作インターフェイスになります。バックグラウンド プログラムとプロトタイプ インターフェイスを統合し、システムのすべての部分を統合します。 JavaScript を使用して、開発プロセス中に思いついたいくつかの優れた小さな関数を実装することもできます。

繰り返しになりますが、バックグラウンド プログラムを実装するにはさまざまな方法があります。作業のこの部分を実装する方法を理解するには、選択したフレームワークに関連する情報を読むことをお勧めします。通常、この知識はオブジェクト指向プログラミングに関連しますが、一部のフレームワークは徐々にドメイン駆動設計に移行しています。

ステップ 4: 磨き

これでアプリケーションが開発され、独立したモジュールが統合されました。ステップ 1 で定義した要件とソフトウェア仕様が実装されていることを確認するためにテストする必要があります (この質問は開発プロセス全体を通じて念頭に置く必要があります)。愚かなユーザーがまだ実装していないことを実行しようとしてアプリケーションを破壊できないようにしたいと考えています。また、プログラムがさまざまなブラウザー (できれば IE6 ではない) で正しく実行できることを確認する必要もあります。

アプリの操作性を向上させ、完璧なものにするために、いくつかの小さな調整を加える時期でもあります。

ステップ 5: リリースとフォローアップ作業

この最後のステップ (ただし、終わりではありません) は、ユーザーが実際に使用できるようにアプリケーションをリリースすることです (このアプリケーションが公開開発されたアプリケーションの場合は、次のことを忘れないでください)プレスプロモーションを行います)。必要に応じて、最初にベータ版をリリースしてください。そうすれば、少数のユーザーだけがアプリケーションの大きな問題を見つけることができます (プログラムには間違いなくバグがあるため)。また、プログラムの品質を向上させるのに役立ちます。急いで機能を追加せず、現在のプログラムをしっかりとしたものにすることに集中してください。

ベータ段階を通過し、プログラムが非常に安定したら、ユーザーのフィードバックに耳を傾け、アプリケーションを自分で試して、アプリケーションをより良くする方法を考え始めることができます。不一致な領域を見つけて削除します。後続の各反復では、上記の 5 つのステップを実行しますが、最初に述べたように、これで動作するアプリケーションが完成したので、これらのステップを頭の中で直接完了して、次の反復のコードでの機能のテストに直接進むのは簡単です。 。

おめでとうございます。あなたは Web アプリケーションの作成者であることを誇りに思います。


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

PHPにおける後期静的結合の概念を説明します。 PHPにおける後期静的結合の概念を説明します。 Mar 21, 2025 pm 01:33 PM

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 Mar 28, 2025 pm 05:12 PM

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。

フレームワークセキュリティ機能:脆弱性から保護します。 フレームワークセキュリティ機能:脆弱性から保護します。 Mar 28, 2025 pm 05:11 PM

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

See all articles