1

私は現在、会社のプロジェクトで開発者チームと協力して、製品と価格情報の一元化されたリポジトリを作成しています。これは、社内での使用と外部クライアントでの使用の両方のために構築されます。製品と価格情報を保存する基本機能に加えて、以下に対応するインフラストラクチャを構築する必要があります。

  • REST API エンドポイント
  • 開発/ステージング/展開ワークフロー (特に、ライブ環境でレコードの更新を実行する場合)
  • ロギング
  • 分析
  • 報告
  • セキュリティ (認証と承認)。

リストを調べてみると、Web アプリケーションの非常に一般的な一連の要件のように見え、私の会社が何らかの新境地を開拓しているとは思えません。他の Web アプリケーションがこれらの問題にどのように取り組んでいるかを理解するのに役立つ特定のリソース (フレームワーク、テクノロジ スタック、記事、書籍) はありますか?

チームの背景を少し。チームは、バックエンドに PHP、Mongo、MySQL を使用し、フロントエンドに基本的な HTML、CSS、JQuery を使用して、少数の中小規模の Web アプリケーションに取り組んできました。チームはデザイン パターン (例: ギャング オブ フォー) に精通していますが、これまでのところ、上記のすべての要素を必要とするものには取り組んでいません。

4

1 に答える 1

1

Zend、Yii、さらにはRuby on RailsやDjangoなどの堅固なWeb開発フレームワークを試してみる価値はあります。これらは、PHPフレームワークではありませんが、かなり成熟しており、十分に構造化されています。そのフレームワークを開発に使用する予定がない場合でも、Webアプリケーションの構造化方法、ロギングおよび一般的なWebセキュリティ機能の実装方法に関する優れたアイデアを得ることができます。

デプロイメントとワークフローに関する限り、まだ読んでいない場合は、エクストリームプログラミングを読んでおくことをお勧めします。これは、今日多くの開発者がかなり古典的なアジャイルプロジェクト管理方法論と見なしていることを説明していますが、テストや継続的インテグレーションなどの重要なプラクティスにも関わっています。これは、私の意見では、開発ワークフローの非常に重要なコンポーネントです。チームとしてゼロから始める場合は、堅実なアジャイル手法を実装することで、または少なくともテストと継続的インテグレーションの強固な基盤から、多大な利益を得ることができます。

RESTスタイルのアプリケーションの例として、人気のあるオープンソース実装がどのように機能するかを確認することをお勧めします。これらのフレームワークの一部にはREST構造が組み込まれていますが、多くのオープンソースオプションがあり、その一部についてはここで説明します。

分析のために、Googleはここにかなりのドキュメントを持っています。

レポートに関する限り、何が必要かはわかりませんが、ログパーサーやバグまたはダウンタイムのレポーターについて話している場合は、AtlassianのBambooなどの継続的インテグレーション自動化ツールを含む優れたツールがいくつかあります。いくつかの報告支援。これらはレポート作成プロセスの一部に役立ちますが、私の経験から、大規模で複雑なWebアプリケーションは、最初から開発プロセスの一部と見なされるカスタムレポート要素の恩恵を受けることができます。プログラムでログを解析することはそれほど難しくありません。すべての実装に1つのサイズで対応できるとは思いません。

ちなみに、Atlassianには、お金を払っても構わないと思っている場合は優れた開発ツールがいくつかありますが、チケット追跡用のユビキタスなTracや、統合されたwikiを使用した基本的なプロジェクト管理など、オープンソースの代替手段を見つけるのは難しいことではありません。。

必要なすべての情報を提供する単一の包括的な場所を知っているとは言えませんが(少なくともまだです!)、この回答から何か面白いものを収集できることを願っています。新しいチームでいくつかの深刻なWeb開発プロジェクトを開始することは(私があなたの状況を正しく解釈した場合)、本当に楽しい挑戦になる可能性があります。幸運を!

于 2013-02-08T00:04:06.940 に答える