SlideShare uma empresa Scribd logo
1 de 45
WordPress Plugin開発に
オートロードを使ってみた話
2016/12/11 Tomoyuki Sugita
杉田 知至
@tomotomobile
クックビズ株式会社
開発部マネージャ
Project Manager
WP Campaign Manager作者
自己紹介
“趣味で”
WordPressプラグインを開発して
公開しています
キャンペーン管理が驚くほどカンタン
に
https://wordpress.org/plugins-wp/wp-campaign-manager/
記事の途中に唐突に出てくるバナーを管理する
ためのプラグインです。
アフィリエイターさん必見!
バナーはショートコードで管理しているため、
元のコードを修正すれば、サイト内の全バナー
を差し替えできます。
キャンペーンを非公開にすれば、記事内のバナ
ーも非表示になります。バナーの予約投稿も可
。
実際に自分で使ってみて
不便だと思ったこと
アフィリエイトの支払い条件とか、キャンペー
ン期間が分からないので、詳細URLが欲しい。
こういう枠を管理画面に追加するとコード量が
一気に増える。
管理画面の機能、ショートコードの機能などを
別のファイル(クラス)に分けたくなる。
Require地獄は嫌だ!
require_once __DIR__ . 'src/AdminTheme.php';
require_once __DIR__ . 'src/ShortCode.php';
オートロード使いたい!
use tomotomobileWPCampaignManagerAdminTheme;
use tomotomobileWPCampaignManagerShortCode;
PHPのオートロードの紹介
わかり易さ優先で雑に解説
PHPで別ファイルにあるクラスを使いたいとき
# wp-campaign-mager.phpで、src/ShortCode.phpを使いたい
とき
require_once 'src/ShortCode.php';
# src/AdminTheme.phpで、src/ShortCode.phpを使いたいとき
require_once './ShortCode.php';
※分かりやすくするため、変な書き方してます
requireいっぱい使うと面倒くさい!
実行速度も遅くなる!
そこで使うのがPHP5.3から登場した
オートロード
PHPで別ファイルにあるクラスを使いたいとき
# wp-campaign-mager.phpで、src/ShortCode.phpを使いたい
とき
use srcShortCode;
# src/AdminTheme.phpで、src/ShortCode.phpを使いたいとき
use srcShortCode;
※分かりやすくするため、変な書き方してます
さっきの書き方
# wp-campaign-mager.phpで、src/ShortCode.phpを使いたい
とき
require_once 'src/ShortCode.php';
# src/AdminTheme.phpで、src/ShortCode.phpを使いたいとき
require_once './ShortCode.php';
※分かりやすくするため、変な書き方してます
オートロード使ったときの書き方
# wp-campaign-mager.phpで、src/ShortCode.phpを使いたい
とき
use srcShortCode;
# src/AdminTheme.phpで、src/ShortCode.phpを使いたいとき
use srcShortCode;
※分かりやすくするため、変な書き方してます
注意点
require_once 'src/ShortCode.php';
↓
use srcShortCode;
スラッシュ(/)がバックスラッシュ()に変わりました。
.phpが無くなりました。
src/ShortCode.php を少し改造
<?php
namespace src;
class ShortCode {
※ファイルの先頭に一行追加
ネームスペースといいます
use srcShortCode;
て書いたら、src/ShortCode.phpのクラスを呼び出します。
ネームスペースは何でもOK
<?php
namespace tomotomobileWPCampaignManager;
class ShortCode {
※PSR-4のルールですが説明は省略
useの後ろはネームスペース
use tomotomobileWPCampaignManagerShortCode;
て書いたら、src/ShortCode.phpのクラスを呼び出します。
さっきの
use srcShortCode;
て書いたら、src/ShortCode.phpのクラスを呼び出します。
今回の
use tomotomobileWPCampaignManagerShortCode;
て書いたら、src/ShortCode.phpのクラスを呼び出します。
利点
• いっぱいrequireしなくて良い
• requireの速度が早くなる(たいてい)
• クラス名が短くて済む
余談終わり!
解決策1
Composer使えばいいじゃん
確かにできる!
require_once __DIR__ . '/vendor/autoload.php';
use tomotomobileWPCampaignManagerAdminTheme;
use tomotomobileWPCampaignManagerShortCode;
$instance = new WPCampaignManager();
$instance->execute();
composer.pharって1.7MBもあるんだぜ。
オートロード使いたいだけなのに、はっきり言
ってオーバースペック。
解決策2
Autoloader自分で作っちゃえ
できちゃった!
require_once __DIR__ . '/autoloader.php';
use tomotomobileWPCampaignManagerAdminTheme;
use tomotomobileWPCampaignManagerShortCode;
$instance = new WPCampaignManager();
$instance->execute();
さっきの
require_once __DIR__ . '/vendor/autoload.php';
use tomotomobileWPCampaignManagerAdminTheme;
use tomotomobileWPCampaignManagerShortCode;
$instance = new WPCampaignManager();
$instance->execute();
今回の
require_once __DIR__ . '/autoloader.php';
use tomotomobileWPCampaignManagerAdminTheme;
use tomotomobileWPCampaignManagerShortCode;
$instance = new WPCampaignManager();
$instance->execute();
https://github.com/php-fig/fig-
standards/blob/master/accepted/PSR-4-
autoloader-examples.md
ほぼサンプルコードのコピペで作れました。
元のコード
作った(?)コード
変更点
$prefix = 'FooBar';
↓
$prefix = 'tomotomobileWPCampaignManager';
自分で決めたネームスペースを書くだけ。
バックスラッシュ()は2回書きます。
まとめ
レガシーコードの集合体WordPressにも、オ
ートロードを実装できることが分かりました
!
ご清聴ありがとうございました
Appendix
参考サイト
• Example Implementations of PSR-4
https://github.com/php-fig/fig-
standards/blob/master/accepted/PSR-4-autoloader-
examples.md
• PHPでクラスのincludeを自動化するautoloadの速度を
測ってみた。
http://blog.katty.in/1942
• Composer
https://getcomposer.org/

Mais conteúdo relacionado

Mais procurados

Xamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターンXamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターン一希 大田
 
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクションYuji Nojima
 
Blendの便利機能振り返り
Blendの便利機能振り返りBlendの便利機能振り返り
Blendの便利機能振り返り一希 大田
 
Chrome Extensionで効率アップ
Chrome Extensionで効率アップChrome Extensionで効率アップ
Chrome Extensionで効率アップweddingpark
 
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方一希 大田
 
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)株式会社ミツエーリンクス
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Yoshito Tabuchi
 
プラグインで管理画面をカスタマイズ
プラグインで管理画面をカスタマイズプラグインで管理画面をカスタマイズ
プラグインで管理画面をカスタマイズtecking
 
Visual studio 2013 Overview
Visual studio 2013 OverviewVisual studio 2013 Overview
Visual studio 2013 Overview一希 大田
 

Mais procurados (10)

Xamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターンXamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターン
 
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション
簡単!低コスト!楽しい!レスポンシブ デザイン ディレクション
 
Blendの便利機能振り返り
Blendの便利機能振り返りBlendの便利機能振り返り
Blendの便利機能振り返り
 
Chrome Extensionで効率アップ
Chrome Extensionで効率アップChrome Extensionで効率アップ
Chrome Extensionで効率アップ
 
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
 
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15
 
スマデバリッチ広告をプロトタイプで作り上げる #yxdena
スマデバリッチ広告をプロトタイプで作り上げる #yxdena スマデバリッチ広告をプロトタイプで作り上げる #yxdena
スマデバリッチ広告をプロトタイプで作り上げる #yxdena
 
プラグインで管理画面をカスタマイズ
プラグインで管理画面をカスタマイズプラグインで管理画面をカスタマイズ
プラグインで管理画面をカスタマイズ
 
Visual studio 2013 Overview
Visual studio 2013 OverviewVisual studio 2013 Overview
Visual studio 2013 Overview
 

Semelhante a Word press plugin開発にオートロードを使ってみた話

Prejob wordpress v2_1121
Prejob wordpress v2_1121Prejob wordpress v2_1121
Prejob wordpress v2_1121Shohei Aoyama
 
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜Yu-ki Motoyama
 
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)Takashi Uemura
 
