ホームページ >バックエンド開発 >PHPチュートリアル >Laravel インターンとしての私の旅
こんにちは、タミー・アレムです。 Laravel インターンとしての私のエキサイティングな旅をご紹介します。私は業界での経験を積み、読みやすいコードを書き、フレームワークを深く理解することを目指しました。ここでは、私が直面した課題とその過程で見つけた解決策を含めて、すべてがどのように起こったかを説明します。
インターンシップ中に、私には 3 つの主な目標がありました:
業界経験: 専門的な環境で実践的な経験を積みます。
読みやすいコード: クリーンで保守しやすく、読みやすいコードを作成します。
フレームワークの理解: Laravel フレームワークを深く理解します。
私の旅は、開発環境をセットアップすることから始まりました。このインターンシップの前に、私は Blade ビューまたは Vite にバンドルされている JavaScript を通じて、フロントエンド アーキテクチャを使用してバックエンドと対話しました。そのため、CORS などをセットアップする必要性はあまりわかりませんでした。それから、Postman を紹介されました — すごい、なんて革新的なことでしょう!
郵便配達員
Postman は、HTTP リクエストの設定と編集、パラメータと値の受け渡し、認証とベアラー トークンの管理を支援してくれました。これにより、バックエンドの構造とその仕組みについての理解が広がりました。データを生の形式で確認し、直接操作することは、目を見張るものがありました。一見複雑に見えるバックエンドの操作は、当初考えていたよりも簡単であることがわかりました。
作曲家
Composer も重要なツールでした。私はこれをパッケージのインストールに使用し、PHP PSR-4 フォーマット標準に厳密に従いました。厳密に言えば、それは本気です!ははは。標準に従わないとエラーが発生しました。たとえば、ドキュメントを生成したり、モデルやテーブルの余分なスペースや間違った命名規則が原因で名前空間にエラーがあることに気づいたりしました。
プロジェクトのセットアップには、いくつかの重要な手順が含まれます:
リポジトリ管理
リポジトリのクローンを作成して環境をセットアップするのは、最初は非常に大変でした — はは、なんて楽しいことでしょう!ドキュメントを生成するパッケージ scribe:generate を紹介されました。最初は「えっ!?」って思いました。特定のクラスのシーダーを実行することもまた課題でした。 php 職人 db:seed --class=...Seeder は特定のシーダー クラスを直接実行し、特定のテーブルやデータ セットを個別にシードするのに役立ちます。
モデルとデータの処理
モデルと指定されたデータ型に新しい属性を追加するときに必要なパラメーターを強調表示しました。データのシリアル化と応答をフォーマットするための変換に慣れることが重要でした。また、特定のデータをフォーマットするためにインクルードとデフォルトのインクルードを使用すること、および応答にデータを追加するために解析されたインクルードを使用することも学びました。
熱心な読み込み
熱心にロードすることは、私が学んだ素晴らしいことの 1 つです。新しい SQL クエリがループ内で実行される遅延読み込みの代わりに、一括読み込みでは単一のクエリを実行して必要なデータをすべて読み込みます。 with ヘルパーはデータベースクエリを効率的に行うために不可欠になりました。これにより、Laravel で利用できる美しいヘルパーを調べるようになりました。それは大きな違いを生みました!
クエリスコープとビルダー
コントローラーが使用できるクエリ スコープを使用して、データを変換する前にフェッチしました。クエリ ビルダーも、データ取得を効率化するために頼りになるものになりました。
コントローラー
コントローラーは、さまざまなリクエスト タイプ (GET、POST、UPDATE) の基本ロジックを処理します。私はエンドポイントを作成し、Scribe ドキュメントに明確にコメントする方法を学びました。アクションを使用して再利用可能なコードを別のコントローラーに抽出することで、クリーンなコード構造が確保されました。データベースを操作するときに try-catch メソッドを実装することも、貴重な教訓でした。
ビュー
広範囲に使用されるわけではありませんが、ビューは主にメール応答のフォーマットに使用されます。
API 開発
私は RESTful 原則に従って API を設計して実装する方法を学び、Laravel の組み込みロギング ツールと Postman を使用してテストしました。
この知識は、GitHub プロフィールに公開されているサインイン用の Google 認証と Laravel sanctum の使用を統合する、Laravel ソーシャルライトの構築と操作にさらにつながりました。
課題
最初はコードベースを理解するのが大変でした。特に Postman には収集ルートがなかったためです。それらを構築して構造を理解する必要がありましたが、場合によっては追加のパラメーターが必要になり、開発プロセスが遅くなることもありました。
PHP の基礎知識が浅かったことも私の進歩に影響を及ぼし、タスクに余分な時間を費やすことになりました。
ソリューション
これらの課題を克服するために、私は基礎を集中的に学び、割り当てられたタスクとは別に別の分野に取り組んで練習しました。私は、「GIO によるプログラミング」、「PHP の正しい方法」、Laracasts などのリソースを活用して、PHP を深く理解しました — 強くお勧めします!
構文を覚えていなくても大丈夫です。はは、このような場合、私はいつもドキュメントを参照しました。ドキュメントを読むと、特定のトピックについての理解が広がります。
全体的に、チームと協力した私の経験は素晴らしいものでした。彼らは有給のポジションであることに加えて、アプリの理解と構築についてのサポートも提供してくれました。私が一緒に働くチームは、達成すべきタスクについて説明し、私が直面する課題に対処する際には迅速に対応してくれます。
以上がLaravel インターンとしての私の旅の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。