Whether you are running a large scale web app in a PHP-based environment, or if you are considering switching your site to PHP, our new book, php|architect's Enterprise PHP Development will surely be a valuable resource for you and your development team. Written by well known PHP guru and iBuildi
php/architect's Guide to Enterprise PHP Development
β Scribed by Ivo Jansch
- Publisher
- Marco Tabini
- Year
- 2008
- Tongue
- English
- Leaves
- 294
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
I bought this book hoping to improve my software development skill set by adding management skills to my repertoire but alas found that the book went much further than that. This book discusses available tools, workflow scenarios, and general knowledge about PHP from a non technical perspective. I slightly wished that the book spent more time talking about an iterative (read: Agile) development process but overall a good read from a knowledgeable person.
β¦ Table of Contents
Acknowledgements......Page 16
Foreword......Page 18
Introduction......Page 20
I Background......Page 24
The Rise of Open Source......Page 28
The LAMP Stack......Page 29
The Maturity of the Internet......Page 30
Detailed History of PHP......Page 31
Application Areas......Page 32
Built for the Web......Page 36
Pragmatic......Page 37
Enterprise Challenges......Page 38
Easy to Learn, Difficult to Master......Page 39
Persistent Objects......Page 40
Interpretation versus Compilation......Page 41
The Right Job for the Tool......Page 42
Python......Page 43
.NET......Page 44
Hybrid Environments......Page 45
II Enterprise Development......Page 48
The Customer......Page 52
The Software Architect......Page 53
The Lead Developer......Page 54
The Project Manager......Page 55
The Code Manager......Page 56
Training......Page 57
Training Requirements......Page 58
Certification......Page 59
Community......Page 61
Conferences......Page 62
Defining Your Needs......Page 63
Reaching PHP Developers......Page 64
Assessing Skills......Page 65
Being an Attractive Employer......Page 66
Business Goals......Page 70
Expectation Management......Page 72
Functional Requirements......Page 73
Non-functional Requirements......Page 74
Wireframes......Page 75
Flowcharts......Page 76
MoSCoW......Page 77
The Planning Paradox......Page 82
Getting Lost in Details......Page 84
The Planning Process......Page 86
Not Just Code......Page 87
Design......Page 90
OO......Page 91
Constructors and Destructors......Page 92
Inheritance......Page 93
Access Specifiers......Page 94
Encapsulation......Page 95
Interfaces......Page 96
Static Members......Page 97
Polymorphism......Page 98
Magic Methods......Page 99
UML......Page 101
Class Diagram......Page 102
Sequence Diagram......Page 103
Design Patterns......Page 104
Common PHP Patterns......Page 105
Magic Methods and Design Patterns......Page 107
Enterprise Patterns......Page 109
ERD......Page 110
Relationships......Page 112
Constraints......Page 113
Normalization......Page 114
ORM......Page 115
Base-table......Page 116
Specialized tables......Page 117
Normalized model......Page 119
MVC......Page 120
Multi-tier Development......Page 122
SOA......Page 124
Guidelines......Page 126
Editors......Page 130
Integrated Development Environments (IDEs)......Page 131
Debugging......Page 134
Using a Debugger......Page 135
Root-Cause Analysis......Page 136
Source Control......Page 138
The Process......Page 139
The Tools......Page 140
Branches......Page 142
Merging......Page 143
Issue Tracking......Page 144
API Documentation......Page 146
Wiki......Page 147
Don't Reinvent the Wheel......Page 150
The βNot Invented Here Syndromeβ......Page 151
Content Management......Page 153
E-commerce......Page 154
Forums......Page 155
Frameworks......Page 156
Component Frameworks......Page 157
JavaScript Frameworks......Page 158
Libraries and Components......Page 160
Licensing......Page 161
Vitality......Page 162
Externalize......Page 163
Contribute......Page 164
Don't Trust Input......Page 168
Output......Page 169
Escape Considerations......Page 170
OpenID......Page 171
Authorization......Page 172
A Secure Infrastructure......Page 174
Book Recommendations......Page 175
Code Structure......Page 178
Don't Repeat Yourself......Page 179
Consistency......Page 180
phpdoc......Page 182
Coding Standards......Page 184
Developer Testing......Page 188
Functional Testing......Page 190
Server Environment......Page 191
Client Environment......Page 192
Responsiveness......Page 194
Capacity......Page 195
Stress Tests......Page 196
Automated Testing......Page 198
Unit Tests......Page 199
Web Tests......Page 201
The Process......Page 202
The Result......Page 203
Continuous Integration......Page 204
Writing a Test Plan......Page 205
Profiling......Page 208
Caching......Page 210
Opcode Caching......Page 211
Output Caching......Page 212
Data Caching......Page 214
Read- Versus Write-based Caching......Page 216
Caching Strategies......Page 219
Background Processing......Page 220
Micro Optimization......Page 221
Zero Query Policy......Page 222
Finding Slow Queries......Page 223
Explain Plans......Page 224
Indexes......Page 225
Denormalization......Page 226
Hardware......Page 227
Network......Page 228
Browser......Page 229
Premature Optimization......Page 230
System Architecture......Page 234
Abstraction......Page 235
Clustering......Page 236
High Availability......Page 237
Load Balancing......Page 238
Sessions......Page 239
Development and Production Environments......Page 241
Development, Test, Acceptance, Production and Debug......Page 242
Source Control......Page 243
Migration......Page 244
Database Structure......Page 245
Database Content......Page 246
File Content......Page 247
Deployment and Release Profile......Page 248
Delivery......Page 250
User Training......Page 252
User Feedback......Page 253
Marketing......Page 254
Evaluation......Page 255
Monitoring......Page 258
Functionality......Page 259
Performance......Page 260
Growth......Page 261
Security Updates......Page 262
Operational Plan......Page 263
Change Management......Page 266
Documentation......Page 267
Planning......Page 268
Service Team......Page 269
III The Big Picture......Page 272
Waterfall......Page 276
Rapid Application Development......Page 277
Iterations......Page 278
Continuous Improvement......Page 279
Examples of Agile methodologies......Page 280
ITIL......Page 281
Removing Barriers......Page 284
Sharpening the Saw......Page 285
Innovation......Page 286
Index......Page 288
π SIMILAR VOLUMES
Whether you are running a large scale web app in a PHP-based environment, or if you are considering switching your site to PHP, our new book, php|architect's Enterprise PHP Development will surely be a valuable resource for you and your development team. Written by well known PHP guru and iBuildi
Overall, an excellent resource for security. It's small size means that that topics are narrow enough to be digested and acted upon individually.
Overall, an excellent resource for security. It's small size means that that topics are narrow enough to be digested and acted upon individually.
With the number of security flaws and exploits discovered and released every day constantly on the rise, knowing how to write secure and reliable applications is become more and more important every day. Written by Ilia Alshanetsky, one of the foremost experts on PHP security in the world, php|ar
With the number of security flaws and exploits discovered and released every day constantly on the rise, knowing how to write secure and reliable applications is become more and more important every day. Written by Ilia Alshanetsky, one of the foremost experts on PHP security in the world, php|archi