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.
Options

php frameworks

edited July 2006 in Vanilla 1.0 Help
well i never got my head around them. Like which is the best one and all? They seem so confusing. I thought it was meant to make writing code easy. And the tutorials make it seem so eaaassy!111oneoneone. Can someone help me out?

Comments

  • Options
    lechlech Chicagoland
    Vanilla is a framework!
  • Options
    I've seen 1000's of php scripts (blogs, forums, cms's), but Lussumo's Framework is the best you can get. Most php scripts are just straight forward, but the code is often very messy and doesn't make much sense. It did help me learn php, but OOP is my kind of business and none of the popular scripts uses it to it's full potential. Lussumo's Framework was the first one I came accross. It's hard to learn, but once you know it, you don't want anything else...
  • Options
    lol, yeah i was thinking about ones more along the lines of zend one and such. Vanilla in my eyes seems easier than many of them. I mean the frameworks such as ruby on rails but for php.
  • Options
    Okay, a framework is something that allows you to quickly setup the parameters and strucutre, and get onto building your application.

    For example my company develops most applications using Symfony MVC Framework (MVC = model, view, controller).

    Model = this sets up the data model used by the application
    View = this sets up the user interface (the bit we see)
    Controller = this sets up the control logic that links the two together

    There are many frameworks out there, Ruby on Rails is widely attributed as the framework that started this current trend - however frameworks have been around since the 80's. They allow you to rapidly setup the structure for your application and they add flexibility to your apps. For example with Vanilla here the view controller allows us to quickly replicate theme php files to override and extend the base functionality.

    Why should you take the time to learn? Lets take the famous blog example
    How long does it currently take you to set up your database, build the database functions, setup the base classes for calling & creating user objects, set up the post & edit forms, the list form and such like? I'd guess even if you are a brilliant coder and fast typist you are looking at ... oh at least 8 to 24 hours.

    With Symfony you can do all of that in less than an hour, with Rails I belive the tutorial takes you through this in about 30mins.
    With Symfony & Propel you can quickly take an XML document, turn it into a database and have your app basically running very very quickly.
    I am currently porting an existing application from custom code to symfony. I simply ran Propel over the database and then typed 4 commands into the command line & bang, I already have the basic system working (I can add users, retrieve user data and such like) - time taken ... oh about 15 mins! However don't think that this means you can turn whole applications around in record time - what a framework really means is you can lay the foundation quickly, then get onto building the functionality and parts you really need - instead of spending consuming time rebuilding basic structure elements.

    Frameworks also provide you with access to a ton of resources. Need a Rich Text Editor - symfony comes with inbuilt support for TinyMCE, need Ajax forms - again Symfony comes with support for this built in.

    However - be prepared to take the time to learn it!
    Definatly do the Askeet tutorial (which is a bit hard as it's not always up-to-date) ...
    There are a huge number of frameworks out there, I'm a php nut so that's all I can recommend. Symfony seems to have the biggest community support right now, in about 18 months I'd suspect Zend Framework will be the biggets in PHP circles. PHP on Trax is a Ruby port.
    I've got some other ramblings about frameworks over at Studiowhiz if you are interested.

    Hope that helps
  • Options
    On the topic of learning frameworks - any tips on learning the Lussumo Framework Vanilla uses? I read the documentation, of course, but being new to frameworks it took me a while to realize the importance of understanding the classes as well...at this point I just look up the ones I come across but is there a set of 'essential' classes I should be reading through? All that said, the farther I get the more I appreciate how logically and cleanly Mark's laid this all out...
  • Options
    I'm a little confused as to what exactly the lussumo framework is, does it just do vanilla stuff, or can I develop my own completely unrelated projects with it?
  • Options
    thanks Mr K that was a big help. Also Evdawg yes you can make your own application from it. All you need it the peolpe classes ( login and such). Then you have your framework. These can be used for anything. They are mainly the sql classes and such. Mark has then put all the specifically vanilla classes in the vanilla folder in the library. Hence this means you can make your own folder fr you own classes to be also used.
  • Options
    Jazzman, will you be releasing the dating site script that you are building? I love your work, and I imagine the dating script will be excellent.
  • Options
    <bump>
  • Options
    strawberries i dont think he is going to release it as it is a personal prject for him, taking advantage of a gap in the market from his area. However he may prove me/us wrong and decide to release it. Jazzmans work in wierd ways.
  • Options
    Immersion, it would be really cool if he did release it. Heck, I'd even pay him for such a script - knowing that his work is always first class. I am in Ireland, and have been researching doing such a dating site thingie here for close to a year now.
  • Options
    Symfony sounds interesting to me. I'm always looking for idiot proof ways to build CMS's for Flash sites and that sounds like a possible option...
This discussion has been closed.