E-Commerce Frameworks?

by Mike Willbanks on July 28th, 2007

Lately I have been thinking about why there are so many frameworks, yet if you are looking for anything do deal with e-commerce you are almost shit out of luck. Sure it is easy to interface with the API’s of payment gateways and couriers APIs. However, what I have seen is lacking is a uniform API under any of the frameworks I have looked at that address this fundamental and needed area.

In the past I had actually worked a bit on starting to create a payment and courier interface for a project I was working on utilizing the Zend Framework. However, due to deadlines I never had the time to fully complete nor create it to the specification I would have desired.

So here is my question, besides the really shitty shopping cart objects out there is there any true components for a framework that utilizes this functionality? I say shitty shopping cart objects because just about every single open source PHP shopping cart has some of the worst design aspects I have ever seen. Many times ending up in procedural code with limited objects that essentially just wrap existing functions into an object. You don’t see the standard object oriented design patterns being utilized. For instance a good payment gateway object design would utilize a factory pattern and a base abstract object that defines the functionality to be implemented and take the default behavior. The same goes with couriers.

Anyhow that is just my rant for the day. I hope to attempt to blog some more, however, with moving and being extremely busy on a work project I have not had time but to simply read what is going on in the PHP development atmosphere.

From PHP

10 Comments
  1. Matthew Turland permalink

    http://magentocommerce.com

    While it’s not actually complete yet (Beta 1 is due out in early August), this framework will be built on PHP 5 and use make use of its OOP capabilities to deliver a feature set that blows all existing PHP-based e-commerce products out of the water.

  2. Matthew,

    Magento is not a framework, magento is an e-commerce platform. There is a massive difference. While it may make use of PHP 5 OOP capabilities these capabilities can still be mimicked in PHP 4. I am talking about code architecture, a set of classes that deliver the functionality but yet have no front or back end.

    The point here is this, there is not a set of libraries (aka classes) that provide a simple interface into handling merchants or couriers. They are simply an integrated set of architecture to support a specific program and when taken out of the program do not work.

    The one and only item that had started to attempt to handle this was the PEAR Payment_Process. So while you say framework, framework is completely the wrong word you are using here. Just because something utilizes object capabilities it does NOT make it a framework. What you have right is that it IS a “e-commerce product”.

    While I am excited to see the code driving this shopping cart, I at the same time am hesitant of how the architecture might be created for the code that is not a part of the Zend Framework. So far from what I have seen and heard there is only discussion of features and no core architecture which means of little or no value. Saying PHP 5 OOP means nothing if the object oriented principles and design is not implemented correctly.

  3. idont permalink

    The answer is easy: technical framework are ok. Business framework need support in big companies (think SAP, Microsoft, etc.). And little company will never buy any framework but directly a working solution….

  4. I agree with everything you said Mike and it sparked some ideas in my head about how a framework like that would be written. I’m the lead over at the PRADO community project I wrote my ideas down in a forum post to see if it’s something the PCP would think about taking on. check it out http://www.pradosoft.com/forum/index.php/topic,8215.0.html

    I would really like to see what features you would like to see in much a framework.

  5. What a pity. Prado framework is not a PHP-style one like SolarPHP, CakePHP, Zend Framework, Symfony. I expect a true PHP eCommerce framework instead of C#, Delphi or Java one

  6. Hi,

    This is really an eye-opener. I would have thought there was a fully functioning, well written, nicely documented framework for doing this.

    Personally, I have thought about writing an open-source framework for something like this, but have stopped short of doing it because I thought that something would already exist, and I don’t want to re-invent the wheel.

    Since it doesn’t exist there is no excuse for me not to do it. So … I think I will.

    I’ll put it on my website (which doesn’t exist, but I’ll make it exist soon enough).

    Steve

  7. Hi

    I’ve started work on this, and version 0.1 is up there for people to take a look at.

    It’s untested, incomplete and missing some of the core functionality that is wanted (such as a checkout system), but I thought I’d put it out there to see what kind of reaction I get to it.

    Go take a look …. please? (http://www.stevangoode.com/forums/)

    Steve

  8. Bill Smith permalink

    Check out digiShop from Sumeffect. While it’s not open source, it’s hands down the best PHP cart from a code standpoint. It’s uses OOP (php4), but a done patterns and such that make the code easy to understand and extend.

Trackbacks & Pingbacks

  1. PHPDeveloper.org
  2. developercast.com » Mike Willbanks’ Blog: E-Commerce Frameworks?

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS