- 本とまとめ買いで割引 対象商品： 人気の文房具が5～50%OFF 9/30まで
Real-World Solutions for Developing High-Quality PHP Frameworks and Applications (英語) ペーパーバック – 2011/5/10
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Learn to develop high-quality applications and frameworks in PHP
Packed with in-depth information and step-by-step guidance, this book escorts you through the process of creating, maintaining and extending sustainable software of high quality with PHP. World-renowned PHP experts present real-world case studies for developing high-quality applications and frameworks in PHP that can easily be adapted to changing business requirements. . They offer different approaches to solving typical development and quality assurance problems that every developer needs to know and master.
- Details the process for creating high-quality PHP frameworks and applications that can easily be adapted to changing business requirements
- Covers the planning, execution, and automation of tests for the different layers and tiers of a Web application
- Demonstrates how to establish a successful development process
- Shares real-world case studies from well-known companies and their PHP experts
With this book, you’ll learn to develop high-quality PHP frameworks and applications that can easily be maintained with reasonable cost and effort.
Sebastian Bergmann is a cofounder of The PHP Consulting Company. He is a thought leader on software quality assurance and author of PHPUnit and various other tools. He is a sought-after speaker at conferences around the world.
Stefan Priebsch is a cofounder of The PHP Consulting Company, helping customers to improve their development processes and make better use of PHP. He is the author of various books and a frequent speaker at IT conferences.
Amazon.com で最も参考になったカスタマーレビュー (beta)
As if that weren't enough, this book also covers PHP frameworks but by no means relies on them. Just glancing at the table of contents was enough for me to buy this book--as there weren't yet any reviews written for it on Amazon.
After reading the first chapter alone--where the authors quote "Uncle Bob's" Clean Code book--I had a good feeling that I was reading something that would finally help PHP developers write truly good code.
I haven't made it through the whole book yet but it has already earned its way as my favorite PHP book, and I have read a lot of them over the last several years.
I am not a big believer in programming books. Over the years I have seen only a few that were worth reading, but Real-World Solutions (perhaps a shorter title would be nice...) is a great read. Read not reference. Most programming related books end up as "reference" which is generally useless in the world of Google and StackOverflow. Real-World Solutions is meant to be read, perhaps while looking at your own code and trying a few things out. I also suggest scanning sections that do not apply to you, or you have already mastered.
Most of the book focuses on testing. Unit testing primarily and this could be very dull. However the choice to have stories from real implementations by companies was smart. They also included sections of common problems with (my favorite) more that one suggested solution!
I wish there had been some reference to how the lone coder (such as myself currently) could implement a more agile methods. Also a listing of programs, frameworks, and tools with a one line description and then page numbers would have also been nice for those reading on the couch and then later recall the idea of a tool, but not the name.
Overall this book is great for:
PHP programmer learning or weak in testing knowledge.
A self-taught PHP programmer who wants to find some holes in knowledge (like me!)
Teachers who want to give students a programming book they might actually read.
A manager of programmers trying to find new ways to increase code quality.
From what I've read I'd say that this is for the most part a high quality book that gives a lot of good advice. It makes a strong argument as to why dependency injection is tremendously preferable to hard coded dependencies and it describes in detail the kinds of problems you can run into if you do hard code your dependencies.
There are some things in the chapters on testing that I think need to be addressed, though. The main one is it advocates direct testing of non-public methods (by subclassing the CUT to expose its protected methods as public). This can make the test fragile, as it's now making assumptions about the inner workings of the class instead of testing its API. Normally you should be able to change or completely remove non-public code without having to worry about the effect it has on the tests. If you're testing non-public methods directly, then you can easily break a test by changing or removing it, making the test fragile. Fragile tests are something the book argues against, with good reason.
If you exercise all the public methods of a class properly within your unit test, then all the non-public methods should also be exercised as well. If they are not, then this indicates that either the unit test isn't thorough enough, or that there is dead code in the CUT.
This is still, however, a very useful resource, and written to a much higher standard than most PHP books. I'd say it's a must-read, and would have given it 5 stars if not for the non-public method testing remarks.