コードをさわらずにビジネスサイトを作ろう!
コードをさわらずにビジネスサイトを作ろう!コードをさわらずにビジネスサイトを作ろう!
コードをさわらずにビジネスサイトを作ろう!FLOW web planning & design
 
ウェブ制作者のためのセルフブランディング
ウェブ制作者のためのセルフブランディングウェブ制作者のためのセルフブランディング
ウェブ制作者のためのセルフブランディングHidekazu Ishikawa
 
5分で分かるmonaca pressproject(草案)
5分で分かるmonaca pressproject(草案)5分で分かるmonaca pressproject(草案)
5分で分かるmonaca pressproject(草案)Yuki Okamoto
 
Word camposaka imaigo_slideshare
Word camposaka imaigo_slideshareWord camposaka imaigo_slideshare
Word camposaka imaigo_slideshareGo Imai
 
Word press初心者が 基本アーキテクチャを ざっくりと学ぶ
Word press初心者が 基本アーキテクチャを ざっくりと学ぶWord press初心者が 基本アーキテクチャを ざっくりと学ぶ
Word press初心者が 基本アーキテクチャを ざっくりと学ぶclimbFrog
 
WordPress ユーザーのための a-blog cms 入門
WordPress ユーザーのための a-blog cms 入門WordPress ユーザーのための a-blog cms 入門
WordPress ユーザーのための a-blog cms 入門Akiko Kasaya
 
