Once again, albeit after quite a long gap, we have a new Packt Publishing Magento book for review. Of course, our review is also going to be a give-away so keep reading and we’ll tell you how to enter our competition to win 1 of 5 e-copies of this book.
The author is Allan MacGregor. From the ‘About the Author’ part in the book:
“He is a Magento Certified Developer Plus with four years of Magento experience. He also has a certification in Linux System Administration by IBM. He started working with Magento as a freelance looking for a better framework to build e-commerce solutions, and he is now the Magento Lead Developer at Demac Media (www.demacmedia.com). He’s very passionate about software development in general. He is constantly working with new technologies and frameworks…”
I was pleased to see that the author comes from a practical Magento development background with the added credo of the developer certification as well as being a native english speaker. This reflects throughout the book, as it’s well written and understandable.
Chapter 1 provides a concise yet thorough overview on setting up a development environment for Magento work. The author takes us through installing a LAMP stack from scratch and pointing us to his Vagrant & Chef repository on github for some ready made recipes to automate the chore of creating development server instances.
In chapter 2, the author explains the Magento file and module structures, code pools, routing, Magento’s version of the MVC pattern and events and observers. Then in chapter 3 moves onto the ORM and working with data collections to retrieve data from the Magneto database.
With chapter 4, the book starts to get interesting as we are learning how to develop a custom module. One things to note is that the author uses the older “Mysql4” directory paradigm for resource models instead of the current “Resource” one. The material covers the creation of a customer gift registry module which is useful both from a learning point of view as well as practical. The chosen module functionality allows the author to cover most of the aspects of custom Magento coding such as block, model, resource, helper and controller classes as well as database setup scripts and storing and retrieving your module’s data. Finally, in chapter 5, the admin side is also taken care of. We learn how to create the admin interface for our module.
Chapter 6 talks about the Magento API and the built in API protocols supported. Furthermore it also shows us how to extend the API with methods for our customer gift registry module.
Chapter 7 covers testing your custom code and the strategies for building unit tests. And finally, chapter 8 shows us how to properly package and distribute our module to Magento Connect.
Overall, I liked the material covered in this book and it will give you a great introduction to module programming for Magento. The language is clear and easy to read, the code examples cover the topics well and the author and publisher provide a code repository and website for the book material for further follow-up. When I browsed this site, however, a few chapters have not yet been updated with content.
In the past, I’ve had comments about the fact that every Packt publishing book spends a lot of space on setting up and configuring development environments which takes away from material that could possibly be more useful. It is the case here as well that the first chapter is dedicated to this topic. While I understand that it is important to cover these types of topics, at this day and age it would be more prudent to cover this off in some sort of additional materials section or appendix and dedicate the main part of the book to the more ‘juicy’ topics.
That aside, the book will certainly be useful to give Magento novices and Magento developers who have maybe implemented themes and want to expand their expertise to module development, a helping hand in understanding all the procedures and approaches that go into creating custom modules. There is also enough theory about some aspects of the Magento architecture like MVC, collections and eav to give you an idea of the complexity and possibilities in Magento. However, if you are looking for in-depth explanations of those magento sub-systems and how they interact across all the built in modules then you will need to discover this on your own. In other words, this book won’t be able to prepare you, for instance, to pass the Magento Developer Exam. In all fairness, I don’t believe this is the aim of the book either but I feel I need to make this comment just in case someone is wondering.
So, all in all, this is a great book for getting started with Magento module development and will be a handy reference for any Magento developer. It also has handy tips about unit testing, module packaging and distribution and the Magento API that it definitely adds value to intermediate Magento developers. The author has managed to produce a well rounded book that delivers on its promise.
In order to be in the draw to win one of five available e-copies of this book you will need a Twitter account. please follow the instructions below:
Click on the Tweet button at the top of the article When the popup appears, please make sure to add the hash-tag: #MagentoPhpDeveloperGuideReview to the end of the pre-set text Your tweet should look like this:
Book Review: Magento PHP Developer’s Guide by Packt Publishing http://magebase.com/?p=1761 via @magebase #MagentoPhpDeveloperGuideReview We will draw a winner on the 10th day from this review’s publishing date. The draw will be on the 21. June 2013 and announce it in this article with instructions on how to claim your prize
Please Note: The competition is now closed. The winners are: @deracs, @mckasty, @geissweb, @imimranshaik, @alexjpape – congratulations, you should have received a DM with instructions.
- magebase.com reserves the right to change the time the competition runs for and the date of the draw. Changes will be communicated on this page
- magebase.com hold no liability to fulfil the competition prizes and all correspondence around the prizes will be with between the winners and a representative of Packt Publishing
Originally published on magebase.com. Copyright © 2013 Magebase - All Rights Reserved.