tags: apache   archive   business   charity   climbing   cluster   comic   database   email   exchange   family   fm2008   hack   humour   linux   liverpool   microsoft   money   mysql   network   oes   opensource   outlook   php   pictures   poem   process   project   real_life   review   rss   science   security   software   sql   thought   tsm   updates   webdev   website   windows  

CodeIgniter for Rapid PHP...

Thu, 28 Feb 2008 07:56:34

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. You can buy CodeIgniter for Rapid PHP Application Development’ directly from the publisher here

Enjoy
Ryan Partington

php
Visit site