作業環境を確認する
プロジェクトで作業を始める前に、適切な作業環境を持っているかどうか確認する必要があります。これは重要なことです。今の開発者が使うツールセットは、10年前のそれとはずいぶん変わりました。ツールは大きな進化を遂げてきたのです。それらを活用しない手はありません。良い道具を使って、道を開いていきましょう。
この手順は省かないでください。少なくとも Symfony CLI に関する最後のセクションは読んでください。
コンピューター
コンピューターが要りますね。macOS、Windows、Linux といった一般的なOSで実行することができるので安心です。Symfony やこれから使うすべてのツールはこれらのOSで利用可能です。
技術の選定
最良の選択をして、速く動きだしたいと思います。私はこの本のためにあえて技術選定をしました。
PostgreSQL は、データベースからキュー、キャッシュからセッションストレージまで、すべてにおいて私たちの選択となるでしょう。ほとんどのプロジェクトでは、PostgreSQLは最高のソリューションであり、拡張性が高く、管理するサービスが1つだけでインフラストラクチャをシンプルにすることができます。
IDE
お望みであれば Notepad を使うこともできるかもしれませんが、おすすめしません。
私は昔 Textmate で仕事をしていましたが、今はもう違います。「本物の」IDEを使う快適さはきわめて有用であり、他では代えられません。オートコンプリート、 自動的にソートされ追加される use
文、あるファイルから別のファイルへのジャンプ等、生産性を高めてくれる多くの機能を持っています。
Visual Studio Code か PhpStorm を使うのが良いでしょう。前者は無料で、後者は有料ですが Symfony とのより良い統合機能を持っています。( Symfony Support Plugin のおかげです)。あなた次第です。私が使っている IDE がどちらなのかを知っておきたいでしょうね。私はこの本を Visual Studio Code で書いています。
ターミナル
IDEからコマンドラインに切り替えることがよくあります。IDEのビルトインターミナルを使うこともできますが、私はそれではなくて、より多くの作業スペースを使うことのできる実際のターミナルの方を好んで使っています。
Linux には Terminal
がビルトインであります。macOS なら iTerm2 を使いましょう。Windows なら、 Hyper がうまく機能します。
Git
バージョン管理には今では誰でも使っている Git を使います。
Windows なら、 Git bash をインストールしてください。
Git の一般的な操作、 git clone
、 git log
、 git show
、 git diff
、 git checkout
… などの実行方法をおさえておいてください。
PHP
サービスに Docker を使うことになりますが、私はローカルコンピューターにPHPをインストールして使うのが好きです。パフォーマンス、安定性、シンプルさがその理由です。やり方が古いと言われてしまうかもしれませんが、ローカルインストールした PHPと Docker サービスを組み合わせるやり方が理想的だと考えています。
PHPは8.1バージョンを使い、下記の PHP 拡張` がインストール済みになっていることを確認してください。もし入っていなければ今インストールしてください: intl
, pdo_pgsql
, xsl
, amqp
, gd
, openssl
, sodium
。オプションで下記をインストールしてください: redis
, curl
, zip
。
現在有効になっている拡張は php -m
で確認できます。
プラットフォームがサポートしていれば php-fpm
も用意して下さい。 php-cgi
でも同等のことができます。
Composer
依存関係の管理は今や Symfony プロジェクトのすべてと言えるほど重要なものです。PHPのパッケージ管理ツール Composer の最新バージョンを入手してください。
Composer に慣れていない場合は、Composer に関してドキュメントをじっくりと読んでください。
Tip
コマンド名をフルワード入力でタイピングする必要はありません: composer req
は composer require
と同じことですし、 composer rem
を composer remove
の代わりに使えば良いです。他も同様です。
NodeJS
JavaScriptのコードはあまり書きませんが、アセットの管理を行うためにJavaScript/NodeJSを利用します。 NodeJS とパッケージマネージャーである Yarn がインストールされているか確認してください。
Docker と Docker Compose
サービスは Docker と Docker Compose を使って管理されます。 それらをインストールして 、Docker を起動してください。Docker を初めて使うのであれば、ツールに慣れておきましょう。とまどう必要はありません。使い方はとても簡単ですからどうか安心してください。凝った設定や複雑なセットアップは一切出てきません。
Symfony CLI
最後ですが重要なところとして、 symfony
コマンドを使って生産性を高めます。ローカルWebサーバーの提供から、完全な Docker 統合、 Platform.sh を使ったクラウドのサポートまで、大幅な時間短縮を実現できます。
Symfony CLI をインストールしてください。
HTTPS をローカルで使うため、`認証局(CA)もインストールして`_ 、TLSサポートを有効にする必要があります。次のコマンドを実行してください:
1
$ symfony server:ca:install
次のコマンドを実行して、コンピューターに必要なすべての要件が満たされていることを確認します:
1
$ symfony book:check-requirements
もし複雑なことをしたい場合は、 Symfony proxy を実行することもできます。オプションですが、末尾に .wip
を付したローカルドメイン名をプロジェクトで取得することができます。
ターミナルでコマンドを実行する際は、ほとんどの場合でプレフィックス symfony
を付けることになります。たとえば、普通の composer
ではなく、 symfony composer
を、./bin/console
ではなく symfony console
を使う、といった具合です。
その主な理由は、Symfony CLI が Docker で実行されるサービスに対していくつかの環境変数を自動的に設定するためです。環境変数はローカルWebサーバーに自動登録され、HTTPリクエストで利用できるようになります。CLIで symfony
を使えば、どの環境でも同じように動作することを保証できるわけです。
さらに、Symfony CLI はプロジェクトに「最良の」PHPバージョンを自動的に選択します。