WordPressってブログじゃないの?
WordPressってブログじゃないの?WordPressってブログじゃないの?
WordPressってブログじゃないの?tokumotonahoko
 
WordPressで行う継続的インテグレーションのススメ
WordPressで行う継続的インテグレーションのススメWordPressで行う継続的インテグレーションのススメ
WordPressで行う継続的インテグレーションのススメhorike37
 
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606ZappyLink Co.,Ltd.
 

Semelhante a Word press plugin開発にオートロードを使ってみた話 (15)

Prejob wordpress v2_1121
Prejob wordpress v2_1121Prejob wordpress v2_1121
Prejob wordpress v2_1121
 
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜
「やりたい!」が「できた!」に変わる。チームで作るWebサービス〜Scoobの場合〜
 
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
 
コードをさわらずにビジネスサイトを作ろう!
コードをさわらずにビジネスサイトを作ろう!コードをさわらずにビジネスサイトを作ろう!
コードをさわらずにビジネスサイトを作ろう!
 
ウェブ制作者のためのセルフブランディング
ウェブ制作者のためのセルフブランディングウェブ制作者のためのセルフブランディング
ウェブ制作者のためのセルフブランディング
 
5分で分かるmonaca pressproject(草案)
5分で分かるmonaca pressproject(草案)5分で分かるmonaca pressproject(草案)
5分で分かるmonaca pressproject(草案)
 
Wp plugin
Wp pluginWp plugin
Wp plugin
 
Word camposaka imaigo_slideshare
Word camposaka imaigo_slideshareWord camposaka imaigo_slideshare
Word camposaka imaigo_slideshare
 
Word press初心者が 基本アーキテクチャを ざっくりと学ぶ
Word press初心者が 基本アーキテクチャを ざっくりと学ぶWord press初心者が 基本アーキテクチャを ざっくりと学ぶ
Word press初心者が 基本アーキテクチャを ざっくりと学ぶ
 
WordPress ユーザーのための a-blog cms 入門
WordPress ユーザーのための a-blog cms 入門WordPress ユーザーのための a-blog cms 入門
WordPress ユーザーのための a-blog cms 入門
 
WordPressってブログじゃないの?
WordPressってブログじゃないの?WordPressってブログじゃないの?
WordPressってブログじゃないの?
 
WordPressで行う継続的インテグレーションのススメ
WordPressで行う継続的インテグレーションのススメWordPressで行う継続的インテグレーションのススメ
WordPressで行う継続的インテグレーションのススメ
 
180315 ppug
180315 ppug180315 ppug
180315 ppug
 
WordPress+AMP
WordPress+AMPWordPress+AMP
WordPress+AMP
 
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606
メディア立ち上げ・運用で社外ディレクターを活用する価値とは 201606
 

Mais de Tomoyuki Sugita

第10回経営実務勉強会2022 ITを経営に活用する
第10回経営実務勉強会2022 ITを経営に活用する第10回経営実務勉強会2022 ITを経営に活用する
第10回経営実務勉強会2022 ITを経営に活用するTomoyuki Sugita
 
