简体   繁体   中英

Flex vs. jQuery vs. GWTvs./ Closre vs. Cappuccino vs. plain JS and HTML5?

I'm creating my first web application and I'm really confused as to what technology to go for.

My application needs to look serious (like an application), it doesn't need many colorful graphical interfaces. It only needs a toolbar, a tab bar, a split panel (preferably 3 columns), an easily-formatable text field, and a status bar. It will connect to a MySQL database through PHP (unless I go for GWT). Users will upload files.

My evaluation of the options:

Flex : Probably the easiest to develop but I'm pretty sure my application is something one would use on an iPad and with Flash's future on the iPad still unsure, I don't want to take the risk, otherwise Flex would've been my choice.

jQuery : I've heard a lot about it and a lot of people recommend but I don't know how easy it is to use and how customizable the look of my app is.

GWT : The problem with GWT is that it doesn't have many widgets. Another problem is that I'm gonna have to host the files in AppEngine's datastore and transfer them back and forth to a web server that will do operations on them (I need to process them) which adds more traffic and slows the process which worsens the user experience.

Closure : It has a nice toolbar and a nice text field. I'm not sure how easy it is to use. Plus, I read an article that makes it sound really bad.

Cappuccino : It has a very nice UI and it has a mac feel. I'm planning to give my application a mac feel anyway so this will save me a lot of theming. But if I go for this option I won't be able to make use of HTML5's new features (especially working offline).

Plain JS and HTML5 : This gives me the most flexibility but it is the hardest to work for.

I'm sorry if this is subjective but I really need help with this.

To be honest, any questions like these end up being lightning rods for fans of each technology to espouse the advantages of their favorites without much mention for the disadvantages. And since there's a lot of JQuery-ites in here, they usually out-upvote everyone else. C'est la vie.

Try each one out for a few days, write up a simple guestbook or something simple but similar to your real project, and see which one feels easiest.

Have you checked Ext JS ?

Or Dojo ?

I would do your task with one of these.

EDIT

Ext JS toolbar demo

Ext JS tab panel demo

Ext JS layouts - for split panel check Border layout

Ext JS text field demo

Ext JS statusbar demo

Ext JS API

Ext JS and HTML5 blog entry

Ext has everything you need OOB. It is pure javascript (+css and images), nothing else required. (For graphs they use flash, though.)

In your case, you should go for jQuery. It's simple and customizable (both technically and artistically). It's also close to the basic "dom/js" way of doing thing, which is the "base" of web interactivity. Learning the basic is always beneficial, but it is usually slow to get result. In jQuery, it's not. Ok, it would be faster in Ext-JS but you'll gain more out of doing it in jQuery. It's going to give you a better look at how web developing work.

GWT is simply awesome, but it requires you to know how web dev work, which is probably not your case considering this is your first web apps. Google is actually putting a lot of effort in it and it's getting better every release (it is already pretty powerful).

Forget Flex for your first web apps. Flex is pretty neat, but it's a whole other story. Learning how the web work first is important here too.

Ext-JS or Dojo are way too abstractive in my opinion. If you use any of them, you'll end up being good at using them, and that's it. If you wanna go to the realm of high-level framework, I'd suggest to go for GWT instead.

Don't go for HTML5 for now. When all browser are going to interpret it perfectly at 85%+ it's gonna be worth it. For now you'll limit yourself to Safari-Chrome-Firefox. Even though all web developer hate IE, it still have (unfortunately) 60% of the market-share... so you'd lose a lot of potential customer.

I am not sure if I about iPad but... here are some things you might need to consider and hopefully make up your mind.

JQuery - is a javascript library and you can do alot with it, the downside is that some browsers, users may not have javascript enabled on it. Go for it if they choice of browser allows javascript. Jquery has already some built in themes

Flex - If the iPad supports flash and it's the only browser. then go for this one. as flash is slow to load, and also not very reliable to work on every browser aswell.

as for the rest i do not know much about them so would be wrong to advise any more :)

take care

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM