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
490
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
Getting Started with Vibe Coding
miccheng
0
190
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
140
Introduction to PHPConf.Asia 2018
miccheng
0
820
What about Ruby on Rails?... from a PHP Guy
miccheng
0
190
Engineers.SG Volunteers Training (July 2017)
miccheng
0
150
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
150
プロジェクトコードをキレイキレイしよう!暗黙的な参照を読み解く静的解析
ostk0069
0
210
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
330
小さなアプリを作って公開するまで
onozaty
0
140
AI Augmentation Techniques with Liberty
ivargrimstad
1
390
オーケストレーション記述言語 Katari
yukikurage
0
240
DroidKnights 2026 Android A2UI Jetpack Compose 기반의 안전한 AI UI 렌더링 - 박제창
itsmedreamwalker
1
200
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
3
280
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
160
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.7k
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
790
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
1
510
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
670
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
620
Deep Space Network (abreviated)
tonyrice
0
410
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
560
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
290
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
740
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
The untapped power of vector embeddings
frankvandijk
2
2k
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