学生バイトに与えられた環境は
こんにちは。1回目の投稿ながらネタ切れを起こしているnomiです。自己紹介のときのネタを深めてもよかったのですが、せっかくなので業務に直結する内容、と言うよりむしろ業務そのものを紹介してみようと思います。
何やっているの?
LINE IDでログインしたり、ショップからお知らせを受信したりできるようにするEC-CUBEのプラグインを作っています。もともとEC-CUBE 3のLINEログイン連携プラグインはあるのですが、これに機能を追加したりEC-CUBE 4に移植したりをしています。
開発環境
ノートPC1つとディスプレイ1つを使って作業しています。
ノートPCは会社が用意してくれたもので、Surfaceっぽい形をした東芝のDynabookです。さも当然のように Core i7 / RAM 16 GBというスペックでした。ドライブが1 TBで「なんだSSDじゃないのか」と一瞬思ったのですが、SSDでした。しゅごい。
私が2ヶ月働いてやっと買えるくらいの代物なので、壊さないように恐る恐る使っています。
WindowsでEC-CUBEを動かす
EC-CUBE プラグインの開発にあたって、そもそもEC-CUBEが動かないといけません。さらに、そのためにはPHPやWebサーバが必要になります。私はXAMMPでローカルPCにサーバを立てることにしました。dockerとか使うのも面白そうですが、扱える自身がないので今回はXAMPPを使いました。
EC-CUBEでつまづいたあれこれ
EC-CUBEをインストールするときに意外と苦労しました。備忘がてら、私がつまづいたポイントと解決法を簡単に列挙してみます。
- XAMPPの最新版(PHP 7.3) では動かない。PHP 7.2を使う
- EC-CUBEインストール画面のデータベース設定で「ホスト先」を設定しないとエラーになる。
- やたらタイムアウトしてしまうことがあるので、php.iniのmax_execution_timeを大きくする
- 困ったらキャッシュファイルを削除して、祈りながらしばらく待つ
PhpStormが便利だった
EC-CUBEが動いたらいよいよPHPファイルをがりごり書いて開発です。PHPの開発にはPhpStormを使っています。初めてPhpStormを使ってみたところ、想像よりはるかに便利でした。
いろいろ書くと長くなりそうなのですが、 初めて使った時の感動を記したいので、少しだけご紹介を
デバッグ実行が便利
ブレークポイントを設置して、コードを1行ずつステップ実行するあの機能です。少しXAMMPとPhpStormをいじるだけでできました。別にPhpStormの機能かというと厳密には違う気もしますが、便利です。
「あ、この変数がnullになってるんだ」とエラーの原因に納得したり、「ここではこの変数から会員IDが取得できるかな」などと推察するために使います。さしずめ、EC-CUBEやSymfonyについて何も分からず、ずっと心細い思いをしている中で唯一頼れる相棒といったところです。この機能がなければ、私はきっと既に心が折れていたと思います。
Ctrl+Dが便利
ファイルを複数選択した状態でCtrl+Dを押すと、ファイルの差分が取れます。便利です。LINE連携プラグインとは言っても、
- EC-CUBE 3 無料版
- EC-CUBE 3 有料版
- EC-CUBE 4 無料版
- EC-CUBE 4 有料版
の4つがあり、それぞれのパッケージを修正・機能追加しています。「有料版に追加した機能を無料版にも実装する」などのとき、この機能がないとやっぱり心が折れていました。
「どのエディタにもdiffくらいあるだろう」という気はしますが、PhpStormの差分表示はなかなかカッコいいですね。Gitと合わせるとより強力です。
Ctrl+Shift+Fが便利
ディレクトリ単位やプロジェクト単位で、横断的に文字列検索できます。便利です。「EC-CUBEの本体ではこの処理どうやっているんだろう」とか「この関数・オブジェクトってどんな使い方をすればいいんだ?」とかのときにとても役立ちます。おそらくこの機能がなければ、やはり心が折れていたと思います。
最後に
思いつくままに書いたら少し長くなってしまいました。定時も過ぎているので以上にします。 次回はもうちょっと技術的なネタが書けたらなと思う次第です。
結局、仕事環境というよりも「PhpStormって便利ですね」というだけの記事で恐縮ですが、お付き合いくださりありがとうございました。