Doctrine2を使ってアプリケーションを開発していると、単なる一対多ではない階層構造(ツリー構造)を表すエンティティ(カテゴリや擬似フォルダなど)を使いたいケースが出てくることがあります。 そんな場合に便利なライブラリの一つ、 KnpDoctrineBehaviors の Tree を紹介します。(他にも同様の機能を別の実装で実現しているライブラリがいくつかあります) ツリー構造にす...

続きを読む

はじめに 弊社では、エンジニアには基本的にMacを支給しています。 今まで、新しく人が入るたびに毎回同じ環境構築を手作業で行っていたのですが、今回これをAnsibleを使って自動化しました。 これでいつでも新しい人を迎えられます。採用のご応募はこちらからどうぞ。笑 Ansibleとは Ansibleは構成管理ツールの一つです。同種のツールにはChefやPuppetなどがあります。 ...

続きを読む

AngularJSでRESTfulクライアントを実装するためのrestangularを使ってみました。 AngularJSでapiクライアントを実装するには$resourceコンポーネントを使用する事が多いと思いますが、restangularはその進化版とも言うべきパッケージです。 restangularの使い方、また$resourceとの比較を簡単に紹介します。 検証に使用したバージ...

続きを読む

はじめに 前回はユニットテストにモックを仕込む手法を記しました。今回は予告通りにAngularJSにビルトインされているサービスを使用したアプリのテストについて記述してみようと思います。 開発プロセス例 1. 設計 前回のHelloServiceを拡張することにしましょう。現在は MyServices.HelloService.say(name)といった ‘name’ を引数として...

続きを読む

昨今のPHPを使った開発の現場では、パッケージ(プロジェクトで利用するライブラリ)の依存管理をComposerに任せて、packagistに登録されたOSSのパッケージや、Satis等で構築したプライベートなComposerリポジトリに登録した自社のパッケージを組み合わせて開発するスタイルになっていると思います。 このような開発で、自社のパッケージも積極的に作っていく場合、どうしても、1つ...

続きを読む