私の周りには PHP 開発をしている友人が何人かいて、私もこのプロジェクトに参加しました。 PHPエンジニアの多くは、自分たちの将来の技術的な成長や発展について疑問を抱いていることが多く、彼らが自分自身の課題を克服できることを願っています。より良い発展を実現します。
PHPエンジニア 成長のボトルネックに直面している
まず、私が何を指しているのかを明確にしてくださいPHPエンジニア は、卒業後、主に PHP を使用して WEB システムを開発したことを意味します。他の言語でも使えました。実務経験は3~4年程度、一般的なWEB系(100万レベルのアクセス、1,000レベル未満のデータやビジネス)ロジックは特に複雑ではありません) 基本的に問題なく開発できます。ただし、次のようになります:
PHP を除く他の言語は使用しないでください、シェル スクリプトをクリックしてください。
PHP の理解が不十分 (多くの PHP マニュアルはまだ読んでいません、 ライブラリを除く)
知識ベースは比較的狭いです (需要に直面して、 の使用を除く) PHP と mysql 、他の解決策は知りません)
PHP コードは主にプロセス指向であり、プロセス指向であると考えられている オブジェクトの実装が複雑すぎて理解できない
?
これらのPHPer は、高パフォーマンス、高同時処理、大量のデータを必要とするプロジェクトの場合、またはビジネス ロジックが比較的複雑な場合 (システム複数の分野でビジネス上の問題を解決する必要がある)、アイデアが不足しています。彼らは問題の本質を分析することができず、技術的な判断力も乏しいため、問題に対する一時的な解決策をすぐに見つけることができますが、多くの場合、継続的な一時的な解決策の中でシステムとそれ自体が段階的に崩壊します。では、どうすれば自分自身を改善できるのでしょうか?より難しいシステムに挑戦するにはどうすればよいですか?
?
より高い課題はどこですか?
皆さんが感覚的に理解できるように、私自身の経験に基づいて、いくつかの具体的な課題を挙げます。
高性能システムの課題は何ですか?
WEB サーバーを選択するには? fast-cgi モード
リバース プロキシ サービスを使用する必要がありますか?フルメモリキャッシュかハードディスクキャッシュを選択しますか?
負荷分散は必要ですか?それはアプリケーション層に基づいていますか?それともネットワーク層に基づいていますか? 高い信頼性を確保するにはどうすればよいですか?
最適化ツールを使用した後の PHP コードのパフォーマンスはどうですか? パフォーマンスのボトルネックはどこですか? は C の拡張として記述する必要がありますか?
ユーザー アクセスの特徴は何ですか? 、 読み取りと書き込みのどちらが多いですか?読み取りと書き込みの分離は必要ですか?
データはどのように保存されますか?書き込み速度と読み取り速度はどれくらいですか? データが増加すると、アクセス速度の読み取りはどのように変化しますか?
キャッシュを使用するにはどうすればよいですか? 失敗をどう考えるか?データの一貫性を確保するにはどうすればよいでしょうか?
?
高度に複雑なシステムの課題は何ですか?
そのビジネスが該当する分野を特定できますか?それは 1 つですか、それとも複数ですか?
ビジネスルールの変更を少ないコストで実現できるように、ビジネスを合理的に抽象化できるか?
データの一貫性とセキュリティは保証できますか?
オブジェクト指向の分析および設計手法をマスターしましたか?
?
いつ私が肯定的に挙げた質問に答えることができれば、技術的には建築家になることは基本的に可能だと思います。まだ答えられない場合は、次の方向に強化する必要があります。
?
ボトルネックを改善して突破する方法
方法 まだ答えられません。次の方向に強化する必要があります:
使用しているテクノロジーの原理とその背後にあるメカニズムを分析することで、技術を向上させることができます。判断と改善 技術的ソリューションの選択の正しさ;
大学時代に重要な知識を学ぶ、オペレーティングシステム原則、データ構造、アルゴリズム。以前は / 試験の勉強をしていたとは思いますが、今は自分で勉強して、その理由を自分で知る必要があります。
大学ですでに学習した C 言語をもう一度学習し始めてください。これは、PHP 拡張機能を記述する必要があるためだけでなく、C を実行するアプリケーションには、常に懸念されるパフォーマンス、メモリ制御、変数の有効期間、データ構造、アルゴリズムのための環境。
複雑な問題を解決するための効果的な方法であるオブジェクト指向の分析と設計を学びます。抽象化を学びましょう。それが複雑な問題を解決する唯一の方法です。
?
「どうやってこんなにたくさんのことを学ぶのですか?習得するのにどのくらい時間がかかりますか?」 ?
しっかりと計画を立てて取り組んだ場合、1~2 年かかると推定されています。
?
また、PHPer を開発すればフロントエンドへ、それは別の質問です 開発ルート
?
?
私は負け犬になることを拒否します、私は優等生になりたいです! 無料説明書PHP 書籍 CD