Vraiment génial ce livre. Après "Dynamic web design made easy" du meme auteur, ce livre permet d'écrire des classes pratiques et utiles pour php. Simplifier le code et pouvoir le réutiliser comme base d'autres développements. Trés fort David Power.
Commentaires client les plus utiles sur Amazon.com (beta)
20 internautes sur 22 ont trouvé ce commentaire utile
Not a beginners book for understanding PHP OOP20 janvier 2011
- Publié sur Amazon.com
I have learned a lot over the years from David Powers' books on PHP and Dreamweaver. They were the first books on PHP that I purchased and read. I have since read PHP books by other authors and one criticism I have formed is that Mr. Powers, while extremely knowledgeable, has a tendency to get very complicated. He introduces a concept, but then that concept depends on 2 more concepts that contain "gotchas" that need further explanation etc., etc., until the excitement you felt in approaching the original concept gets lost down a spiral of minutia and complexity that - although important - can be detrimental to the shaky confidence of a true beginner. Being thorough is great, but not so thorough that you overload those you are trying to teach. Never is this more apparent than PHP Object-Oriented Solutions. I have completed the first 3 chapters and they were quite a struggle! My brain hurt. I don't understand why there wasn't an attempt to start out with MUCH simpler classes. Maybe a short, easy database connection class or something. Instead, the first class is a Date class and Mr. Powers goes into all manner of complexities, starting with an exhaustive dissection of PHP's DateTime and DateTimeZone classes, then extending the DateTime class and understanding how to deal with leap years, adding dates while accounting for different amounts of days per month, ect., which to me - although a very useful and well thought-out class - just added layers and layers of mental complexity right at the beginning, and made it much more difficult than it should have been for a fledgling OOP fawn struggling to learn syntax, structure, usage, etc.
There are some basic examples in Chpt 2, but there needs to be a smoother transition from those to the intense, tangled complexity of the other chapters.
So in all honesty, I cannot recommend this as a "gentle introduction" to the PHP OOP world. It is more like dropping you into the deep end and hoping you learn to swim. I would love to see a book that starts with a simple, basic class and then extends it through subsequent chapters, while introducing OOP theory along the way. I did not like how all the theory was crammed into one VERY dense chapter at the beginning of the book (chpt 2).
Having said all that, I think if you approach this book as a "solutions" book more than a "gentle introduction" it has some great benefit to those who are able to comprehend the level of complexity and make use of the classes offered. Certainly this is evidenced by the many positive reviews here.
For me, however, it got too complex, too soon. I am still looking for that "gentle introduction". If anyone knows a more basic book on the subject, please let me know.
9 internautes sur 10 ont trouvé ce commentaire utile
Best way to learn OOP in PHP19 octobre 2009
Maarten v K
- Publié sur Amazon.com
I have read a few books on OOP (there is always something new to learn), but this one is the best by far. Good constant level of complexity; not too abstract, not too easy, but something to put your teeth in, sweat a little, but in the end come to a good understanding of the subject without frustrations. There are many examples following the to the point explanations. It's always a challenge for an author I guess to address the reader at a good adequate level to hold his/her attention. Knowing where the bottlenecks are. Giving a concrete example when it start to become abstract. Offering meaningful cases. The author does al that! This book is a real must for anybody who wants too start learning OOP from the beginning, although it's recommendable to know a good deal of (procedural) php when starting with this book.
3 internautes sur 3 ont trouvé ce commentaire utile
If you wanna be sure to get it... here's the way.8 octobre 2009
Maria E. Judge
- Publié sur Amazon.com
The book is pretty straight foward, and presents the subject matter in a down to earth, understandable way. Plus it's well organized so it makes a rather handy reference as well. If I had to gripe about one thing it's the quantity of information in the book. It's a great book, don't get me wrong, but I would have loved for it to keep going. Help me understand more. Perhaps another volume is on the way?
7 internautes sur 9 ont trouvé ce commentaire utile
I liked this one alot13 octobre 2008
- Publié sur Amazon.com
This book really covered alot of topics that I work with on a daily basis and showed me step by step how to implement then using OOP. I was really pleased with the lessons and I learned alot from this book. I recomend it to anyone who is trying to move to the Object Oriented PHP way of doing things.
9 internautes sur 12 ont trouvé ce commentaire utile
Great book to learn PHP OOP and practice OOP27 juin 2010
- Publié sur Amazon.com
Alright, since amazon kept on complaining about review (slow reader).
Warning: I've read 7 out of 9 chapters. Chapter 8 and 9 are in the back burner for now, not because it's boring, but I think it's more optional or things to learn later. My background is C/C++/VHDL/MIPS/ and whatever else I forgot to mention.
Codes in the book works! Almost all of it. There's a small typo on page 159, the code assign a value to an array without specifying the index, so I believe that rewrite the array. Checking it with the source code, which you can download from the website, the author actually have something different. Anyway, took 3 hours to debug 300 lines or so, learned to debug better yay. There are so much codes in the book, that it gives you chances to practice the OOP that the author is trying to teach you, and it's very applicable to real world coding.
Tone and pace: The tone and the pace the author goes throughout the book is straight forward. Whenever he skipped something he would state that you should have learned it or go research it (the regular expression functions), which is understandable because this isn't a "let's teach you php as if you know nothing about it."
OOP: You learned to extend/inherit the php's offical date class. Learn how to extend the exception library, neat. You basically learn how to extend and customize php built in libraries or create a class to wrap php functions, facade pattern, and make it tailor to you, so that you can reuse it in your next project, and make your life easy. OOP, ahh such a beautiful concept.
The last three or so chapters are more advance, XML, SPL (standard php library), RSS, and such. What really sweet is the later chapter reuses the classes that you've code in previous chapters. So it shows the strength of OOP (reusability) and such.
On page 195, it's out dated the function does return a message so the if else statement isn't needed but meh.
On page 239 regarding XML namespace, since php 5.3 came out is there another way to do it? Shrug, it doesn't matter that much the way the author does it in the book currently isn't that bad. I wish the author spent his time talking more about the concept of namespace. I ended up googling that.
Oh, the clone subject is mention but isn't use in real world coding. That's a complaint I guess. I wish there was a least a 300 lines code project with the clone keyword in it. I believe it was only mention once about dvd and whatnot code. Oh well. Maybe it's in the last 2 chapters?
Oh debugging is always fun. On the date class when I had to reuse my date class for the XML chapter, the date output had the day and the month together without a space in between it. Ugh... had to debug that 400+ lines -_-. Learned to start debugging all output functions first haha.
Coding Standard and Documentation: What's also nice is there's a coding standard, the Zend Framework coding standard, so if you don't have a coding style yet, at least you got one now. The phpDocument is pretty sweet, teaches you to document your code so other people can read it. Anyway, the installation of phpDocument isn't exactly there, so google it.
Summary: This is THE book where I've learned OOP for PHP. It's a great book and I enjoyed it a lot. No book is perfect but this book set out to teach you something, and it does that well enough to get almost ALL of the points across to ya. I recommend this book to any one that knows PHP but knows nothing about OOP. If you want to make your life easy, have maintainable codes, and reusable codes, this book will teach you it.
Update July 19, 2010: Chapter 8 Basically teaches you how to emulate multiple inheritance with interfaces. You end up extending a class and at the same time implementing two interfaces (countable & iterator).
Complaints: -The closing xml tag code explanation could have been better if the author refer to it being similar to a "stack". The most current XML element tag you created is the first thing that you close.
-The last test code to test out your class work or not will always output, "A problem occurred." Because the flush() function returns nothing! It's not in the errata page. A little tweak and you can have it return a bool flag if you wanted to. This isn't reported in the errata page and you can see it's an error because the official source code will do the same thing.
-Even though the author had you implementing the countable interface you don't use it at all. You can however test it out yourself. Just apply the class instance to the function .count(). So it's not that big of a deal.
Anyway, I actually found the errata page. I have to say then most of the code works if it didn't then it's either syntax or the elusive logic error.