似非PHPプログラマから逃れるためにすべきこと
優秀な PHP プログラマーになるにはどうすればよいですか? PHP プログラマーとみなされるためにはどのようなスキルが必要ですか?あなたの技術のレベルはどれくらいですか?この記事では、PHP プログラマーとして知っておくべきことをいくつかリストします。
MySQL の機能
開発中のアプリケーションは、いくつかの機能に基づいています:
(1) 理解する: PHP を使用してデータベースに接続する方法を知る、簡単な SQL を作成する方法を知る、データベースを簡単に操作するためのツールを使用する方法を知る。データベーステーブル構造データの変更など)。
(2) 知識: 開発アプリケーション用のデータベースの設計方法、いくつかの効果的なインデックスの確立方法、SQL パフォーマンスの分析のための Explain の使用方法、ストレス テストなどの知識。
(3) 非常に精通している: データベース インデックス、ストレージ エンジンの原理、操作メカニズムを深く理解し、高性能でスケーラブルなデータベース構造/アーキテクチャを効果的に構築し、データベース パフォーマンス構成を効果的に最適化およびデバッグできる。データベースの実行ステータスを分析します。
(4) 熟練: 簡単に言うと、上記の能力をすべて備えていると同時に、高負荷の分散環境での管理の最適化に長年の経験を持っています。
観察と対話の経験によると、PHPer の 70% が理解段階にあり、25% が精通段階にあり、>4% が非常に精通しています。熟練した人は基本的に PHPer ではありません。
◆このグループの 70% は、MySQL を単なる記憶媒体であると考え、メモリと CPU を追加すれば問題が解決すると考えており、MySQL を無視している可能性が高いです。
典型的なインシデント: join、order by、group by およびその他のステートメントのパフォーマンスがめちゃくちゃで、データベースがまったく設計されていない (1 つのメイン テーブル、N 個の付録などに分割することに限定されている)、フィールドのタイプと機能が不明瞭で、クラッシュが発生します。大きなテーブルに対して複雑なクエリを実行する方法がありません。
◆このグループの 20% の人々は、MySQL の動作メカニズムを十分に理解しておらず、MySQL のパフォーマンスに影響を与える重要な要素について明確ではなく、習熟していません。
典型的なインシデント: マニュアルは理解しているが、インデックス作成の原理を説明できず、データベース上のバイナリ ツリー、HASH、その他のアルゴリズムの役割を知らない
◆グループの 4% が基本的に DBA の機能を実行する資格を持っています。
OOP 機能
(1)理解する:変数のスコープ、型、意味を理解し、継承の仕組みなどを理解し、再利用やカプセル化の概念を理解する。
(2) 知識: プログラムを開発するためのインターフェース、抽象化、およびその他のテクノロジの使用に習熟しており、一般に Java を学習しています。
(3) 非常に精通している: OOP アーキテクチャ設計の経験があり、デザイン パターン、UML に精通し、PHP オブジェクト操作メカニズム、コンテンツ管理などに精通している。
(4) 熟練: PHP に限定されず、アーキテクト レベルである必要があります。
OOP に精通していると主張しながら、パブリック、プライベート、プロテクト、静的について明確に説明できない人によく出会います。彼らは正式な OOP プロジェクトを経験したことがないはずです。
大規模な Web サイト体験
(1) 理解する: PHP で開発されたキャッシュ アプリケーション (Memcache、APC など) に精通しており、特定のセッション処理ソリューションに精通している。 PHP データ接続プール アプリケーションを使用して、PHP プログラミングのパフォーマンスの最適化について学びます。
(2) 知識: 分散キャッシュとキャッシュ パフォーマンスの最適化をマスターし、ストレージ システム、ファイル システム、データベースに精通し、スケーラブルなプラットフォームを開発します。負荷分散と組み合わせてトラフィックを合理的に整理し、PHP の動作パフォーマンスを監視および分析できます。
(3) 非常に馴染み深い: PHPer 段階を超えたシステム アナリスト機能を備えています。
(4) 熟練。
DOM 開発機能
応用力 ?