CoderDojo五反田 With COVID19 Story
CoderDojo五反田 With COVID19 StoryCoderDojo五反田 With COVID19 Story
CoderDojo五反田 With COVID19 StoryTomoyuki Sugita
 
フルリモート2ヶ月 やって編み出した コミュニケーションのコツ
フルリモート2ヶ月 やって編み出した コミュニケーションのコツフルリモート2ヶ月 やって編み出した コミュニケーションのコツ
フルリモート2ヶ月 やって編み出した コミュニケーションのコツTomoyuki Sugita
 
Exciting CoderDojo Gotanda
Exciting CoderDojo GotandaExciting CoderDojo Gotanda
Exciting CoderDojo GotandaTomoyuki Sugita
 
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきたTomoyuki Sugita
 
3分で実装完了!エッジ AI デモ
3分で実装完了!エッジ AI デモ3分で実装完了!エッジ AI デモ
3分で実装完了!エッジ AI デモTomoyuki Sugita
 
Google Home をつかって おじいちゃんにGoogle Home の使い方を教える
Google Home をつかって おじいちゃんにGoogle Home の使い方を教えるGoogle Home をつかって おじいちゃんにGoogle Home の使い方を教える
Google Home をつかって おじいちゃんにGoogle Home の使い方を教えるTomoyuki Sugita
 
メンターの心得 (DojoCon Japan2018)
メンターの心得 (DojoCon Japan2018)メンターの心得 (DojoCon Japan2018)
メンターの心得 (DojoCon Japan2018)Tomoyuki Sugita
 
Node-RED のフローを isaax で配信してみた
Node-RED のフローを isaax で配信してみたNode-RED のフローを isaax で配信してみた
Node-RED のフローを isaax で配信してみたTomoyuki Sugita
 
Isaax Public API IoTデバイスを管理する
Isaax Public API IoTデバイスを管理するIsaax Public API IoTデバイスを管理する
Isaax Public API IoTデバイスを管理するTomoyuki Sugita
 
本番稼働した IoT のツラミを乗り越えて火星まで行こう!
本番稼働した IoT のツラミを乗り越えて火星まで行こう!本番稼働した IoT のツラミを乗り越えて火星まで行こう!
本番稼働した IoT のツラミを乗り越えて火星まで行こう!Tomoyuki Sugita
 
オムロン環境センサ with isaax 
IoTシステムを爆速実装する
オムロン環境センサ with isaax 
IoTシステムを爆速実装するオムロン環境センサ with isaax 
IoTシステムを爆速実装する
オムロン環境センサ with isaax 
IoTシステムを爆速実装するTomoyuki Sugita
 
AIoT カメラを使って ピープルカウントしてみた
AIoT カメラを使って ピープルカウントしてみたAIoT カメラを使って ピープルカウントしてみた
AIoT カメラを使って ピープルカウントしてみたTomoyuki Sugita
 
本番稼働した IoT システムのツラミ
本番稼働した IoT システムのツラミ本番稼働した IoT システムのツラミ
本番稼働した IoT システムのツラミTomoyuki Sugita
 
大量の IoT デバイス一括更新に利用する isaax
大量の IoT デバイス一括更新に利用する isaax大量の IoT デバイス一括更新に利用する isaax
大量の IoT デバイス一括更新に利用する isaaxTomoyuki Sugita
 
ビジュアルプログラミング言語Scratchで遊ぼう
ビジュアルプログラミング言語Scratchで遊ぼうビジュアルプログラミング言語Scratchで遊ぼう
ビジュアルプログラミング言語Scratchで遊ぼうTomoyuki Sugita
 
スタートアップが知っておきたいAWS知識
スタートアップが知っておきたいAWS知識スタートアップが知っておきたいAWS知識
スタートアップが知っておきたいAWS知識Tomoyuki Sugita
 
WordPressとサーバーお金の話
WordPressとサーバーお金の話WordPressとサーバーお金の話
WordPressとサーバーお金の話Tomoyuki Sugita
 
スタートアップのレガシーシステムをAws活用で改善している話
スタートアップのレガシーシステムをAws活用で改善している話スタートアップのレガシーシステムをAws活用で改善している話
スタートアップのレガシーシステムをAws活用で改善している話Tomoyuki Sugita
 

