株式会社SCOUTER @kotamat
LaravelJP Conference 2019
スポンサーセッション
だけkotamats
エージェント
転職者
求人企業
エージェント
転職者
求人企業
エージェントを
免許無しで誰でも
できるように
エージェント
転職者
求人企業
エージェント向け
業務管理 + 求人DB
エージェント
転職者
求人企業
面接・履歴書では
わからない転職者の
リファレンスチェック
Developer eXperience
フロント
サーバー
モノリポ
フロント
サーバー
public function index()
{
/** @var User $user */
$user = auth()->user();
$articles = $this->articleService->fetchByUser($user);
- return view('some-blade', compact('articles'));
+ return response()->json($articles);
}
jwtでもsessionでも同じEloqeuntが返る
モノリポ
フロント
サーバー
デプロイフローも踏まえて構成は検討必要
👍 責務範囲を分割できる
👍 デプロイ時のビルドが高速化
👎 それぞれの通信インターフェースを
定義しないと壊れやすい
// GET
$res = $this->getJson(
"/api/user/"
);
// POSTなどでのペイロードは第二引数に
$res = $this->postJson(
"/api/user/",
["name" => "hoge"]
);
# install
composer require --dev kotamat/laravel-apispec-generator
<?php
namespace Tests\Feature;
use ApiSpec\ApiSpecTestCase;
use Tests\CreatesApplication;
/**
* 親クラス
*/
class HttpTest extends ApiSpecTestCase
{
use CreatesApplication;
protected $isExportSpec = true;
}
// GET
$res = $this->getJson(
"/api/user/"
);
// POSTなどでのペイロードは第二引数に
$res = $this->postJson(
"/api/user/",
["name" => "hoge"]
);
https://<subdir>.stg.<domain-name>/
でアクセスできるようになる
完全同じ構成の
ものを用意
→リリース時の規則を制御し、何が今
ステージングにあるのかをgithubを
見ればわかるように
release/0.1
release/0.2
採用企業
管理者
エージェント
転職者
同ドメインの処理の編集が頻出するため
その領域は責務を凝縮する必要がある
採用企業
管理者
求人
選考
TODO
エージェント
各ユーザごとに必要な処理のみ
ドメインに必要なコンポネ集
{
"require": {
...
"org/some_domain": "^v5.0.0"
},
"repositories": [
{
"type": "git",
"url": "https://github.com/org/some_domain.git"
}
]
}
composer.json
{
"autoload": {
"psr-4": {
"Org\\SomeDomain\\": "src/"
}
},
"extra": {
"laravel": {
"providers": [
"Org\\SomeDomain\\Providers\\HogeServiceProvider"
]
}
}
}
composer.json