CodeIgniter 1.7 Professional Development
RickJWagner writes "CodeIgniter is a multi-purpose, open source PHP web application framework that can dramatically reduce the amount of coding required in developing a full-featured website. This book promises to introduce the reader to the most productive APIs and demonstrate their usage with minimal code snippets. In that regard, I think the book lives up to its promise." Read on for the rest of RickJWagner's review.
CodeIgniter 1.7 professional development
author
Adam Griffith
pages
300
publisher
Packt Publishing
rating
9/10
reviewer
RickJWagner
ISBN
1849510903
summary
For advanced PHP developers who wish to use CodeIgniter to make their development easier, quicker, and more fun.
The first chapter covers CodeIgniter's MVC framework, which provides a way for a programmer to logically partition code so it's easier to maintain. For those of us who aren't accomplished PHP coders, this chapter also contains a PHP style guide, which I thought was a nice feature. By the way, the code snippets throughout the book are clean and easy to read -- the author must have followed his own advice on code style.
The second chapter is an introduction to some of the more productive libraries you'll find in CodeIgniter. Here you'll find some excellent advice on how to take timing metrics in your application, how to secure it, and how to accomplish routine activities like retrieving data from the user's request. Other 'web topics' are addressed here, like how to manipulate the session, how to manage emails and file uploads, and much more.
Chapter 3 handles form inputs and databases. As is common throughout the book, the reader is given minimal technical overview. What you'll find instead is a very brief explanation of what's about to be covered, then a few very readable source lines that demonstrate use of CodeIgniter in action. If this book were your only resource, I'm sure there would be times where you didn't find enough material to get everything done you wanted to do. But if you have a web browser (and Google) handy, a book of this type can be an effective index to help you find the parts of a framework you want to leverage.
The next few chapters cover user authentication and application security. I found these to be a little spotty -- heavy in some places, light in others. Still, the material was useful and not difficult to read or understand.
A nice chapter on tips for building a large-scale application was next. I found this one interesting -- many of the ideas were well-known, but a few had not occurred to me before. I liked reading it. Next up was a chapter on Web Services. I didn't take the time to test the provided code for this chapter, but I would like to sometime. If it works as I hope it will, I may have a new way to stand-up test web services!
The final two chapters are on extending CodeIgniter (it's great that the library authors institutionalized this!) and donating code back to the community.
So who is this book for? The book itself tells you it's for expert PHP coders, but I don't believe that's exactly right. Given the easy-to-read nature of the book and the light treatment given to some of the meatier topics, I'd say this book is about right for a novice-to-intermediate-level PHP coder. I haven't done a lot in PHP, yet I found the code reading very easy.
If I had a wish for the book, I'd wish for a little more depth in the harder topics and maybe some quick overviews for a few topics. (Diagrams accompanying the overviews would be nice, too. This book has few illustrations except for screenshots.)
All things considered, I'd recommend this book to coders who are getting started with PHP and CodeIgniter. It's easy to read and will get the reader pointed in the right direction for solving many web problems.
You can purchase CodeIgniter 1.7 professional development from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
The second chapter is an introduction to some of the more productive libraries you'll find in CodeIgniter. Here you'll find some excellent advice on how to take timing metrics in your application, how to secure it, and how to accomplish routine activities like retrieving data from the user's request. Other 'web topics' are addressed here, like how to manipulate the session, how to manage emails and file uploads, and much more.
Chapter 3 handles form inputs and databases. As is common throughout the book, the reader is given minimal technical overview. What you'll find instead is a very brief explanation of what's about to be covered, then a few very readable source lines that demonstrate use of CodeIgniter in action. If this book were your only resource, I'm sure there would be times where you didn't find enough material to get everything done you wanted to do. But if you have a web browser (and Google) handy, a book of this type can be an effective index to help you find the parts of a framework you want to leverage.
The next few chapters cover user authentication and application security. I found these to be a little spotty -- heavy in some places, light in others. Still, the material was useful and not difficult to read or understand.
A nice chapter on tips for building a large-scale application was next. I found this one interesting -- many of the ideas were well-known, but a few had not occurred to me before. I liked reading it. Next up was a chapter on Web Services. I didn't take the time to test the provided code for this chapter, but I would like to sometime. If it works as I hope it will, I may have a new way to stand-up test web services!
The final two chapters are on extending CodeIgniter (it's great that the library authors institutionalized this!) and donating code back to the community.
So who is this book for? The book itself tells you it's for expert PHP coders, but I don't believe that's exactly right. Given the easy-to-read nature of the book and the light treatment given to some of the meatier topics, I'd say this book is about right for a novice-to-intermediate-level PHP coder. I haven't done a lot in PHP, yet I found the code reading very easy.
If I had a wish for the book, I'd wish for a little more depth in the harder topics and maybe some quick overviews for a few topics. (Diagrams accompanying the overviews would be nice, too. This book has few illustrations except for screenshots.)
All things considered, I'd recommend this book to coders who are getting started with PHP and CodeIgniter. It's easy to read and will get the reader pointed in the right direction for solving many web problems.
You can purchase CodeIgniter 1.7 professional development from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
How crappy can they all be that a new one pops up every other week?
Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
The cover photo is of... snails?
Naturally, the immediate association is with "a snail's pace."
+1 for unintended consequence. Sigh.
What one fool can do, another can. (Ancient Simian Proverb)
Why would I rely on something that keeps being re-invented by everyone every month, with unknown future support?
I'm not insane. I'm writing my own web application framework. If I'm the one writing it, I know it inside-out. If I use it, I update it myself. That's the only way to be sure.
open source PHP web application framework that can dramatically reduce the amount of coding required in developing a full-featured website
and dramatically increase the amount of unnecessarily executing code.
if your project doesn't function, how could you not have seen that without mocking it up? and if it does work, now you have to recode it completely to make it scalable. i never understand the lure of these development platforms on top of development platforms.
It doesn't strike me that somebody who can understand the CodeIgniter user guide would benefit at all from this book and I'm assuming that's what the target is given it has "Professional Development" in the title. The CodeIgniter user guide is some of the best documentation I've seen for any framework in any language.
I am sorry, but the framework still supports PHP version 4.3.2. Support for PHP 4 was ended at the end of 2007. Any framework that doesn't take advantage of the nice new features in PHP 5 bound to be full of kludges and outdated code.
That is just my reaction based on when I was comparing PHP frameworks, I didn't dig into their code so maybe I am wrong.
Highly recommended for anyone out there looking for a PHP framework that actually makes sense.
Frameworks trade the time needed to learn the framework for time writing your own code. The presumption that you will learn the framework as well as your own code is questionable at best. Odds are you won't need everything in the framework. The benefits of a wide community using the framework, and, if the framework is well maintained, having it tweaked as the community reports problems, is a big plus; but it is counter-featured by problems and vulnerabilities affecting wide swaths of users (until fixed or patched) and by input from users that becomes less significant as the size of the community grows, as well as a noise factor where requests for features and fixes begin to cost significant time just to figure out which ones are worthwhile, and which ones are not. Finally, bugs in a widely used framework may go unfixed for considerable lengths of time, or may never be fixed.
If you're a good enough programmer, languages like python make writing server-side functionality pretty much a doddle. We're a long way from the obfuscatory nightmare of perl on the interpreted side of things. C still provides the "big dog" of speed and power, providing that you have decent memory management and string handling available to you in your own collection of source (and I think most C programmers should have such tools... I sure do.) If you're a client-side person, there are certainly various options, but I'm not qualified to talk about them, as I am not a fan of client-side processing at all. As far as I'm concerned, the compatibility benefits of server-side processing trump anything the client side has to offer.
The benefits of rolling your own are pretty significant. Bug? Not only do you "know the programmer", you're the Most Important User, so you get to set the priorities. Want a feature? No one knows better than you just how to make it fit with the existing codebase. Hacking? No one sees your code but you, and you can ensure that everything, and I mean everything, goes through "washer" functions limiting length and character set and range. Security by obscurity can really be extremely effective.
I'm not saying there's anything wrong with using a framework; but I am saying that it is quite wrong to consider rolling your own as "right out." It is fairly easy to do, builds you a toolkit that is all yours (and consequently something you will know very well how to use), offers a measure of security unavailable in a public framework as well as any type of security the public framework might use, puts your priorities right up front, hones your programming skills at a higher level than using canned functions does, and it is very rewarding in the general sense -- there's something valuable to be said for "I wrote that."
I've fallen off your lawn, and I can't get up.
This review is nothing but spam. Go look at the Amazon reviews. The author is allegedly a 17 year old student, which I'll leave at that.
What are the fundamentals of a "Simple MVC Model for PHP?" Then what makes these fundamentals for a "Simple MVC Model for PHP", fundamental?