Plugins

fixturize: テストの実行速度を大幅に改善させるプラグイン

※1人AdventのDay-22です 1人advent(CakePHP中心、PHP開発よもやま) Advent Calendar 2018 - Adventar 概要 friendsofcake/fixturizeは、CakePHPにおける単体テストの実行速度を大幅に改善させるプラグインです。 MySQL互換RDBMSで利用が可能で、導入は簡単です。 実際の利用方法と
Read more

dereuromark/cakephp-dtoに触ってみる

※1人AdventのDay-8です 1人advent(CakePHP中心、PHP開発よもやま) Advent Calendar 2018 - Adventar CakePHP開発者であるMark Sch.さんが、新しいプラグインを公開されていました。 [New]dereuromark/cakephp-dto CakePHP DTO Plugin https://t.co/vBFe8DJUPE — function(){exit;} (@call_user_func) 2018年12月8日 名前の通り、CakePHPでDTOを扱うための実装のようです。 cf) Data Transfer Object - Wikipedia おもしろそうなので、早速触ってみました。 ざっくりいうと何? 決められたプロパティを持つmutable/immutableなオブジェクトを扱いやすくするためのもの 決められたプロパティ = 型は、設定ファイルに記述していく それらの設定を、実クラス生成コマンドによって作成する 実際のクラスを生成するからIDE上での保管や静的解析との相性が良い CakeDTOに触ってみる setup まずは、インストールです composer require dereuromark/cakephp-dto:dev-master Pluginを有効化します。1 bin/cake plugin load CakeDto -b はじめてのDTO作成 ファイル初期生成用のコマンドが用意されています。 bin/cake dto init これを実行すると、config/dto.xmlに以下のようなファイルが設置されます <?xml version="1.0"?> <dtos xmlns="cakephp-dto" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="cakephp-dto https://github.com/dereuromark/cakephp-dto"> </dtos> ・・・と言っておいて何ですが、個人的にYAMLでいきたいのでYAMLに書き換えます。 こちらのExampleを参考にしましょう。 /examples/basic.dto.yml
Read more