目次
レベル
ミッシングリンク
スパゲッティ コードをあきらめる
既存のプロジェクトを分析する
独自の PHP 開発環境の構築を学習します
ベスト プラクティスを早期に実装する
さまざまなフレームワークを試して 1 つを選択してください
やることがないなら、何かを作ってみよう
パートナー/メンターを見つける
概要
ホームページ バックエンド開発 PHPチュートリアル PHP エキスパートになる: 失われたリンク

PHP エキスパートになる: 失われたリンク

Jun 13, 2016 pm 12:12 PM
php windows

PHP プロフェッショナルになる: ミッシング リンク

この投稿は、「PHP プロフェッショナルになる」シリーズ 4 つのうちの 1 つ目です。

Quora での質問、Google グループ、ニュースレター、雑誌など、さまざまな PHP 関連のブログを閲覧していると、スキルの階層があることによく気づきます。質問は、「MySQL データベースに接続するにはどうすればよいですか?」または「新しいサーバーを導入せずにメール システムを拡張して 1 時間あたり 10,000 件を超えるメールを送信するにはどうすればよいですか?

を使用します。」レベルは、初心者、中級者、エキスパート、エリートの 4 つのレベルに分かれています (どのプログラミング言語や職業にも当てはまります)。

レベル

PHP 初心者向けに、変数の使い方、インクルードファイル、フォーム処理などを学びます。彼らは単純な論理構造を学びます。チュートリアルの指導を受けながら、PHPでメール送信を実装したり、よく分からないままオブジェクト指向プログラミングにも触れたりしました。 WordPress のいくつかの CSS ファイルを変更することもできます。この知識を武器に、彼らは仕事を探し始めますが、残念ながらたいてい失敗します。

専門家とは、多くのプロジェクトを経験し、豊富な経験を持つ人々です。彼らは多くの商用アプリケーションを開発してきましたが、そのためにフレームワークを完全に使用しているわけではありません。彼らは、PHP を使用してさまざまなデータベースを効率的に開発できるだけでなく、会議を通じて問題の解決策について話し合うことができます。彼らは設計パターンに精通しており、プロジェクトのエンジニアリング図面をコードに簡単に実装できます。彼らは手続き型プログラミングから距離を置きます。

エリート プログラマーとは、専門スキルを磨くために 10,000 時間働いたプログラマーのことです。彼らは、ニーズに応じて PHP 拡張機能を作成でき、ソース コード ファイルを見るだけでバグを見つけることができ、コード レイアウトをよく理解できます。彼らは最も複雑なプロジェクトのみに取り組み、問題に対する代替的で創造的な解決策を見つけることができます。彼らはプログラミング言語に関する人気の書籍をいくつか執筆し、数十回の講義を行っており、独自のバージョンの PHP 言語や非常に成功したフレームワーク、あるいはその両方を持っている場合もあります。

では、中級者には誰が属するのでしょうか?

ミッシングリンク

どうすれば初心者がプロになり、それを超えることができるでしょうか?基本以上のことを何も知らない人が、どうやってスキルを向上させ、間違った開発方法を放棄し、より高度な開発方法を学ぶことができるでしょうか。この質問は多くの初心者から私に寄せられました。専門家になるためには、まず中級者にならなければなりません。

次のリストは、中級者になるために経験する必要のある PHP 学習の過程を示しています。

スパゲッティ コードをあきらめる

多くの人はクラスを使用すると考えています。それだけで十分です。これはオブジェクト指向のコードを書くことを意味しますが、関数を使用することは手続き型のコードを書くことを意味します。しかし、これは誤りです。この観点を裏付けるために、手続き型コードはクラスとオブジェクトを使用しないコードであるのに対し、OOP コードはクラスとオブジェクトを可能な限り使用するコードである、という広く普及している定義を前提としています。

