Most Helpful Customer Reviews
|
|
3 of 4 people found the following review helpful:
5.0 out of 5 stars
Take your skills to the next level, 4 Mar 2008
I started `CodeIgniter for Rapid PHP Application Development' a novice. Previous experience was 2 years using Dreamweaver to build an application for my current employer. Dreamweaver uses a procedural approach to PHP whereas CodeIgniter focuses on Object Orientated (OO) logic. If you've not done any OO programming before then this book is an ideal introduction. CodeIgniter is a framework for PHP allowing you to build clean and sophisticated applications using an MVC (Model View Control) architecture. MVC put simply is a clean way to organise your code and once you understand the concept and become familiar with the CodeIgniters framework you'll be building web applications in no time.
The book's published by `Packt Publishing' and like with all their books you can download the example code from their support page. The examples are pretty easy to setup and I had no problems getting any of them work. To be honest the details and explanations provided by the author make it very difficult to make a mistake.
The introduction for me was the hardest part to get through as I had no prior experience with OO programming or the MVC architecture. The concept was difficult to understand but I'm glad I persevered. I'm a more hands on programmer; learn from writing the code rather than reading about the methods. So once the book got start on using the CI framework to simplify common tasks I began to understand how and why my application design would improve. This book was not just about CI, but a new approach to efficient application development with all the hard work already done.
Once we've been introduced to the MVC architecture, chapters are broken down into common tasks. We begin by looking at how CI works with database connections and modifications whilst keeping the code clean and using a lot less characters. Initially I thought we were reinventing the wheel, learning new syntax to achieve the same results. Over time however, especially whilst troubleshooting, you find the application development a lot easier because it's simple. You're working with a much stronger and efficient foundation, not to mention the protection your code inherits.
Halfway through we get a look under the hood, how CI actually works. You will still want to write your own classes and here we're shown how we can integrate them within CI. Being new to (OO) programming I scanned over this section as it focused very much on the CI `super-object' which mothers the framework.
You may have heard about `Test-driven development' which in a nutshell focuses on designing a `test' environment before you even start writing your production code. The idea is you build your application and code to pass these predefined tests. A difficult concept to swallow at first and I welcomed a chapter which helps us understand this approach to application design. Once we've tested our application and we're happy with the functionality how can we ensure we've not ended up with bloated code? Easy! David Upton (Author) shows us how we can easily benchmark our application using a CI class. Benchmarking is not always required, some smaller projects will not benefit from an extra fraction of a second, but if you're building an enterprise class application, they can make all the difference.
There is a lot offered by the CI framework and the advantage of buying a book like this is we gain a practical understanding where and how we can use it. I've only scratch the surface of what's on offer by David Upton who tutors you through each section, explaining the concept behind each class or helper. You're not overwhelmed with code, but taught valuable lessons in approach and application.
I believe a someone similar to myself would be an ideal target audience; little or no prior experience of (OO) programming, or the MVC infrastructure, couple of years procedural PHP experience and after something that can really take you to the next level.
Enjoy
Ryan Partington
|
|
|
1 of 1 people found the following review helpful:
4.0 out of 5 stars
An educational introduction to CodeIgniter, 10 April 2008
The book is written well and the inevitable - yet thankfully small - number of spelling and grammar mistakes in the books don't detract from the book as much as in the SOA one. I got the impression while reading chapter eleven that the author is not particularly knowledgeable about file permissions on linux/unix and specifies the most permissive options for those platforms which is a bit worrying.
I was amused to find the book "PHP Programming with PEAR" gets a mention in the "Resources and Extensions" chapter, more so because CodeIgniter seems to be a framework that has a chronic case of "Not-Invented-Here" syndrome and attacks the PEAR framework on the main page of it's website and userguide.
All in all, I found the book to be a straight-forward, educational read and that it works very well alongside the CodeIgniter online documentation.
Well worth the read if you are new to CodeIgniter.
|
|
|
1 of 3 people found the following review helpful:
2.0 out of 5 stars
Falls short, 26 Oct 2007
When I read that this book was written by a 'director of specialised management consultancy', I took a sharp intake of breath. How can someone who isn't a developer write a book about a subject as in-depth as a PHP framework? Surely he'll miss the point? At least he'll miss out pertinant information about how the framework functions? It's core? You need a larger understanding of OO PHP and frameworks to make the best use of CI, no? He'll fail to explain the concept of MVC well enough to the novice developers this book is aimed won't he?
I was right.
David Upton has written a book that falls short of appealing to the hardcore PHP developer market who would be interested in a book about CI frameworks and has over-reached when it comes to trying to explain how to create a basic website with what is possibly one of the most powerful frameworks available. On a few occasions he outright insults and belittles those readers who actually use and understand the intricases of PHP by referring to them as 'geeks' from the first chapter.
Claims like CI saving you time and reducing the amount you code, thus making the site faster, are misleading if you only want a simple brochureware site with a contact form and a means to include a common set of elements on each page. Of course, he is perfectly correct if you want to write a web application -- but who is this book aimed at?
There are some good chapters in this book though, 'Code Igniter and Objects' is a more high-brow look at how CI actually functions, for the most part it's well written, but it occasionally glosses over points that need expanding -- the section on namespaces comes to mind. 'Production Versions, Updates and Big Decisions' is another good chapter, although this wouldn't be anything new to a long-in-the-tooth developer. Finally 'Resources and Extensions' is a good overview of some of the better extensions and add-ons available for CI.
Overall, this book will only satisfy the needs of a very niche group of developers. Those who either know about PHP, OO and frameworks but have never laid eyes on CI, or those whose needs are basic and need a framework because it will save time in the short term, this brings about issues of whether CI is neccessary for those with only basic needs however.
The books biggest shortcoming is it doesn't really show you anything that User Guide hasn't already explained in detail, or that the forum can provide with a brief search and they're both free. It misses out one of the most poweful tools in the CI kitbag, Hooks, and that is unforgivable. This is, however, the only book about CI. So if you're after something to read away from the computer, then it might be worth chance, otherwise, visit the CI website where you can find all that's in the book and more.
|
|
|
|