Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
僕とPHPxAgileの481日間
Search
Kenichiro Kishida
December 24, 2014
Programming
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
僕とPHPxAgileの481日間
2014年12月 PHP勉強会 のLT発表資料です
Kenichiro Kishida
December 24, 2014
More Decks by Kenichiro Kishida
See All by Kenichiro Kishida
Compression Streams API によるブラウザネイティブなデータ圧縮/jsfes2025
sizuhiko
0
88
Compression Streams API によるブラウザネイティブなデータ圧縮 /phpstudy-182
sizuhiko
0
93
Code兄弟での CI/CDをいい感じにする方法 / phpstudy-2024-06
sizuhiko
0
230
Webアクセシビリティワークショップを社内でやってみた / phpconfuk-2024
sizuhiko
1
430
デベロッパーよ 健康でいるためには 寝て 旅をして 趣味を持って メンタル大切に / DE-RADIO-2023-06-26
sizuhiko
0
210
ヘビータブユーザーが ワークスペースの利用でどのように変わったか / 2023-05-16 Vivaldi User Meetup TOKYO 2023
sizuhiko
0
390
Node.js v18 ベースイメージを使った AWS Lambda アプリ開発におけつ光と影 / 2023-04-23 JavaScript Fes
sizuhiko
0
260
@swc-node/jest を使って テストを高速化する/jsfes-2022
sizuhiko
0
430
Rails 7の採用提案で注目を集め始めた Import maps の過去、現在、そして未来について/de radio 2
sizuhiko
2
1.5k
Other Decks in Programming
See All in Programming
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
170
Java 27新機能 / Java 27 new features
kishida
2
130
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
220
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
210
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
2.9k
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.7k
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
1
150
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
2
1.8k
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
270
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
270
cdk deploy JawsSonic #MARATHONしながらAWSリソースをデプロイしてみよう
akihisaikeda
2
130
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
A better future with KSS
kneath
240
18k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
380
Measuring & Analyzing Core Web Vitals
bluesmoon
9
990
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
900
Building the Perfect Custom Keyboard
takai
2
870
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Designing Powerful Visuals for Engaging Learning
tmiket
1
550
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Pragmatic Product Professional
lauravandoore
37
7.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Transcript
ͱ1)1Y"HJMFͷ ؒ 1)1ษڧձCZ!TJ[VIJLP
,FOJDIJSP,JTIJEB 5PLZP +"1"/ TJ[VIJLP!HNBJMDPN !TJ[VIJLP IUUQTHJUIVCDPNTJ[VIJLP IUUQCMPHPQFOUPLZPKQ +1POMZ *XPSLPO&JXB4ZTUFN.BOBHFNFOU*OD
最新刊 祝::増33刷� 祝::電子書籍
͓ॻ͖ w 1)1Y"HJMFͰࢧԉͨ͠ͷيͰ͢ w ܧଓతΠϯςάϨʔγϣϯ։ൃΛಋೖͯ͠Έ Α͏ͱࢥ͏ํʹ w Ϟμϯͳ1)1։ൃΛͬͯΈ͍ͨͱࢥ͏ํʹ
$ php -a php > echo ( strtotime(‘2014/12/26’) -
strtotime(‘2013/09/01’) ) / (60*60*24);
લʢڥʣ w ίϚϯυϥΠϯ͔Β୯ମςετ͕࣮ߦͰ͖ͳ ͍ʢ$*αʔό͔Β࣮ߦͰ͖ͳ͍ʣ w ݁߹ςετΛͲ͏࣮ͬͯࢪͨ͠Βྑ͍͔Θ ͔Βͳ͍ʢ༗ঈπʔϧΛධՁதʣ w ϥΠϒϥϦͷґଘ͕ؔखಈʢखॱॻʣͰղ ܾ͞Ε͍ͯΔ
w ։ൃڥ͕9".11ͰखॱॻʹԊͬͯ࡞Βͳ͍ ͱ͍͚ͳ͍
લʢίʔυʣ w ϑϨʔϜϫʔΫʢ$BLF1)1ʣͷڍಈ͕Φʔό ϥΠυ͞Ε͍ͯΔ w ϓϥάΠϯΛར༻ͤͣंྠͷ࠶։ൃ͕ߦΘΕ ͍ͯΔ w ୯ମςετ͋Δ͕ɺࣦഊέʔε͕์ஔ͞Ε ͍ͯΔɻ
w ୯ಠͩͱޭ͢Δ͕"MMͰྲྀ͢ͱࣦഊ͢Δςε τ͕͋Δ w όʔδϣϯཧ͞Ε͍ͯΔ
લʢਤʣ Windows7 XAMPP PHPStorm Git pear Jenkins PHP MySQL PHPMD
PHPCPD PHPDoc Git Github
͡ΊʹΔ͜ͱ w ୯ମςετΛίϚϯυϥΠϯ͔Β࣮ߦͰ͖Δ Α͏ʹ͠ɺ$*αʔόʢ+FOLJOTʣͰ·Θ͢ w ϑϨʔϜϫʔΫͷΦʔόϥΠυͰڍಈ͕͓ ͔͘͠ͳ͍ͬͯͨ෦Λमਖ਼ʢר͖͠ʣ w$*͕࣮ߦͰ͖ΔΑ͏ʹͳΔ͜ͱ͕࠷େࣄ
̎ͷ$*ͷ҆ఆ w ϥΠϒϥϦͷґଘ͕ؔखಈ w DPNQPTFSΛಋೖ͠ɺґଘؔͷղܾΛࣗ ಈԽ w %#ͷߋ৽͕खಈӡ༻ w ϚΠάϨʔγϣϯʹΑΔ%#ߋ৽ͷࣗಈԽ
wܧଓతʹ࣮ߦͰ͖ΔΑ͏ʹͳΔ͜ͱ͕େࣄ
̏ͷςετͷݟ͠ w ༷ͱͯ͠ҙຯ͕ͳ͍ͷɺෆ໌ͳͷ আ w ࣦഊ͍ͯ͠Δςετͷमਖ਼ w ॱংʹґଘ͍ͯ͠Δςετͷमਖ਼ w ෆ͍ͯ͠ΔςετͷՃ
w։ൃऀ͕͍ͭͰͲ͜Ͱ҆৺ͯ͠ίʔυΛ मਖ਼Ͱ͖ΔΑ͏ʹͳΔ͜ͱ͕େࣄ
ͷϦϑΝΫλ w ंྠͷ࠶։ൃΛΊϥΠϒϥϦϓϥάΠϯ Λಋೖ w $BLF&OUJUZ XTEMQIQHFOFSBUPS 4FBSDI ϓϥάΠϯͳͲ w
৽ن։ൃΛࢭΊͯɺҰؾʹΓ͖Δ w ͦͷ··Ͱྑ͍ͱ͜ΖͷΓ͚ඞཁ wίʔυ࣭Λ্ͤ͞ɺΑΓΞϓϦέʔγϣ ϯʹಛԽͨ͠ίʔυʹ࣌ؒΛ͔͚ΒΕΔΑ͏ ʹ͢Δ
ͷϨϏϡʔ w νʔϜϦʔμʔ͚͕ͩϨϏϡʔͯ͠Ϛʔδ͢ ΔจԽ่յ͠ҙຯΛ͞ͳ͍ w νʔϜͷϓϩάϥϚશһ͕ίʔυΛݟͯίϝ ϯτΛೖྗ͢Δ·Ͱ13ΛϚʔδ͠ͳ͍Α͏ʹ ϧʔϧԽ w ͱʹ͔͘ܧଓ͢Δ͜ͱ
wֶशޮՌɺτϥοΫφϯόʔࢭɺνʔϜͷ Ұମײ্
ͷݟੵΓ w νʔϜϦʔμʔ͚͕༷ͩΛཧղ͠λεΫ ׂΛͯ͠࡞ۀΛׂΓৼͬͯμϝ w νʔϜͷϓϩάϥϚશһ͕ཁٻ͔Β༷ʹϒ ϨʔΫμϯ͠ɺ࡞ۀՄೳͳ୯ҐͷλεΫ· ͰׂʗݟੵΓ͢Δ w ͱʹ͔͘ܧଓ͢Δ͜ͱ
wΑΓਖ਼֬ͳܭը࡞ΓɺτϥοΫφϯόʔ ࢭɺνʔϜͷҰମײ্
ͷςετͷվળ w 'JYUVSFʹΑΔϚʔδ࣌ͷςετ่յɺςετ ࣌ؒͷ࣌ؒԽϩʔΧϧςετͷলུʹ͠ ͔ͭͳ͕Βͳ͍ w σʔλδΣωϨʔλ 'BCSJDBUF ͷಋೖͰςε τσʔλͱέʔεͷґଘؔΛղܾ
w ςετ༻%#Λ3".σΟεΫ্ʹϚϯτͯ͠ ߴԽ wςετͷߴԽͰɺΑΓ࣮ʹ࣌ؒΛ
ͷ&UP&ςετ w #FIBUʹΑΔ&UP&ςετͷಋೖ w #%%ʹΑΔςετͷߟ͑ํͷಋೖڭҭඞཁ w +FOLJOT .BTUFS #%%࣮ߦڥ 4MBWF
$ISPNF 4MBWF Ͱ$*Ͱࣗಈ࣮ߦ w +4ͷࡉ͔͍ಈ࡞+BTNJOFͰ୯ମςετԽ wϦϦʔεຖճؼςετͷෛՙΛܰݮ
ͷ։ൃڥࣗಈԽ w खॱॻϝϯς͞Εͳ͍͠ɺ৽͍͠όʔδϣ ϯͰಈ࡞͕ҟͳͬͨΓ͢Δ w 7BHSBOU 7JSUVBM#PY $IFGTPMPʹΑΓ։ൃ ڥߏஙΛࣗಈԽ w
Ұ࡞ͬͯऴΘΓͰͳ͘ʑมΘΔ։ൃτϨ ϯυʹରԠ͢Δ$PPLCPPLͷՃͳͲΛ࣮ࢪ w৽ϝϯόʔࢀೖ࣌ɺ1$ೖΕସ͑࣌ʹɺ͙͢ ࡞ۀ͕Ͱ͖ΔΑ͏ʹͳΔ
ݱࡏʢਤʣ Windows7 PHPStorm Github for Windows Selenium2 +WebDriver Vagrant+VirtualBox Apache
PHP MySQL Composer Selenium2 Chef Git Github ίʔυϨϏϡʔ PRϕʔε։ൃ
ݱࡏʢਤʣ CI Server(Jenkins Master) 41Jobs CI BDD(Jenkins Slave) Win7(Jenkins Slave)
Apache Selenium2 +WebDriver PHP PHP MySQL Composer PHPMD PHPCPD PHPDoc MySQL Chrome Composer Git Git phantomJS Selenium Grid
͞Βʹৄ͍͠༰
None
·ͱΊ wؒ͋Γ͕ͱ͏͍͟͝·ͨ͠ wͱʹ͔͘ܧଓʢมԽΛଓ͚Δ͜ ͱʣ͕େͰ͢ wϑΝγϦςʔλϝϯλ͕ඞཁͰ͢ w$*ͬͯΈ͍ͨͱࢥͬͨΒɺҰ ຊΛखʹऔͬͯΈ͍ͯͩ͘͞
࣭
͋Γ͕ͱ͏͍͟͝·ͨ͠ 5IBOLZPV