PHP in The Enterprise
PHP in The Enterprise
P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Start Thinking...
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
2
E=MC
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
• Lower TCO.
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
• OOP in PHP.
• Extensions available.
Ph.P
SOCIETY
Philosophy in Programming Society
• Functional design.
• Wire frames.
Ph.P
SOCIETY
Philosophy in Programming Society
• Data modeling.
Technical Design
• • Modeling
Class diagrams.
• Class Diagrams
• • ER Diagramsdiagram.
Collaboration (data model)
• Collaboration Diagrams
• Use •cases.
Use Cases etc.
•
•
Tools:
High Level Architectures
• UML
•
• Design Patterns
Whiteboards
• SOA
Ph.P
SOCIETY
Philosophy in Programming Society
• •
Komodo
Zend Studio
• PhpEd
• • Vim
Zend Studio
• Komodo
• Full IDE or Text Editor?
IDE’s versus Editors
• • Debugging
Debugging / Profiling
& Profiling
• Syntax Check
• Syntax•checking
Cross-Referencing / Navigation
• Subversion
• CVS
• Documentation Tools
• PHPXRef (http://phpxref.sourceforge.net)
Ph.P
SOCIETY
Philosophy in Programming Society
• Use a framework
• CakePHP (http://cakephp.org)
• Symfony (http://www.symfony-project.org)
Ph.P
SOCIETY
Philosophy in Programming Society
• Patterns:
• Model-View-Controller
• Factory
• Singleton
• Registry
• Decorator
Ph.P
SOCIETY
Philosophy in Programming Society
• Developer testing
• Functional testing
• Environment testing
• Performance testing
• Usability testing
• Prevents regressions
Ph.P
SOCIETY
Philosophy in Programming Society
• PHPUnit http://www.phpunit.de/
• SimpleTest http://www.lastcraft.com/simple_test.php
• Continuous Integration:
• CruiseControl http://cruisecontrol.sourceforge.net/
• phpUnderControl http://www.phpundercontrol.org/
Ph.P
SOCIETY
Philosophy in Programming Society
• APC http://pecl.php.net/package/APC
• eAccelerator http://eaccelerator.net/
• Zend_Cache http://framework.zend.com
• Memcached http://danga.com/memcached/
Ph.P
SOCIETY
Philosophy in Programming Society
• Develop
• Test
Ph.P
SOCIETY
Philosophy in Programming Society
Linux Windows
Apache IIS
Database
PHP
Ph.P
SOCIETY
Philosophy in Programming Society
• Logs
• Debugging
• Context Capture
• Change management:
• Ticket system
Ph.P
SOCIETY
Philosophy in Programming Society
• Security
• Implementation
• Good luck!
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
• Endorsed By:
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
Ph.P
SOCIETY
Philosophy in Programming Society
http://www.php.com.sg
http://www.php.org.sg
http://facebook.php.org.sg
Ph.P
SOCIETY
Philosophy in Programming Society