Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

PHP 5 Objects, Patterns, and Practice

edited December 2005 in Vanilla 1.0 Help
I had just started reading this phenomenal book (PHP 5 Objects, Patterns, and Practice by Matt Zandstra) when I first downloaded Vanilla. Browsing through the source of Vanilla, which I must add is very nice, I noticed a lot of similarities. One that stood out is the use of the "context" object. Anyway, is Vanilla's codebase inspired by the book at all, Mark or anyone else who would know? Also, if anyone has any opinions on the code in general or the book, I figure here would be a good place for discussion.


  • MarkMark Vanilla Staff
    I've never read the book. Just about everything in the code came out of my head, or out of conversations with other programmers about the difficulties I was encountering with PHP as I was developing Vanilla. I'm glad you like it :)
  • Vanilla is done in PHP 4, correct?
  • Yeah, but it's all object orientated. And there arent *that* many differences (that i've been made aware of, atleast) that the two languages wouldnt be noticably similar to each other to the novice eye.
  • Yes, I knew it was in PHP 4. The object orientation of the two languages is quite a bit different, such as the introduction of __construct(), __clone(), etc., and probably most importantly the passing of objects by reference rather than value. I was wondering whether Vanilla was inspired by the book more along the lines of design patterns discussed within, however, I'm realizing these patterns could probably be found in just about any design patterns book.
  • MarkMark Vanilla Staff
    I haven't read any design patterns books, either. A lot of my friends and colleagues are always telling me that the ideas I come up with are very similar to the ones they read about in design pattern books, and they always insist that I would save myself a lot of time if I just read one of them. I figure that if i'm going to come to the same conclusion anyway, I'm not going to waste my time reading about it - coming up with it is the fun part for me.
  • Nice to know Vanilla uses a good dose of OOP, I'm currently reading "Beginning Java Objects", which is not just about Java, and studying Vanilla code would be very helpful. Regards!
This discussion has been closed.