目次
1: プログラミングのアイデアを深く理解する" >1: プログラミングのアイデアを深く理解する
MVC、単一エントリ、正規表現など" >2: MVC、単一エントリ、正規表現など
3: データベースの詳細
キャッシュ処理" >4: ファイルキャッシュ、データベースキャッシュ、メモリキャッシュなどのさまざまなキャッシュ処理
5: サーバー
6: 負荷分散、Webサイトの耐圧など
7: データ構造の徹底的な学習
8: 基礎となる言語
9: アプリケーションレベルの学習
ホームページ バックエンド開発 PHPチュートリアル PHPを深く学ぶ際のボトルネックを解決する方法

PHPを深く学ぶ際のボトルネックを解決する方法

Apr 04, 2017 pm 03:13 PM
php ボトルネック

PHP は、最初に学習したときは非常に簡単であると学習者に感じさせますが、2 ~ 3 年学習すると、ボトルネックに遭遇したと深く感じます。 「価値がない、捨てるのは残念だ」という感情はとても適切です

私はよくこう感じます。 、私は何も進歩しないようです、私が学んでも何も進歩しません ..elseループこれらは皆さんも知っていますし、いくつかの 関数

さえ覚えています。他の人はよく知りませんが、プロジェクトが始まると、本当に解決策がなく、何をすべきかわかりません...

現時点では、まず第一に。 、業界に入ったことおめでとうございます、そして第二に、PHP を深く学ぶというボトルネックを克服できたことおめでとうございます

しかし、このレベルに合格することで、あなたの知識のレベルは向上します。妨げとなるのは PHP に関することではなく、PHP 以外の多くの事柄です...

。このボトルネックを解決するにはどうすればよいですか?

1: プログラミングのアイデアを深く理解する

PHP 開発プロジェクトに含まれるプログラミングのアイデアには、プロセス指向プログラミングの実装、

オブジェクト指向プログラミングの実装、およびアスペクト指向プログラミングが含まれます。これは、最初に遭遇するプログラミングのアイデアです。これは、重複を引き起こすコードを関数にカプセル化する処理のアイデアです。このアイデアを使用して、プロジェクトを直接開発できます。 、しかし、非常に多くのファイルを作成することになるため、プロジェクトの開発にはプロセス指向のプログラミングのアイデアのみを使用することになります。最大の特徴は、プロジェクト内のファイルが多すぎることです。ファイルが多いと、フォルダーの配布を制御することが難しくなり、プロジェクトのメンテナンスやアップグレードにも役立ちません。また、大規模なプロジェクトを構築することも困難になります。これは通常、エンタープライズ Web サイトと同じです。ファイルの数が多い場合は、新しいアイデアが必要になります。オブジェクト指向プログラミングのアイデアは、カプセル化、抽象化、継承、ポリモーフィズム、

インターフェイス

です。これらを丸暗記する必要はありません。実践的な原則を理解して、少なくとも「継承はなぜポリモーフィックなのか?

これが重要なポイントであり、難しいことだ」と自分自身に納得させることができなければなりません。あなたはそれをすべて読んでおり、たくさんの本を読んでいますが、それを使用する際には意味がないようです。なぜなら、これは少なくとも PHP の深い理解の妨げになるからです。たとえば、多くの人が TP を使ってプロジェクトや Laravel を開発していますが、Laravel のソースコードはなぜそうなっているのでしょうか?これらの質問に答え、その理由をさらに尋ねます。答えを探す過程で、知らず知らずのうちにレベルが向上します... プロジェクトの開発にオブジェクト指向の思考を使用すると、ファイルを作成し、プロジェクトを非常に便利にします。コンパクトで合理的でありながら、強力でスケーラブルです。ただし、プロジェクトが大きくなるにつれて、ファイル間の必然的な重複に反映された重複コードが多数存在することがわかります。これはオブジェクト指向の欠陥ではなく、プロジェクト自体の問題です。オブジェクト指向は、これらの問題を解決するのに十分強力ではありません (プロセス指向であればなおさら)。現時点では、新しい考え方、つまりアスペクト指向のプログラミング思考をアップグレードする必要があります。もしかしたら、この考えはあなたにとって漠然としているかもしれません。しかし、「テンプレートにデータ取得ラベルを設定する」と言えば理解していただけるはずです。

フォーム: 5" order="id asc" limit="10">

《{$title}》---{$author}

{$add_time}

これは、テンプレートを設定するときに動的データを取得するためによく使用される方法ですが、なぜこの方法で行われるのか説明できますか?

