I've been researching the use of Bootstrap for my next project. The controls that it implements seem to be very similar to those in the AJAX Toolkit. I was then wondering if this was a new evolutionary path that I must consider or just a branch in terms of using script-based programming or more traditional .NET/C#/JavaScript based approach.
Will AJAX still be viable for web development?
If I use a non-MVC/ASP.Net approach, should I use Bootstrap or AJAX Controls?
Thanks in advance for any insight you can give me.
Ajax is very viable for web development. It is built into frameworks like jQuery. It may be confusing though because you see the term used in things like the asp.net ajax control toolkit, which do a lot of interesting things client-side. A lot of those client-side things like the modal popup exist in other scripting libraries like jQuery UI and Bootstrap.
Separate the real purpose of AJAX which is to perform asynchronous communication with the server and ignore the other items that get confused with AJAX (like the aforementioned AJAX control toolkit).
Bootstrap is a responsive design framework. It has lots of built-in components such as the modal, tab, alert, etc.. Don't confuse these with AJAX either, they're just great client-side functions. The AJAX control toolkit also has similar features, but few parts have much to do with true AJAX other than the fact they make use of scripting features introduced in 2008 with the System.Web.Extensions namespace. Things like the $find() method.
Look at Bootstrap to focus on the UI, it's presentation, and some interaction components. Use the parts that make sense to you. If you have an Ajax Control Toolkit modal that works in your application just fine, you don't need to replace it with the Bootstrap modal as you may need to do other things to get the two to behave the same. Bootstrap is an awesome framework for client-side development, and can easily work with ASP.Net, though it's easier to do with MVC simply because of the design principles of MVC versus Webforms.
Related
While looking for a 3rd party web UI controls library, I need to know whether I should go for a script based solution like ExtJS,DHTMLX, YUI, etc or a server side one like telerik or DevExpress? Tell me with these areas in view:
1- control
2- performance
3- programmatic manipulation
4- ease of development
5- learning curve
in performance i think java-script Based are faster and more user-friendly because of the ability to dynamically change during the run time
while server base GUI's are static like a stone
i don't know in other views
It really depends on what you need.
For MVC3 Web apps I would recommend client side libraries.
jQuery UI is small and fast, very popular so community is strong.
Downside is it has relatively small number of widgets.
If you need greater number of widgets then use something as ExtJS or YUI but that comes with a price of size and performance.
I think best approach is to check out websites of jQuery UI and YUI and see which widgets do you really need.
If jQuery UI satisfies you, then go for jQuery UI.
I'm looking for a set of Javascript based UI components for a web app I'm building and have found that many of the best looking web apps were built with the Capuccino framework; see http://www.getflow.com/, http://www.picsengine.com/home/ and http://timetableapp.com/ for examples.
However, I'm not a Cocoa developer and have no interest in learning Objective-J. Ideally, I'd find a set of components that provide the visual end result of Capuccino apps without the underlying weight of the framework.
I have seen the Aristo jQuery UI them (http://taitems.tumblr.com/post/482577430/introducing-aristo-a-jquery-ui-theme), but jQuery UI just doesn't seem to have the depth of components available in Capuccino.
I realize this may be a long shot, but I figured it can't hurt to ask. :)
Thanks.
As another option, there is jQuery UI: nice if you are already familiar with jQuery, with the plus side of not being too heavyweight, but may not have all the components you need pre-defined. A nice thing is that it encourages to write the HTML in a way that degrades gracefully when your application in older browsers.
Maybe sproutcore is an alternative for you, although it requires you to hand-code everything in javascript from scratch. It offers most basic components and is easily adjustable to your personal design goals. Sproutcore is used in Apples Mobile Me and in some other big projects.
Another possibility might by vaadin which offers a rich set of prebuild controls and is based on Googles GWT javascript compiler. But it only makes sense if you are developing in a java environment.
Currently, I have a ASP.net 3.5 web application for which I currently am working on the UI.I have been out of touch of doing web ui's for a while.
When i last did UI related work (way back in 2007), i used the Ajax Control Toolkit - specially the extenders like MaskedEdit Extender etc for implementing a lot of the UI functionality i.e restricting the user from entering incorrect data / formatting etc.
Question 1:-
Is there a newer / better / easier way of implementing the functionality similar to the extenders provided by AjaxToolkit that someone would recommend?
Question 2
Also, my current application needs to support multiple cultures in terms of the number / date formatting. In my experience with Ajax extenders, for eg in MaskedEditExtender, I would have to specify the Mask explicitly which defeats the whole purpose of it being able to switch formats depending on the currently selected culture. Is anyone aware of the latest / greatest way in terms of controls etc that I can achieve this?
Note: I am open to lightweight 3rd party controls that could help me do this but would prefer not to touch heavycontrols like infragistics / telerik kinds mainly due to their learning curve / cost.
I currently use Devexpress in the office and at home i use jQuery. Microsoft suggest instead of using the AJAX Toolkit that you use jQuery. This seems to be the best way to go.
jQuery Toolkit for ASP.net is supposed to be quite easy but i find that jQuery UI does everything that you need it to do and doesn't have too much of a learning curve. Using jQuery is much more straightforward than neat javascript and is a useful skill in today's climate.
A combination of:
web services (asmx or mvc)
jQuery ajax
jQuery UI
Along with the plethora of jQuery plug-ins available would be my recommendation for both light weight, and a good abundance of supporting help as well as plug-ins and very active development.
IF you need a bit more you should look a the http://www.obout.com/ controls as an option.
This may be a subjective question, I am new here so keep that in mind...
I have searched and searched and been unable to determine what the best way is the do a tabbed menu for a webpage. The webserver is Unix based, so anything .NET is out of the question. It seems that AJAX/javascript is the 'nicest' way to go, but I've heard there are issues with certain browsers (especially IE). Is this true?
I'd rather have the flexibility offered by javascript than going for purely CSS based tabs, and have the menu tabs function correctly in all/the_most browsers.
Thanks in advance for helping!
Welcome to SO. To answer your question, I would recommend you take a look at jQuery's tab control API:
http://jqueryui.com/demos/tabs/
The advantage of doing this on the client side is that you won't have to worry about what the backend platform supports, only browser compatibility.
If you're wanting to use AJAX it depends on whether you're loading dynamic content or not. Unfortunately a lot of things can be a tad funky in IE.
You should be able to use JQuery for creating tabs, check out JQuery UI for examples or search for other plugins.
This is basically using JS and you could have a fall back CSS version incase browser doesn't support Javascript. Using JQuery also is independent of you using any other language (PHP, ASP, ASP.NET etc).
I want to settle on a GUI framework, and use AJAX, as simply as possible.
Assuming adequate skills in both JSF and Flex, but not too skilled at AJAX/javascript, and assuming Java as the language for the application, and using a DB, which is a good choice, or both have equal set of pros/cons?
Try using Richfaces. As RichFaces library will provide ready made Ajax Enabled JSF Components. You can use them in your JSF Application.
RichFaces is a rich component library for JSF and an advanced framework for easily integrating AJAX capabilities into business application development. The RichFaces components come ready to use out-of-the-box, so developers can immediately save time in taking advantage of component features to create Web applications that provide greatly improved user experience more reliably and more quickly. RichFaces also includes strong support for the skinnability of JSF applications. RichFaces also takes full advantage of the benefits of the JSF framework including lifecycle, validation, and conversion facilities, along with the management of static and dynamic resources.
http://www.jboss.org/jbossrichfaces/
...and the pros of Flex are:
Flex Framework-built SWF files runs in the Flash Player JIT, which is 100x faster than browser-native JS, unless you've got a JS Jit-enabled browser which uses SquirrelFish, for example. So user performance may vary considerably, whereas the Flash Player works at the same performance across all browsers, all platforms.
The Flex Framework is open source, so you can customize it to your heart's content. And since it runs on the Flash player, it runs the same everywhere. Unlike an AJAX framework, where you usually have to be highly expert at browser compatibility coding to customize it.
Flex tools are also free, as the Flex SDK is open source.
Having said that, you can code desktop apps in AJAX using Adobe AIR, without using Flex or ActionScript, if you want to.
How to make HTTP requests with Flex:
http://www.adobe.com/devnet/flex/quickstart/httpservice/
AJAX using JQuery (one of many JS frameworks):
http://docs.jquery.com/Ajax
Both of these are pretty simple once you've played with 'em a bit. You specify a URL and a callback function to read the text response once it's finished loading. Assuming you're familiar with the pros of Flex, the pros of JS are:
It doesn't require a browser plugin
You don't weigh down the page with the Flex framework.
You'll probably find more developers in the market who are familiar with it because the development tools are free and the code is usually visible to anyone who wants to learn from it.