Hey guys,
Before starting I need to emphasize that all opinions and conclusions mentioned below are just my own and they might be different from the mass. I respect any others but don’t want to fall into long discussions so I would appreciate if the answers are straight to the point.
More over, we are hardcore Flex 3 shop with strictly enforced OOP and every single project here steps entirely on PureMVC. But since Javascript code execution becomes faster in the oncoming browser versions, it is relevant to investigate and see are there Ajax frameworks which might have similar points to a casual Flex dev cycle.
We had a chance to investigate plenty of Ajax frameworks including JQuery, YUI, GWT/SmartGWT/Ext GWT/GWTPHP, Javeline, ExtJS, Dojo, SmartClient, ZK, BackBase, Bindows and many others. After a long rundown we chose to dig into two – ExtJS and SmartClient. Many reasons why others fail short for us, but mainly lack of clean OOP framework structure, bad support, different than Javascript language, slow and diminish updates, etc. Of these two left there are some questions we can’t fight clear answers and would like to share here.
Questions are based on expected ExtJS 3.0 Beta and SmartClient 7.0 Beta.
1. Skinning – real applications need strong skinning support. And I don’t mean theme updates like changing colors and shadows. Anything else is just excuses.
We do like the SmartClient way where separate folders for skins and separate images named clearly for our designers (like button_Down_start.png, button_Down_end.png) and the CSS styling – [.buttonOver, .buttonFocused) – it is great, and most important “the Flex” way.
As for ExtJS 2.2 – themes are there but I don’t see any clean skinning support and this might be the same in 3.0 (correct me if I am wrong).
And the question: What level of skinning do you plan to implement into your oncoming version?
2. Declarative development – I don’t know about others, but for Views declarative development is supreme. Is it so hard to implement client-side only tag support? Because Javeline guys already did it, and same with BackBase.
To SmartClient – why on Earth do I need a server to generate and process declarative code? Hitting a server is pointless (my opinion) and there is no value but problems. Ajax === client-side and any “server” ideas add issues (especially for web apps which need to be uploaded on shared hosting where no access to server resources are allowed).
So do you guys plan to add client-base declarative support and if yes, when?
3. Editors – editor support is a must, especially with built-in debugging. ExtJS did a good job – Aptana, Komodo, Visual Studio, Spket. But… Aptana debugging sucks (there is a bug in their db for not supporting Firefox 3.x), Komodo is OK but expensive, don’t want even to mention about Visual Studio, SPKet is great for editing and no debugging. I read there is Ext JS Builder in the 3.0 trunk, but since we don’t have such account to access it we should wait till March-April when official 3.0 pops out (if not delayed).
Hm… SmartClient has nothing. Well, the Aptana plugin for 6.5.1 is there but still buggy in standalone Aptana. I do like SmartClient Visual Builder to throw some quick mockups but it’s bound to commercial support and we have to switch between the builder and external editor so often.
And the question: What level of editor support do you plan for the oncoming version and do you have some links to take a look at and test eventually?
4. Reusable component development – Could you add more real-world tutorials and rundowns how to create new components or extend existing ones?
5. Documentation and books – One book for Ext JS (basicl) and none for SmartClient. Ext JS documentation and online resources are growing, SmarClient docs and resources are very limited.
To SmartClient guys: Any chance of a book and thorough documentation/resources?
Before starting I need to emphasize that all opinions and conclusions mentioned below are just my own and they might be different from the mass. I respect any others but don’t want to fall into long discussions so I would appreciate if the answers are straight to the point.
More over, we are hardcore Flex 3 shop with strictly enforced OOP and every single project here steps entirely on PureMVC. But since Javascript code execution becomes faster in the oncoming browser versions, it is relevant to investigate and see are there Ajax frameworks which might have similar points to a casual Flex dev cycle.
We had a chance to investigate plenty of Ajax frameworks including JQuery, YUI, GWT/SmartGWT/Ext GWT/GWTPHP, Javeline, ExtJS, Dojo, SmartClient, ZK, BackBase, Bindows and many others. After a long rundown we chose to dig into two – ExtJS and SmartClient. Many reasons why others fail short for us, but mainly lack of clean OOP framework structure, bad support, different than Javascript language, slow and diminish updates, etc. Of these two left there are some questions we can’t fight clear answers and would like to share here.
Questions are based on expected ExtJS 3.0 Beta and SmartClient 7.0 Beta.
1. Skinning – real applications need strong skinning support. And I don’t mean theme updates like changing colors and shadows. Anything else is just excuses.
We do like the SmartClient way where separate folders for skins and separate images named clearly for our designers (like button_Down_start.png, button_Down_end.png) and the CSS styling – [.buttonOver, .buttonFocused) – it is great, and most important “the Flex” way.
As for ExtJS 2.2 – themes are there but I don’t see any clean skinning support and this might be the same in 3.0 (correct me if I am wrong).
And the question: What level of skinning do you plan to implement into your oncoming version?
2. Declarative development – I don’t know about others, but for Views declarative development is supreme. Is it so hard to implement client-side only tag support? Because Javeline guys already did it, and same with BackBase.
To SmartClient – why on Earth do I need a server to generate and process declarative code? Hitting a server is pointless (my opinion) and there is no value but problems. Ajax === client-side and any “server” ideas add issues (especially for web apps which need to be uploaded on shared hosting where no access to server resources are allowed).
So do you guys plan to add client-base declarative support and if yes, when?
3. Editors – editor support is a must, especially with built-in debugging. ExtJS did a good job – Aptana, Komodo, Visual Studio, Spket. But… Aptana debugging sucks (there is a bug in their db for not supporting Firefox 3.x), Komodo is OK but expensive, don’t want even to mention about Visual Studio, SPKet is great for editing and no debugging. I read there is Ext JS Builder in the 3.0 trunk, but since we don’t have such account to access it we should wait till March-April when official 3.0 pops out (if not delayed).
Hm… SmartClient has nothing. Well, the Aptana plugin for 6.5.1 is there but still buggy in standalone Aptana. I do like SmartClient Visual Builder to throw some quick mockups but it’s bound to commercial support and we have to switch between the builder and external editor so often.
And the question: What level of editor support do you plan for the oncoming version and do you have some links to take a look at and test eventually?
4. Reusable component development – Could you add more real-world tutorials and rundowns how to create new components or extend existing ones?
5. Documentation and books – One book for Ext JS (basicl) and none for SmartClient. Ext JS documentation and online resources are growing, SmarClient docs and resources are very limited.
To SmartClient guys: Any chance of a book and thorough documentation/resources?
Comment