Unfortunately, you are going to fail.
Why? Because the developers you tap will come from desktop UI programming. They first thing they are going to do is develop a set of widgets, a widget hierarchy, and attempt to make the entire project C++ only, with no XML, HTML or JavaScript.
You're going to be so busy working on abstracting these concepts, that you're always going to be behind the people who are actually developing these concepts using Ruby, PHP and Perl.
Java, no, Javans have the same problem. Wicket is this up and coming framework for Java who's stated goal is to solve the problem of statelessness, as if this was 1996 and statelessness was still considered a problem. By trying to hide statelessness, the developers of the framework are unable to use design patterns that design for the stateless experience of the web. I want to carefully maintain state on the server side.
As a developer, I want to be aware of the fact that a visitor left with a full shopping cart after his credit card number was incorrect. Maybe he went to find his reading glasses. Maybe he left them at his office. Maybe he forgets about my website until a month later. I still want him to pick up where he left off.
Treating HTML, XML, JavaScript as a problem to be solved has already been posited in this thread, which takes it even further than the statelessness. This potpourri of different languages is the enabling technology of the contemporary Internet. Why would you want to shield yourself from it? Why would you want to express JavaScript in C++? I'm sure you could try, and come up with some marble-mouthed, inflexible frameworky class library, that renders web interfaces like a mittened four-year old with a box of crayons.
If you do build this, give C++ the job where it can excel. Create an action framework. Create a class to respond to a particular RESTful action and generate a streaming result. Use a templating language to generate your HTML and XML, but write out these templates in their own language, HTML or XML. Look at Java's Stripes for an example of a Java framework that knows it's place and does what it does extremely well.
I'd happily use a C++ framework, if someone would develop one that didn't require that I write HTML in C++.
June 30, 2008, 2:22 p.m. - Alan Gutierrez
Unfortunately, you are going to fail. Why? Because the developers you tap will come from desktop UI programming. They first thing they are going to do is develop a set of widgets, a widget hierarchy, and attempt to make the entire project C++ only, with no XML, HTML or JavaScript. You're going to be so busy working on abstracting these concepts, that you're always going to be behind the people who are actually developing these concepts using Ruby, PHP and Perl. Java, no, Javans have the same problem. Wicket is this up and coming framework for Java who's stated goal is to solve the problem of statelessness, as if this was 1996 and statelessness was still considered a problem. By trying to hide statelessness, the developers of the framework are unable to use design patterns that design for the stateless experience of the web. I want to carefully maintain state on the server side. As a developer, I want to be aware of the fact that a visitor left with a full shopping cart after his credit card number was incorrect. Maybe he went to find his reading glasses. Maybe he left them at his office. Maybe he forgets about my website until a month later. I still want him to pick up where he left off. Treating HTML, XML, JavaScript as a problem to be solved has already been posited in this thread, which takes it even further than the statelessness. This potpourri of different languages is the enabling technology of the contemporary Internet. Why would you want to shield yourself from it? Why would you want to express JavaScript in C++? I'm sure you could try, and come up with some marble-mouthed, inflexible frameworky class library, that renders web interfaces like a mittened four-year old with a box of crayons. If you do build this, give C++ the job where it can excel. Create an action framework. Create a class to respond to a particular RESTful action and generate a streaming result. Use a templating language to generate your HTML and XML, but write out these templates in their own language, HTML or XML. Look at Java's Stripes for an example of a Java framework that knows it's place and does what it does extremely well. I'd happily use a C++ framework, if someone would develop one that didn't require that I write HTML in C++.