|
Replies:
11
-
Pages:
1
-
Last Post:
Oct 4, 2009 3:50 PM
Last Post By: jkallman
|
|
|
Posts:
26
Registered:
09/23/98
|
|
|
|
Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 12:19 PM
|
|
|
|
Hello all;
I am trying to find out which framework to choose (ExtJS or JQuery) or to mimic client-server (Oracle forms, Visual basic or PowerBuilder) GUI interface functionality or look alike within APEX I have looked JQuery demos (like Carl B., Roel H., and Dan M.) ExtJS demo (like Mark L., Tobias A.)
The functionality like using ctrl+shift for multi select in tabular form or arrange the column position from A,B,C to B,A,C or having fixed column heading like spreadsheets and list goes on....
Would someone who had mimic client/server screen into APEX give an input which framework would be best to use?
Also which framework would run faster on 1000+ display records.
Thank you for sharing.
Regards;
Shaun
|
|
|
Posts:
69
Registered:
05/21/97
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 3:46 PM
in response to: Shaun S
|
 |
Helpful |
|
|
|
Hi Shaun
I'm obviously biased about ExtJS, but I'll try and take an impartial view.
JQuery provides an API to write javascript and interact with the Dom in a browser agnostic way.
ExtJS provides an equivalent API in it's Ext Core library.
Both are lightweight in size, and provide similar functionality in this respect.
From a performance perspective, I would expect that both would perform similarly.
Here I would take the viewpoint that if one library was significantly outperforming the other, they would be having a look the functionality and replicate.
As far as the UI is concerned I believe this is where they differentiate.
ExtJS provides an integrated and highly polished set of widgets with a specific look and feel.
The jQuery UI also provides a set of widgets, currently less impressive visually in my opinion, but possibly more easily customized (I haven't tried).
Oracle has confirmed that jQuery will definitely be included as part of Oracle Apex 4.0.
This is great for the jQuery advocates, but equally fine for ExtJS advocates.
Why? ExtJS has an adapter layer, allowing you to use Ext Standalone, Yahoo! UI, jQuery, Prototype, Scriptaculous for your base layer.
So this means you can use jQuery as a base layer, and ExtJS on top of it, allowing you to use the best features of both.
The question is whether Oracle are planning to use jQuery UI or not.
The recent Apex 4.0 video and powerpoint by Mike Hichwa and David Peake has a slide at the beginning making me think that they will be including the jQuery UI.
This is a departure from the currently published Apex road-map.
So far I have not seen anything to confirm or refute this.
Hopefully this provides you with some insight on both frameworks.
And finally for your question on which framework would run faster on 1000+ display records.
Well, as Tom Kyte likes to say "It depends".
What features are you pages using, how light have you made your application library, and finally WHY has your design lead you to present so many records to the user.
Regards
Mark
[Random Insights into Oracle|http://oracleinsights.blogspot.com/] | [Marks Playpen|http://apex.oracle.com/pls/otn/f?p=200801]
|
|
|
Posts:
26
Registered:
09/23/98
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 4:18 PM
in response to: Mark Lancaster
|
|
|
|
G'day Mark;
Thank you for your quick reply. It was good input and feedback from extJS developer perspective.
The reason for using 1000+ records as tabular or grid is because its the way was on desktop application and user wants to mimic exactly as possible like
the functionality of multiselect records, shifting/presenting the columns and at last to do sorting.
Regards
Shaun
P.S. I posted question on your website regarding licensing.
|
|
|
Posts:
69
Registered:
05/21/97
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 5:03 PM
in response to: Shaun S
|
|
|
|
Hi Shaun
See the ExtJS website for [licencing details|http://www.extjs.com/products/license.php] .
My organisation purchased the product, as it's very cheap in the scheme of things.
Also I'm no lawyer on what GPL means, and getting legal advise would be more expensive than the cost to purchase.
Regards
Mark
|
|
|
Posts:
1,603
Registered:
01/10/01
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 8:02 PM
in response to: Mark Lancaster
|
 |
Helpful |
|
|
I can confirm that APEX 4.0 will include jQuery and jQuery UI as I was using it earlier today in prep for a customer. A number of the new features of 4.0 are built on jQuery and they are making extensive use of it in the builder. They've been pretty public with this direction, so a lot of the community examples are also moving in that direction (I have a few examples on my blog).
ExtJS is a great framework with some really sophisticated controls, but I just see the whole APEX community moving in the direction of jQuery. As Mark stated, they are not mutually exclusive, but I would definitely get familiar with jQuery as it's popularity is going to explode in this community when 4.0 comes out.
With that said, trying to mimic client-server on the web is a recipe for disaster. Tabular Forms are a prime example in my opinion (I rant against them often on this forum). Mark makes a great point about the 1,000+ records. I can tell you that no library will perform well with that many records. Imagine the potential for update collisions if those records are update-able (and about 100 other things wrong with that scenario).
Client-server and web architecture differs in some very key ways. Client-server apps maintain a persistent connection whereas web apps are stateless, with connections lasting only tenths of seconds. This difference is what drives a lot of the design patterns of the web and your client needs to understand that. Look to other popular web applications for good design patterns, not client-server.
The 2 design patterns that I think have the most potential to replace the dreaded tabular form are datagrids, like the ExtJS editor grid, and modal forms from a report. The ExtJS grid is probably the best one I've seen of any library. I've been using a modal form design pattern a lot in a current app in which you have a report on the page as well as a form inside a hidden div on the same page. When you click "New" or click on a row to edit, the modal dialog comes up with the form without going to a new page (it's not a true popup, just a div positioned over the page so it's really fast). Both of these design patterns have huge advantages over tabular forms such as only editing one row at a time so less chance of edit collisions, only one set of form items so large select lists aren't repeated for every row creating a massive page.
Hope this was helpful.
Tyler Muth
http://tylermuth.wordpress.com
|
|
|
Posts:
69
Registered:
05/21/97
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 8:13 PM
in response to: Tyler
|
|
|
Hi Tyler
Thanks for confirming that jQuery UI is in Apex 4.0.
Better start brushing up my jQuery knowledge
Mark
|
|
|
Posts:
24
Registered:
04/03/07
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 8:21 PM
in response to: Tyler
|
|
|
|
Out of curiosity, what will be the extent of Oracle support on jQuery when APEX 4.0 ships? Will it only ship with the core jQuery and jQuery UI libraries ro will it include other plugins? As bugfixes get released by the jQuery team, will those updates be supported by APEX 4.0 as well? I'm sure this has been addressed publicly, but I haven't seen it in the releases regarding APEX 4.0.
|
|
|
Posts:
1,603
Registered:
01/10/01
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 21, 2009 9:07 PM
in response to: Paul.Dunbar
|
|
|
I'm 99% sure there will not be many other plugins included with APEX. I know of one plugin because I did the integration work on it, but it's pretty minor. I don't think it's been through legal yet, so I'm going to mention which plugin.
As far as updates to jQuery getting back into APEX, I don't actually know the answer to this, nor do I think they've made any public announcements on it. Based on a number of factors, this is how I think it will work. Legal has to approve / license each specific version of jQuery they include, so there is a process involved beyond the technical requirements. Also, everytime time the APEX team wants to update jQuery, at a minimum they will have to run extensive regression tests that get x% code coverage. I actually went through this recently as I needed to get on the same version of jQuery that will ship with 4.0 (jQuery 1.3.2 for now) as legal had already approved / licensed that version. There were a number of cases in my code that broke simply by moving from jQuery 1.3.1 to 1.3.2. I'm sure they will update jQuery between major releases of APEX (4.0 to 5.0), but I'm just not sure about minor releases like 4.1 or 4.2.
One very smart decision they made (I believe it was Patrick Wolf and Anthony Rayner) was to namespace jQuery, jQuery UI and all of their custom functions. So instead of $(':input').toggle() you would reference apex(':input').toggle() (though I think the name is not "apex", can't remember). This means you're free to include newer version of jQuery with your app if you prefer and the name will not conflict.
Tyler Muth
http://tylermuth.wordpress.com
|
|
|
Posts:
26
Registered:
09/23/98
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Sep 22, 2009 5:22 AM
in response to: Tyler
|
|
|
Hi Tyler;
Thanks for the input.
The 1000+ records only do displaying in tabular and no DML for 1000+ rows. Then user select less than 100 records out of 1000+ records for next page/screen to do data manipulation each individually (Yes - I end up using apex collection)
Is any library or plugs-in with JQuery to get something like this http://www.extjs.com/deploy/dev/examples/grid/array-grid.html or have to build from scratch?
Shaun
|
|
|
Posts:
1,859
Registered:
04/21/07
|
|
|
Posts:
26
Registered:
09/23/98
|
|
|
Posts:
2,974
Registered:
01/10/01
|
|
|
|
Re: Frame work: ExtJS or JQuery?
Posted:
Oct 4, 2009 3:50 PM
in response to: Tyler
|
|
|
|
>> I'm 99% sure there will not be many other plugins included with APEX.
Actually, there are a number of jQuery plug-ins which will be included in Application Express 4.0. Let's wait until the official Early Adopter's version comes out before I dare publish the final list that we have licensed.
As far as updates to the jQuery library, we will approach this quite carefully. We will want to uptake fixes to bugs in the jQuery and jQuery UI libraries as they are made available, but typically in conjunction with a major (non-patch set) release. Most importantly, though, we want to do this without modifying prior functionality and behavior.
Joel
|
|
|
|
Legend
|
|
Guru : 2500
- 1000000
pts
|
|
Expert : 1000
- 2499
pts
|
|
Pro : 500
- 999
pts
|
|
Journeyman : 200
- 499
pts
|
|
Newbie : 0
- 199
pts
|
|
Oracle ACE Director
|
|
Oracle ACE Member
|
|
Oracle Employee ACE
|
|
Helpful Answer
(5 pts)
|
|
Correct Answer
(10 pts)
|
|