すべてのPHPプログラマーは、少なくとも何らかの形式のテンプレートエンジンとデータベース抽象化レイヤーを使用する可能性がありますが、それらとは別に、どのような追加機能が不可欠であると思いますか、または他のプログラマーに試してみることをお勧めしますか?
2 に答える
優れたフレームワーク。
PHPには、Zend's、Solar、CakePHP、Symfony、Kohanaなどの選択肢がたくさんあります。優れたフレームワークは、アプリケーション開発の面倒な部分のほとんどを取り込んで、プロジェクト固有のドメインロジックの実装により多くの時間を費やすことができます。フレームワークは、一貫したコーディングスタイルを適用するのにも役立ちます。通常、多くのドキュメントがあり、ほとんどが非常によくテストされており、全体的に安定しています。優れたIDE。
真面目な開発者にとって、優れたIDEは必須です。プロジェクトの編成、ディレクトリナビゲーション、コードの完了、およびさまざまな便利な拡張機能(たとえば、ファイルバージョン管理システム用)はすべて、生産性を大幅に向上させます。PHPには、 ZendStudioやPDTforEclipseなどの優れたIDEがいくつかあります。システムを構築します。
ビルドスクリプトは、プロジェクトをフェーズ間(開発/ステージング/本番)に移動する前に、ディレクトリ/ファイルのアクセス許可の設定、SVNの更新、テストの実行などの自動反復タスクに役立ちます。私は主にPhing(Antクローン)をプロジェクトの構築と展開に使用しています。プロファイリングおよびデバッグツール。
これらの2つのニーズは、同じツールであるxdebugによって解決されます。これは、改善されたデバッグ機能を提供し、アプリケーションをプロファイリングするためのkcachegrindレポートを生成することもできます。次に、webgrindを使用してこれらのレポートにアクセスします。オペコードキャッシュ。
PHPは、実行時のコンパイルスキームによってパフォーマンスに大きな打撃を与えます。オペコードキャッシュは、スクリプトをコンパイル済みの状態でキャッシュし、キャッシュヒット時のコンパイルのオーバーヘッドを回避することで、これを改善するのに不思議に思います。機会があれば、オペコードキャッシュとしてAPCを使用します。さまざまなオープンソースパッケージ。
言語としてのオープンソースであるPHPには、オープンソース開発の長い伝統があります。最も一般的な(そしていくつかの珍しい)ニーズに対応する高品質で便利なパッケージが多数あり、開発時間を大幅に節約できます。私はブログプラットフォームとしてwordpressとjoomlaを使用し、HTMLのサニタイズと検証にはHTML Purifierを使用し、CSSとJavascriptの縮小と連結にはminifyを使用しました。ソースファイルのバージョン管理。
プログラミング言語に関係なく必須です。亀のクライアント(Windows用)でSVNを使用しています。
IDE : Eclipse の PDT
ソース管理 : Tortoise SVN を使用した SVN
フレームワークなどのその他の詳細は、プロジェクトによって異なります。