【譲渡】phpプログラマー
http://www.blags.org/php-programmer/
?
?
?
私は最近、tencent や xunlei などの有名なインターネット企業に面接に行きました。要約すると、
?
低レベル開発のためにこの種の企業に参入したい場合は、Apache の実装原則など、インターネットのあらゆる側面の技術原則を明確に理解する必要があります。言語的にはPHP開発なので当然C/C++の要求が高くなります。多くの場合、独自の PHP 拡張機能を作成する必要があります。当然のことながら、mysql を使用する場合は、多くの一般的なパフォーマンスのボトルネックに対する適切な解決策が必要です。 Mysqlプラグインの作成、Apacheモジュールの作成。ポイントを接続して結合するには、C についての知識が必要です。
中間層とフロントエンドの作業を行っている場合は、CSS と JavaScript に対してより高い要件が必要です。もちろん、Web の一連の実装原則についてもよく知っている必要があります。
優れた学習能力と使用能力があることを証明するには、新しいテクノロジーに敏感でなければなりません。
英語のスピーキングとリーディングのスキルを向上させるために一生懸命努力してください。新しいテクノロジーの多くは外国人によって考案されることがよくあります。中国語版が登場する頃には、おそらくこのテクノロジーはそれほど新しいものではなくなっているでしょう。
私たちの多くは技術原則の表面をなぞっただけだと思います。この種のことについてはほとんど知られていません。彼らにとって規則性も非常に重要であることは注目に値します。
?
PHP プログラマー(上級)の資格を取得するには、以下の条件を満たす必要があります。
?
◆ ファイルディレクトリ処理機能パッケージの80%以上の機能を柔軟に利用可能。
◆日付・時刻関数の80%以上を柔軟に利用可能
◆ 数学関数ライブラリの内容は 100%。
◆ ネットワークライブラリのコンテンツの60%以上は各機能の機能を熟知しています。
◆ コンテンツの 60% 以上が文字列処理関数、特に各種処理関数に含まれています。
◆ コンテンツの 90% 以上が正規表現機能、特に各種正規処理
◆ コンテンツの 40% 以上が一部のセキュリティ ライブラリに含まれており、セキュリティとの関わりがなければ PHP をマスターすることは不可能です
◆ XML 処理。SAX、DOM、JDOM の長所と短所を理解しており、それらの 1 つを使用して XML 解析とコンテンツ処理を完了できる。
◆ コンテンツの 80% 以上がグラフィックスおよび画像関数ライブラリに含まれており、特に一部の画像生成と処理
◆ MySQL データベースのコンテンツの 90% 以上が関数、特にさまざまなデータを処理する関数
◆ 内容の90%以上が配列処理関数、特に各種演算処理関数
◆ 他の PEAR、PECL、および一部の拡張クラス ライブラリのコンテンツの 80% 以上、特に一般的に使用されるクラスの処理
◆ さまざまなニーズに合わせて、さまざまな関数ライブラリを見つけてください。
◆ テスト: phpunit を使用してテスト ケースを作成し、コードの自動テストを完了することに慣れている必要があります。
◆ 管理: プロジェクトのコンパイル、phpdoc の生成、生成、バージョン管理、自動テストなどのプロジェクト管理の一般的なタスクを完了するには、xinc、phing などの使用に精通している必要があります。
◆ トラブルシューティング: 例外情報に基づいて、問題の原因とおおよその場所を迅速に特定できる必要があります。
◆ 感想: PHP を使用して開発されたシステムが本物の PHP システムになるためには、OOP の主な要件をマスターする必要があります。
◆ 標準: プログラムの可読性を高めるために、作成するコードは一般的なコーディング標準に準拠する必要があります。
◆ 博学: マスター OOA、OOD、YiiFramework、Zendframework、cakephp、symfony、テンプレート テクノロジーおよびその他の一般的なテクノロジー、マスター ソフトウェア アーキテクチャ設計アイデア、検索エンジンの最適化、キャッシュ システム設計、Web サイトの負荷分散、システム パフォーマンス チューニングなどの実践的な知識テクノロジー。
?
◆ 他の人が書いたコードを読む 優れた PHP フレームワークはたくさんありますが、多くの人が認識エラーを抱えています。フレームワークを使用してシステムを開発できると考えると、そのフレームワークにはすでに慣れていると思いますが、実際にはフレームワークというものは存在せず、基本的にはすべてのフレームワークを使用できます。スキルを向上させたい場合は、これらのフレームワークの実装原則 (設計パターン) を参照してください。