Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CakePHPでも使える Composerを活用したモダンな開発手法
Search
Yusuke Ando
September 14, 2013
Programming
12k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CakePHPでも使える Composerを活用したモダンな開発手法
PHPカンファレンス2013にて発表
Yusuke Ando
September 14, 2013
More Decks by Yusuke Ando
See All by Yusuke Ando
CakePHP3でアプリ開発
yandod
1
430
Shimokita.Unity パーティクルでエフェクト
yandod
0
880
CakePHP3の明るい未来
yandod
1
290
Testing your app with Selenium on Travis CI
yandod
8
3.3k
Testing your app with Selenium on Travis CI
yandod
0
190
Inputで入力を扱う
yandod
0
730
Detonatorで爆発させる勉強会をした報告
yandod
0
2.5k
Mecanimでアニメーション - Shimokita.Unity
yandod
0
800
パリの街をUnityで駆ける
yandod
1
3.5k
Other Decks in Programming
See All in Programming
継続モナドとリアクティブプログラミング
yukikurage
3
650
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
610
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
540
自作OSでスライド発表する
uyuki234
1
3.9k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
120
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
540
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
680
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
130
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
240
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.4k
霧の中の代数的エフェクト
funnyycat
1
430
Featured
See All Featured
How GitHub (no longer) Works
holman
316
150k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
RailsConf 2023
tenderlove
30
1.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
520
4 Signs Your Business is Dying
shpigford
187
22k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
450
How to train your dragon (web standard)
notwaldorf
97
6.7k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
880
Visualization
eitanlees
152
17k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Transcript
$PNQPTFSΛ׆༻ͨ͠Ϟμϯͳ։ൃख๏ $BLF1)1Ͱ͑Δ
ZBOEP $BOEZ$BOFQIQ ʮ࠙ձϐβൃΞϓϦʯ
1)1ରԠ1BB4 $IFGͰ"84Λࣗಈߏங $PNQPTFSʹͪΖΜରԠ 44)TVEPՄೳ͔ͭαϙʔτ༗
ΞδΣϯμ Կނ$PNQPTFS͕ඞཁ͔ʁ ͍ํ $BLF1)1ͱ$PNQPTFSͷΈ߹Θͤ
None
$PNQPTFS 1)1 ґଘੑཧπʔϧ DPNQPTFSίϚϯυͰඞཁͳϥΠϒϥ ϦΛࣗಈతʹूΊͯ͘ΕΔ 4ZNGPOZͷػೳͩͬͨ ݱࡏσϑΝΫτελϯμʔυ
ैདྷͷख๏ ϥΠϒϥϦ͕ඞཁʹͳΔ MJCͱ͔ʹμϯϩʔυͯ͠ίϐʔ ͕ΜͬͯSFRVJSF@PODF
Ξοϓσʔτ͕͍͠ ίʔυͷྔ͕૿͑Δ ϥΠϒϥϦ͕͍ͣΕฤू͞ΕΔ SFRVJSF@PODFࠈ
None
None
None
͜͏͍͏ͷྑ͘ͳ͍
$PNQPTFSΛ͓͏ʂ
࡞Δͷ 7BHSBOUͰಈ͘ $PNQPTFSͰϥΠϒϥϦΛಋೖ 5XJUUFS͔Βใऔಘ
7BHSBOU 7JSUVBM#PY7BHSBOU IUUQTHJUIVCDPNZBOEPEQIQ OHJOYWBHSBOUTBNQMF HJUDMPOF WBHSBOUVQ
DPNQPTFSKTPO WBHSBOUTTI DEWBHSBOU@EBUBTBOECPY DPNQPTFSKTPOΛهड़͢Δ ࣗಈͰखಈͰͰ͖Δ
DPNQPTFSKTPO { "name": "llmatsuri/sample", "authors": [ { "name": "yando", "email":
"
[email protected]
" } ], "require": { "dg/twitter-php": "*" } }
DPNQPTFSKTPO ΄͍͠ϥΠϒϥϦΛݕࡧͯ͠ࢦఆ͢Δ 8FCͰίϚϯυͰݕࡧͰ͖Δ ࣮1&"3ΠϯετʔϧͰ͖Δ ࠷ޙʹDPNQPTFSJOTUBMMͰ·ͱΊͯ%-
DPNQPTFSJOTUBMM vagrant@precise64:/vagrant_data$ composer install Loading composer repositories with package information
Installing dependencies (including require-dev) - Installing dg/twitter-php (v3.1) Loading from cache Writing lock file Generating autoload files
JOTUBMM͢Δͱ DPNQPTFSMPDL͕ੜ͞ΕΔ WFOEPSҎԼʹϥΠϒϥϦ͕%-͞ΕΔ WFOEPSҎԼʹΦʔτϩʔμ͕ஔ
༻ޙ
BVUPMPBE BVUPMPBEQIQ͚ͩΛSFRVJSF͢Δ ඞཁͳ࣌ʹ֤ΫϥεΛࣗಈͰಡΈࠐΉ ೋͱSFRVJSF@PODFΛॻ͔ͳ͍ ϑϨʔϜϫʔΫ͕ಡΈࠐΉ߹͋Δ
JOEFYQIQ <?php require_once 'vendor/autoload.php'; $twitter = new Twitter(); ͜Ε͚ͩͰ5XJUUFSΫϥεΛࣗಈతʹ WFOEPSEHUXJUUFSQIQTSD͔ΒಡΈࠐΉʂ
Τϥʔʁ 5XJUUFSΫϥείϯγϡʔϚΩʔͱ ίϯγϡʔϚγʔΫϨοτ͕ඞཁΒ͍͠
EFWUXJUUFSDPNBQQT αΠϯΞοϓ ΞϓϦΛ࡞ ੜ͞ΕͨΩʔใΛίϐͬͯ͏
औಘ <?php require_once 'vendor/autoload.php'; $twitter = new Twitter( 'aaaa', 'bbbb',
'cccc', 'dddd' ); $info = $twitter->loadUserInfo('yando'); var_dump($info->status->text);
͓͓ʂ
͋ͱ ϥΠϒϥϦΛDPNQPTFSKTPOՃ DPNQPTFSVQEBUFͰߋ৽ WFOEPSΛίϛοτ͠ͳ͍ σϓϩΠ࣌ʹJOTUBMMͰWFOEPSΛ࠶ੜ
͞Βʹ 143Λक͍ͬͯΕࣗ࡞ΫϥεͰ BVUPMPBEʹରԠͰ͖Δ 1&"3ͳͲDPNQPTFSͰΠϯετʔϧ ࣗ࡞ϥΠϒϥϦQBDLHJTUͰެ։ʂ
ࣗ࡞Ϋϥεͷϩʔυ
None
QIQGSJFOET
QIQGSJFOET HJUIVCDPNZBOEPEQIQGSJFOET QIQGSJFOETͷը૾Λऩू ͷ͖͔͚ͬʹ ʮQIQGSJFOETͷࣸਅࡱΓ·ͤΜ͔ʁʯ SVCZGSJFOETͷύΫϦ
None
ී௨ͷ$BLF MJC$BLFͷԼʹϑϨʔϜϫʔΫ Ξοϓσʔτؤுͬͯೖସ͑ ϦϙδτϦ͕ඒ͘͠ͳ͍
$PNQPTFSԽ
DPNQPTFSKTPO
Δ͜ͱ DPNQPTFSJOTUBMM DBLFCBLF BQQଆΛࣗಈੜʂ
ࢼ͢ʁ 7BHSBOUpMFಉ͓͖ࠝͯ͠·ͨ͠ HJUDMPOF WBHSBOUVQ IUUQ
ৄ͘͠
·ͱΊ $PNQPTFSΛ͏ͱ໘ͳ࡞ۀ͕ݮΔ ΞοϓσʔτΛසൟʹߦ্͍࣭ ରԠ͍ͯ͠Δ1BB4ͰͷεϜʔζͳಈ࡞
࣭ طଘΞϓϦͷ$PNQPTFSҠߦʁ ৽͘͠ಋೖ͢ΔϥΠϒϥϦ͔Βগͮͭ͠Ҡ͠ ͍ͯ͘ͷͰΑ͍ɻ ݅ʹԠͨ͡ϑϥάͳͲͷઃఆʁ υΩϡϝϯτΛࢀরɻ IUUQHFUDPNQPTFSPSHEPD TDIFNBNEQBDLBHFMJOLT
͋Γ͕ͱ͏͍͟͝·ͨ͠