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
Rapid Prototyping with PHP
Search
Michael Cheng
January 25, 2013
Programming
480
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rapid Prototyping with PHP
The world of TDD, BDD and frameworks in PHP-land
Michael Cheng
January 25, 2013
More Decks by Michael Cheng
See All by Michael Cheng
Intro to GraphQL Workshop
miccheng
0
180
Prioritizing Technical Debt
miccheng
0
220
JuniorDevSG - Intro to Coding Dojo
miccheng
0
200
Intro to Web Development with PHP - Lesson 1
miccheng
0
170
Engineers.SG Volunteers Training (4 Aug 2018)
miccheng
0
130
Introduction to PHPConf.Asia 2018
miccheng
0
810
What about Ruby on Rails?... from a PHP Guy
miccheng
0
180
Engineers.SG Volunteers Training (July 2017)
miccheng
0
150
Concourse CI in the Wild
miccheng
0
280
Other Decks in Programming
See All in Programming
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1k
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
170
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
170
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
250
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
1
100
R8 の設定見直しでアプリサイズ削減
andpad
0
210
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
4.8k
Railsバージョンを4倍にした話
optim
0
100
Event is what happens
moro
2
410
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
530
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
A designer walks into a library…
pauljervisheath
211
25k
Color Theory Basics | Prateek | Gurzu
gurzu
1
490
Speed Design
sergeychernyshev
33
2.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Everyday Curiosity
cassininazir
0
350
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
280
Transcript
Rapid Prototyping with PHP The world of TDD, BDD and
frameworks in PHP-land 1 Friday, 25 January, 13
Michael Cheng Senior Software Engineer, mig33 http://twitter.com/coderkungfu http://github.com/miccheng 2 Friday,
25 January, 13
Challenges of Rapid Prototyping • Build once and run everywhere
• Responsive web apps • Mobile apps • Use same backend - usually a REST service • Something that PHP is particularly good at 3 Friday, 25 January, 13
Phases 1. HTML mockups • eg. Backbone JS, Angular JS
2. Stub web services • Return dummy payload. 3. Final working web services 4 Friday, 25 January, 13
Doing PHP right • Use a framework • Use Composer
libraries for lower level functionalities (don't reinvent the wheel) • Keep it clean. Doesn't need to scale immediately. • Adhere to coding standards - PSR-0, 1, 2 • Practice TDD, BDD (if you can) 5 Friday, 25 January, 13
Full-Stack Frameworks • CakePHP (http://www.cakephp.org) • Lithium (http://lithify.me/) • CodeIgniter
(http://www.codeigniter.com) • Kohana, FuelPHP • Symfony (http://symfony.com/) • SilverStripe (http://www.silverstripe.org/) 6 Friday, 25 January, 13
REST Frameworks • Silex (http://silex.sensiolabs.org/) • Restler (http://luracast.com/products/restler/) • Recess
(http://www.recessframework.org/) 7 Friday, 25 January, 13
TDD/BDD • PHPUnit (http://phpunit.de) • Behat (http://behat.org/) • PHPSpec http://www.phpspec.net/
8 Friday, 25 January, 13
Composer http://getcomposer.org http://packagist.org General Purpose Libraries, frameworks, etc. 9 Friday,
25 January, 13
Common Standards • PHP Framework Interop Group (http://www.php-fig.org/) • PSR-0:
Autoloading Standard • PSR-1: Basic Coding Standard • PSR-2: Coding Style Guide • PSR-3: Logger Interface 10 Friday, 25 January, 13
Hosting PHP • Its everywhere! • AppFog (http://appfog.com) • Windows
Azure (http://windowsazure.com) 11 Friday, 25 January, 13
PHP the Right Way • http://www.phptherightway.com/ 12 Friday, 25 January,
13
Join Us! • Facebook Group (https://www.facebook.com/groups/ sghypertextpreprocessors/) • Download (http://php.net,
http://windows.php.net) 13 Friday, 25 January, 13