Mais de Tomoyuki Sugita (20)

第10回経営実務勉強会2022 ITを経営に活用する
第10回経営実務勉強会2022 ITを経営に活用する第10回経営実務勉強会2022 ITを経営に活用する
第10回経営実務勉強会2022 ITを経営に活用する
 
CoderDojo五反田 With COVID19 Story
CoderDojo五反田 With COVID19 StoryCoderDojo五反田 With COVID19 Story
CoderDojo五反田 With COVID19 Story
 
フルリモート2ヶ月 やって編み出した コミュニケーションのコツ
フルリモート2ヶ月 やって編み出した コミュニケーションのコツフルリモート2ヶ月 やって編み出した コミュニケーションのコツ
フルリモート2ヶ月 やって編み出した コミュニケーションのコツ
 
Exciting CoderDojo Gotanda
Exciting CoderDojo GotandaExciting CoderDojo Gotanda
Exciting CoderDojo Gotanda
 
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた
何故 IoT プロジェクトは こうも上手くいかないのか 分かってきた
 
3分で実装完了!エッジ AI デモ
3分で実装完了!エッジ AI デモ3分で実装完了!エッジ AI デモ
3分で実装完了!エッジ AI デモ
 
Google Home をつかって おじいちゃんにGoogle Home の使い方を教える
Google Home をつかって おじいちゃんにGoogle Home の使い方を教えるGoogle Home をつかって おじいちゃんにGoogle Home の使い方を教える
Google Home をつかって おじいちゃんにGoogle Home の使い方を教える
 
登壇列伝
登壇列伝登壇列伝
登壇列伝
 
メンターの心得 (DojoCon Japan2018)
メンターの心得 (DojoCon Japan2018)メンターの心得 (DojoCon Japan2018)
メンターの心得 (DojoCon Japan2018)
 
Node-RED のフローを isaax で配信してみた
Node-RED のフローを isaax で配信してみたNode-RED のフローを isaax で配信してみた
Node-RED のフローを isaax で配信してみた
 
Isaax Public API IoTデバイスを管理する
Isaax Public API IoTデバイスを管理するIsaax Public API IoTデバイスを管理する
Isaax Public API IoTデバイスを管理する
 
本番稼働した IoT のツラミを乗り越えて火星まで行こう!
本番稼働した IoT のツラミを乗り越えて火星まで行こう!本番稼働した IoT のツラミを乗り越えて火星まで行こう!
本番稼働した IoT のツラミを乗り越えて火星まで行こう!
 
オムロン環境センサ with isaax 
IoTシステムを爆速実装する
オムロン環境センサ with isaax 
IoTシステムを爆速実装するオムロン環境センサ with isaax 
IoTシステムを爆速実装する
オムロン環境センサ with isaax 
IoTシステムを爆速実装する
 
AIoT カメラを使って ピープルカウントしてみた
AIoT カメラを使って ピープルカウントしてみたAIoT カメラを使って ピープルカウントしてみた
AIoT カメラを使って ピープルカウントしてみた
 
本番稼働した IoT システムのツラミ
本番稼働した IoT システムのツラミ本番稼働した IoT システムのツラミ
本番稼働した IoT システムのツラミ
 
大量の IoT デバイス一括更新に利用する isaax
大量の IoT デバイス一括更新に利用する isaax大量の IoT デバイス一括更新に利用する isaax
大量の IoT デバイス一括更新に利用する isaax
 
ビジュアルプログラミング言語Scratchで遊ぼう
ビジュアルプログラミング言語Scratchで遊ぼうビジュアルプログラミング言語Scratchで遊ぼう
ビジュアルプログラミング言語Scratchで遊ぼう
 
スタートアップが知っておきたいAWS知識
スタートアップが知っておきたいAWS知識スタートアップが知っておきたいAWS知識
スタートアップが知っておきたいAWS知識
 
WordPressとサーバーお金の話
WordPressとサーバーお金の話WordPressとサーバーお金の話
WordPressとサーバーお金の話
 
スタートアップのレガシーシステムをAws活用で改善している話
スタートアップのレガシーシステムをAws活用で改善している話スタートアップのレガシーシステムをAws活用で改善している話
スタートアップのレガシーシステムをAws活用で改善している話
 

Word press plugin開発にオートロードを使ってみた話