Today I want to make a little review about PHP Data Persistence with Doctrine 2 ORM from Michael Romer. Like I said in a few posts ago, I just developed Magento Shops and worked with the Zend Framework. But there are so many cool libraries and frameworks for webdevelopers that I never tested. One of these things is the Doctrine Project.
"The Doctrine Project (or Doctrine) is a set of PHP libraries primarily focused on providing persistence services and related functionality."There isn't any other book outside for Doctrine. Maybe, because the documentation is very good. But I wanted a german. I know, I'm presenting the english one, but I did read the german version. If I buy a book, I expect from the author not only knowledge about the a framework or library. I also expect things like common styleguide and some practical experience. The book is published by leanpub. A very cool publisher for ebooks about IT stuff. You just have to write a ebook and can publish it over leanpub. The books will be published in the working progress, often you just have 10% of the book and it will grow. They are not that expensive, but the main problem is, the books aren't that professional.
Every other book would start with a Hello World example. The author of this book starts in the first part with an own ORM system for PHP. That was a little bit curious, but it has a cool effect. You will see what the main benefit of a good ORM is and how difficult it is. You have to destroy mostly everything after the first part and will build the same application with Doctrine in the next part. I guess not every reader will like that kind of style, but I guess it's didactically the right way. In the next parts you will lern more and more about relations between entities and the big benefit of doctrine.
The book has just one problem, it isn't easy to read. The language is good (much better than my), but there are a few examples where the author forgot to tell about some code changes. You have to refresh the browser after some steps and nothing changed, but the author has an other result. Just after a look into the github repository you see the missing code. That was a little bit exhausting. But all in one, I'm very happy about this book and can start my first project with Doctrine. Thanks to Michael Romer.