私の提案は、手続き型コードを完全に放棄することです。可能な限りオブジェクト指向スタイルでプログラムします。クラスを作成し、ロジックをカプセル化し、現実世界の用語の使用を検討します。プロシージャル コードのパフォーマンス上の利点は、適切な OOP コードがもたらす再利用性の利点や、将来の開発者がプロ​​ジェクトの作業を継続できる容易さに比べれば、見劣りします。この観点に対する反論は、「でも、WordPress は手続き型だ!」というものです。正直に言うと、これは少し厳しく聞こえるかもしれませんが、Instagram を持っていれば写真家になれるのと同じように、「WordPress 開発者」は実際には PHP 開発者ではありません。これを WP が役に立たないという意味に受け取らないでください。ブログ、単純なサイト、および 1 日の小さなプロジェクトの開発にあまり時間をかけないと予想される場合、WP での開発は素晴らしい結果をもたらします。急いでいる人やスキルがあまりない人には最適ですが、WP をマスターしてもプロの PHP 開発者になれるわけではありません。スパゲッティ コーディングが使用され、不適切な設計原則を教えることになります。

小さなことから始めましょう。現実世界の概念を考えて、それを OOP コードで表現してみます。いくつかの基本的なチュートリアルを実行して、ゆっくりと OOP に習熟してください。適切なフレームワークや「モデル」、「ビュー」、「コントローラー」などの混乱を招く用語に移行する前に、クラス全般を理解するまで OOP でコードを書くことに固執してください。これらの用語はすべて雲の中にあり、しっかりした基盤がありません。 OOPで。

既存のプロジェクトを分析する

見つかった既存のソース コードを詳しく調べます。たとえば、Github で PHP プロジェクトをチェックアウトし、クローンを作成し、独自のホストにデプロイして、コードを読んでみてください。すべてのファイル、すべての行を、その内容を理解するまで繰り返します。

標準化された注釈、優れた構造、継続的な開発を備えたプロジェクトを探してください。 2008 年より前に更新されたプロジェクトは、PHP 5.5 の使用を開始する場合にはあまり適していません。そうしないと、すでに過密な分野で目立つことができる PHP の最新かつ最高の機能を見逃してしまう可能性があります。

独自の PHP 開発環境の構築を学習します

独自の環境を構築できれば、それは非常に優れた能力です。独自の環境を構築すると、状況に応じて微調整ができるだけでなく、ソース コードから拡張機能を構築することに慣れることもできます。

Windows での開発を放棄する - 主要なデスクトップ環境が Windows の場合は、仮想化ソフトウェアをインストールし、Linux 仮想マシンを実行します - Windows は大文字と小文字、行末などを区別しません。ほとんどのサーバー環境では Windows で開発すると多くの問題が発生するため、最終的にプロジェクトを実行するシステムで開発することをお勧めします。

仮想マシンは、実験の実施にも役立ちます。何か問題が発生した場合は、最初からやり直すか、ロールバックできます。混乱を心配することなく、好きなだけ低価格で試すことができます。ツールを使いこなすことは重要ですが、適切に動作するプラットフォームを用意することも重要です。

自分で実験を行うことで、Apache や Nginx を使用するか、Appserver を使用するかなど、さまざまなサーバーに慣れることもできます。

ベスト プラクティスを早期に実装する

コードを作成するときは、十分なドキュメント コメント、適切なインデント、適切な構造があることを確認してください。クラス、プロジェクト、またはライブラリを構築するときは、よく知られているドキュメント ツール (PHPDocumentor、ApiGen) を使用してドキュメントのコメントを抽出し、それらを改善します。

優れた IDE も非常に価値があります。クロスプラットフォーム エディターを使用すると、いつでも新しい開発環境をセットアップでき、キーボード ショートカットの変更に時間を無駄にすることなく、コードの作成に集中できます。テーマ。いつでも新規インストール用に構成ファイルをインポートできるように、IDE の構成ファイルを Google Cloud Services などの場所にバックアップしてください。優れた IDE は PHPStorm です。それを買う余裕がない場合、または無料ライセンスを必要とするオープンソース プロジェクトがない場合は、Netbeans が良い選択であり、どちらもクロスプラットフォームです。