実際、これらの質問に答えることができれば、あなたはすでにアスペクト指向プログラミングの分野に参入しています。テンプレート解析エンジンを深く理解する必要があるためです... これは大規模なプロジェクトによってもたらされますが、オブジェクト指向のコードの冗長性によって解決することはできません。この方法でのみプロジェクトを改善できます。

2: MVC、単一エントリ、正規表現など

MVCはこれらの単語を暗記することではなく、深く理解することです。 ControllerModel、View がある理由と、それぞれの内容がどうあるべきかを理解します...

正規表現も非常に熟練する必要があります。

3: データベースの詳細

データベースのサブデータベース、サブテーブル、パーティション、データベース クラスターについて学び始めます。

データベースの最適化: インデックスの最適化、SQL ステートメントの最適化など。

4: ファイルキャッシュ、データベースキャッシュ、メモリキャッシュなどのさまざまなキャッシュ処理

これらには、設定ファイルの作成方法と操作方法、データベース キャッシュ テーブル、キャッシュ フィールドなど、多くのことが関係します。 NoSQL の導入: Memcache、RedisMongodb、....

5: サーバー

は主に Linux サーバーであり、多くのコンテンツがあり、最初に導入されたものはアウトは、Apache、Nginx、およびその他の Web 監視プログラムです。

ssh、ftpなどの一般的なプログラムもあります。

さらに詳しくは、シェル プログラミングがあり、シェル プログラミングを使用して、AMP、WDCP などのサーバー管理システムを開発します。これらのことは、PHP の作業を行うあなたには無関係に思えるかもしれませんが、Web サイトにアクセスできない場合は、 、あなたは何が問題か知っていますか?したがって、それは無関係ではありませんが、非常に関連性があるため、その狭い制限の意味をこれ以上維持しないでください。

6: 負荷分散、Webサイトの耐圧など

発展性のあるプロジェクトを構築するために必要な内容ですが、どれくらい理解できましたか? PHP関連。

7: データ構造の徹底的な学習

あなたは新入生のときにデータ構造を学んだと思いますが、それはポインタ、リンクされたリスト、キュー、スタックなどについて話していました。聞いた内容は混乱するでしょう。あまり使用しないでしょう。ただし、この段階では、Apache の原理などを理解するのに役立ち、もちろん Apache を使いやすくなります。これは実際、ボトルネックの問題を目に見えない形で解決するのに役立ちます。

8: 基礎となる言語

を主に学習する必要があります: C 言語、C++; C 言語と C++ は非常に重要な基本言語であることがわかります。 PHP インタプリタは C/C++ で書かれており、ブラウザも C/C++ で書かれています。これはもちろん PHP アプリケーションにリンクされています。

9: アプリケーションレベルの学習

を強化します。例: WeChat 開発、さまざまなサードパーティプラグインの使用 (jquery、Layer、bootstrap、Uploadify)。必要なプラグインを自分で作成することもできます。

PHP だけに限定するのではなく、フロントエンドにも取り組み始めてください。フロントエンドに関することで PHP をより深く理解できるようになります。例: Web サイトのトップページから記事を抽出する場合、数字が 1、2、3、4、5 であれば、フロントエンドから解決することも、PHP から解決することもできます...さらに必要な場合はどうすればよいですか?変態的な情報表示?おそらく、PHP 側、あるいはデータベース側で解決するのが適切でしょう...

知識を広げることで、PHP をより深く学ぶことができます...

要するに、PHP を学ぶときは、次のことが必要になります。基本をマスターすれば、PHP は簡単で、非常にシンプルで、2 週間もあれば習得できるなどと子供じみた発言をすることはもうありません。自分がますます小さくなり、まだ多くのことを学ぶ必要があるとさえ感じるかもしれませんが、少なくともこの業界に本格的に参入したのであれば問題ありませんが、PHP を深く学ぶというボトルネックに直面することになります。あなたを妨げているのは、PHP 以外の多くの要素です。遭遇したものを探求するには、広い心で物事を探求する必要があります。好き嫌いをしたり、あれやこれやを軽蔑したりせず、一日中不平不満を言い続けてください...

粘り強く、新しい理由を解決する限り、あなたは大丈夫です。ボトルネックはいつか乗り越えられ、そのときあなたは真に何かを学び、多才で問題を包括的に解決する能力を備えたマスターとなるでしょう。

以上がPHPを深く学ぶ際のボトルネックを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

今まで知らなかったことを後悔している 7 つの PHP 関数 今まで知らなかったことを後悔している 7 つの PHP 関数 Nov 13, 2024 am 09:42 AM

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? Apr 03, 2025 am 12:03 AM

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

See all articles