ベスト プラクティスを早期に実装すると、コードの一貫性が維持され、他の人がコードをよりスムーズに読むことができます。自分のスタイルを見つけて、それを貫くことで、自分だけでなく他の人も助けることができます。 PSR 標準 (PSR-0、PSR-1、PSR-2、PSR-3) に従うようにしてください。これらの標準には理由があります。私たちのほとんどは、誰もがコードを再利用可能で読みやすいものにするこれらの標準を使用し、愛用しています。

初心者向けの優れた、常に更新されるリソースは、正しい方法での PHP です。これを学習すると、最新の実践方法、基本的な OOP、セキュリティ、デプロイメント、コーディング標準などに慣れることができます。前述したように、さらに多くのことを理解できます。

さまざまなフレームワークを試して 1 つを選択してください

長い間、ほとんどのフレームワークで使用される言語は PHP でした (最近では JavaScript が最も人気があります)。これが私たちのコミュニティを反映しているのか、それとも言語の人気に一貫性がないのかはわかりませんが、特に初めて始める場合、フレームワークの選択が困難な作業になる可能性があるという事実は変わりません。

ほとんどのフレームワークを試してみたので、堅牢性、品質、そして C で書かれていて PHP の拡張機能としてインストールされているという事実から、Phalcon フレームワークを心からお勧めできます (したがって、現在存在するどのフレームワークよりも高速です) )。ただし、さまざまなフレームワークを自分で試してみる価値はあります。

さまざまなフレームワークを試してみると、同じ問題を新しい方法で解決できることがわかります。各フレームワークには、好きな長所と嫌いな短所がありますが、より重要なのは、他の人 (特にフレームワークの開発者) の考え方について学ぶことです。新しい使用方法とアプローチがわかります。ベスト プラクティスは、できるだけ多くのフレームワークを使用して同じ実験プロジェクトをリファクタリングすることです。これは、特定のフレームワークの有効性、つまり、それを使用した開発の速度とそのパフォーマンスを効果的に測定するのに役立ちます。

他の人のヒントやテクニックを過小評価しないでください。できるだけたくさん読んでください。読み続ければ、思っているほど時間はかかりません。優れたブログを見つけてフォローし、サイトのガイドを読み、StackOverflow の質問と回答を閲覧し、SitePoint フォーラムにアクセスし、ニュースレターを購読し、Google の優れたリソースをフォローします。基本的な PHP チュートリアル本は出版された時点では古くなっているため、避けてください。代わりに、最新のコードが含まれるオンラインで見つけられるスニペットやガイドに焦点を当ててください。すでに研究したテーマに出会った場合でも、それについて読んでみてください。同じテーマに関する他の人の視点を読むことで、何か新しい発見があることがよくあります。

やることがないなら、何かを作ってみよう

やることは必ずある。 「取り組むプロジェクトがない」とか、さらに悪いことに「退屈だ」などとは決して言わないでください。進行中のプロジェクトがない場合は、作成してください。毎日使用しているツールの機能が不完全なためにイライラしていませんか?もっと良いものを自分で作ってください!新製品のアイデアはありませんか?次に、既存のコピーを作成します。基本的な FaceBook を再構築して、すでに知っているものを練習できるように再構築してみてください。

最も重要なことは決して止まらないことです。1 時間を大切にしないと 10,000 時間は蓄積できません。良い仕事を続けて、興味と関心を持ち続けてください。簡単なアドレス帳アプリケーションを作成します。次に、別のフレームを使用して再構築します。そして、別のデータベースを使用してください (例: MariaDB の代わりに Mongo)。忙しくしてください!

パートナー/メンターを見つける

誰かと一緒にいると学習が容易になります。あなたの情熱を分かち合うパートナーを見つけてください。おそらくあなたは、独自の興味を共有するパートナーがすでにいる幸運な数少ない人の一人かもしれません。もしかしたら、学校や大学に、一緒に仕事を始めて一緒に頑張りたいという仲間がいるかもしれません。メンターを見つけて専門家から指導を受けることもできます。

パートナーの力を過小評価しないでください。3 人組なら、必ず先生がいます!

概要

これらすべての項目に焦点を当て、可能な限りそれらをマスターし、これが自分が望んでいることであると認識したら、頑張ってください - あなたはその道を進んでいます。上級 PHP 開発者になる途中です。自分の原則を維持し、(たとえ周りの人が諦めたとしても)決して諦めず、練習を続けてください。

役立つリソースをお持ちで、開発者の中級者の壁をどのように乗り越えたのか (または越えつつあるのか) を私たちと共有したい場合は、以下にコメントを残してお知らせください。

元のリンク: SitePoint 翻訳: Bole Online - rokety

1FTris
見て学んでください! 🎜>
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 7にMySQLをインストールできますか? Windows 7にMySQLをインストールできますか? Apr 08, 2025 pm 03:21 PM

はい、MySQLはWindows 7にインストールできます。MicrosoftはWindows 7のサポートを停止しましたが、MySQLは引き続き互換性があります。ただし、インストールプロセス中に次のポイントに注意する必要があります。WindowsのMySQLインストーラーをダウンロードしてください。 MySQL(コミュニティまたはエンタープライズ)の適切なバージョンを選択します。インストールプロセス中に適切なインストールディレクトリと文字セットを選択します。ルートユーザーパスワードを設定し、適切に保ちます。テストのためにデータベースに接続します。 Windows 7の互換性とセキュリティの問題に注意してください。サポートされているオペレーティングシステムにアップグレードすることをお勧めします。

PHPの未来:適応と革新 PHPの未来:適応と革新 Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

MySQLを解く方法は、ローカルホストに接続できません MySQLを解く方法は、ローカルホストに接続できません Apr 08, 2025 pm 02:24 PM

MySQL接続は、次の理由が原因である可能性があります。MySQLサービスは開始されず、ファイアウォールは接続をインターセプトし、ポート番号が間違っています。ユーザー名またはパスワードが間違っています。My.cnfのリスニングアドレスは不適切に構成されています。トラブルシューティング手順には以下が含まれます。 2.ファイアウォール設定を調整して、MySQLがポート3306をリッスンできるようにします。 3.ポート番号が実際のポート番号と一致していることを確認します。 4.ユーザー名とパスワードが正しいかどうかを確認します。 5. my.cnfのバインドアドレス設定が正しいことを確認してください。

ターミナルからMySQLにアクセスできません ターミナルからMySQLにアクセスできません Apr 08, 2025 pm 04:57 PM

端末からmysqlにアクセスできない場合は、次の理由があります。MySQLサービスが実行されていません。接続コマンドエラー;許可が不十分です。ファイアウォールは接続をブロックします。 mysql構成ファイルエラー。

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHPとPython:2つの一般的なプログラミング言語を比較します PHPとPython:2つの一般的なプログラミング言語を比較します Apr 14, 2025 am 12:13 AM

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPの現在のステータス:Web開発動向を見てください PHPの現在のステータス:Web開発動向を見てください Apr 13, 2025 am 12:20 AM

PHPは、現代のWeb開発、特にコンテンツ管理とeコマースプラットフォームで依然として重要です。 1)PHPには、LaravelやSymfonyなどの豊富なエコシステムと強力なフレームワークサポートがあります。 2)パフォーマンスの最適化は、Opcacheとnginxを通じて達成できます。 3)PHP8.0は、パフォーマンスを改善するためにJITコンパイラを導入します。 4)クラウドネイティブアプリケーションは、DockerおよびKubernetesを介して展開され、柔軟性とスケーラビリティを向上させます。

PHP:それは死にかけていますか、それとも単に適応していますか? PHP:それは死にかけていますか、それとも単に適応していますか? Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

See all articles