SAP UI5 versus other Javascript frameworks? [closed] - javascript

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
Just wanted to understand where does SAPUI5 stand as a framework.
(1)Is it like jQuery (library with host of utility functions, effects, animations etc)
or
(2)Is it like a MVC library like Backbone,Angular,Ember etc?
If 1, then how could it possibly supersede jQuery?
If 2, then what advantages & disadvantages would it have over these
other frameworks.
Apart from the fact that it's SAP's proprietary framework what really i would like to know is the principles & philosophy behind this framework, and how does it stand the test of time in front-end regarding-
MV* philosophy of building applications
building single-page applications
learning curve along with other frameworks like Backbone, Angular
(I mean if i learn SAPUI-5 does my learning curve for other
frameworks increase or decrease or how can it affect that)
And lastly can (if there is!) I create an ecosystem of SAPUI5 with other frameworks.

This is rather a large question that is in danger of having a very long answer, one which is also subject to opinion as well as fact. But I'll have a go.
First there's the "which toolkit" question. There's SAPUI5 which is the name of what the toolkit originally took (and still has), and this is subject to certain SAP licence restrictions. Since December 2013 there's also OpenUI5 which is the Open Sourced version of the same toolkit (minus a few things currently, but for the most part the same). And when people refer to UI5 they're collectively referring to both SAPUI5 and OpenUI5.
So while "SAPUI5" is proprietary, its sibling "OpenUI5" is very much Open Source.
UI5 is a full featured toolkit that includes, amongst other things:
MVC
data binding with support for JSON, XML and OData out of the box
module loading and management
support for component-based app creation
internationalisation (incl. RTL support)
routing
different libraries of controls e.g. rich desktop-specific controls in the sap.ui.commons and sap.ui.table namespaces, plus responsive controls for smartphone/tablet/desktop in the sap.m namespace (on which the SAP Fiori application suites are built)
To your question on jQuery - it uses jQuery and many other libraries, and builds upon them, so it's not a competitor for jQuery or a replacement for it. In fact, from personal experience, I'm not a jQuery expert but I build apps with UI5 just fine.
To your question on advantages and disadvantages vs other MV* frameworks, I don't think there's space in this answer to tackle such a wide-ranging question.
Not sure what you mean by standing the test of time regarding MV*; MVC has been around as a concept since almost the beginning of time, so I guess that has stood the test; UI5 is relatively young (2-3 years) so still has to prove itself in terms of years, but it's doing rather well so far if you consider the large scale of app development that's happening with it in the SAP world.
Learning curve? I'm traditionally a backend / integration developer and I picked up UI5 without too much bother. Difficult to answer the question without knowing your skillset and desire to embrace it.
Ecosystem inside SAPUI5? Not sure I understand that question.
Hope that helps a bit.

Related

ASP.NET Javascript frameworks now [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
Im new in Web development and i try to improve as much as possible in ASP.NET MVC. Right now Im looking for good javascripts frameworks, that I can use in my projects and I found two options :
angular - right now we waiting for version 2.0
knockout
Already I know how to use jquery, bootstrap and materialize.
Could someone help me, which one framework should I choose to learn right now? Is knockout still worth learning or should I learn 1.x angular version and wait for 2 or maybe should i learn another javascript framework?
Thanks for every answer!
A quick google search gave me this,
Angular.js is the front-runner of the JavaScript frameworks, and is one of the most popular JavaScript frameworks out there.
Angular.js was released in 2009 by Google, and no one would have guessed that it will become so popular in the near future. Angular.js gives the power in the hands of the programmer and lets them build single page web apps.
Backbone.js is minimalistic JavaScript frameworks that aim to provide the necessary backbone to a web application. The framework is open source in nature and is available under the MIT license.
React.js is one of the most popular front-end JavaScript framework.
Why Front-end? Becuase it can easily used to create the UI part of your project. In simple words, it acts as the V in MVC. The magic is achieved by using a virtual DOM and it can also be rendered on the server side with the help of the node.js.
Knockout is a MV (Model – View) Javascript Framework which specializes in easy declarative bindings, automatic UI updation (on change in the model state) as well as powerful templating features. Knockout is built on pure Javascript, without any external dependencies. It also happens to work on most browsers.
there are many other great names in this list,
First of all It all depends on your project requirements to use any framework
but for learning purpose i would suggest starting from jquery
You can start your learning from jquery and then you can extend it to Angular or Knockout these two are very much popular these days and are very helpful for developers.

Which forms of JavaScript for intermediate-level Rails developer, only dev on team? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am acting as web developer for a small startup, taking over as the only in-house developer to maintain and adapt the application that was initially put together by a team of contractors. I would consider myself to be at an intermediate level with Ruby on Rails. I know enough about front end technologies like HTML and CSS to use Bootstrap or Foundation effectively and write my own tweaks when necessary. However, I only can read the JavaScript code of other developers well enough to make small modifications to what's already in place.
I would like to become proficient in JavaScript to help round out my skillset but there seem to be a lot of JavaScript "options" out there and I'm not sure what's on the way in, what's on the way out, what's popular, what's most useful, easiest to start with, best fit for Rails applications and so forth. And by "options" I mean "regular" Javascript, jQuery, Node, Angular, etc etc.
In hopes that my question will meet SO terms as "answerable" I'd like to focus on the question of what kind of Javascript fits best with Rails and which technologies are the most generally relevant today (i.e. not on the way out of popularity already).
Your choice should depend on what you're doing. One case might be using Rails primarily on the back-end, pulling data from it, and then generating your markup and displaying content primarily on the front-end with JavaScript. In that case, you should look into a JavaScript framework like Ember.js or AngularJS. If you're going to be generating your markup primarily on the back-end with Rails, having that markup being pre-populated with content before being sent to the user, you might be better off using jQuery for DOM manipulation and the occasional AJAX request to your Rails back-end.
In the case you're looking for a framework: Yehuda Katz is a leading voice in the Ruby on Rails core team, and has a similar role inside of the Ember.js project. While this isn't strictly objective, I'd say that Ember is the JavaScript framework that most closely matches "The Rails Way". That said, any framework will integrate well if you're using Rails as a backend, and AngularJS is currently more popular and might be easier if you're looking for examples and helper libraries.
I'd like to point out that Ember is just a framework, just like jQuery is just a library. Knowing JavaScript from the bottom up is a very helpful thing when working with anyone's code. I highly recommend checking out the Learn JavaScript page on MDN, and maybe picking up a copy of JavaScript: the Good Parts by Douglas Crockford. The former has a bunch of free information about getting up to speed on JavaScript. The latter is a dense, and somewhat controversial book, but (in my opinion) is one of the best books about dealing with the language's rough edges.

Opa vs Dart vs Haxe vs CoffeeScript [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I've been googling for latest web apps, and found the following languages:
- Opa
- Dart
- Haxe
- CoffeeScript
Since these languages are new, there are not many information available.
Can anyone explain the advantages and disadvantages of these languages.
EDIT:
Which language is efficient?
What new features are available in each languages?
How can it improve existing languages like JavaScript?
Which will be easy to learn?
Opa
Functional programming
Pro: Run client, server, and database code in the same language
Con: Currently the least popular of these languages
Dart
Similar to Java/JavaScript
Pro: Can run client and server code in the same language (though in practice, this is not yet the best option)
Pro: In the future you will be able to run client code in the Dart VM in some browsers
Pro: Polymer MDV provides easy approach to encapsulation and re-use of components
Haxe
Similar to ActionScript
Pro: Mult-platform language: compile to other language/platforms besides for JavaScript (for instance, creating high-performance mobile games)
CoffeeScript
Similar to Ruby
Pro: Currently the most popular of these languages
Some features common to all the languages:
Compile to JavaScript
Interact with JavaScript code
I researched all of these for a project that never ended up happening. I never really got into CoffeeScript since it was less familiar to me given its Ruby flavor. Opa was very intriguing but I ultimately decided against it since it seemed to have a very small community, and I preferred something more class-based and object-oriented. I was familiar with Haxe already, having played around with it for a mobile game, but JavaScript didn't seem like a huge focus here: tutorials and samples were hard to come by.
With Dart, everything suddenly seemed to come together:
Given my Java/ActionScript/JavaScript background I knew the language before even writing a line of code
The WebUI (now Polymer) Model-Driven-View approach, provided a sane way to encapsulate and re-use components
A dedicated IDE (Dart Editor) that made debugging quick and easy
Pub package manager made it easy to quickly add 3rd-part libraries
Plenty of tutorials, articles, and documentation to help get me up to speed
Ultimately, you can build great web apps in any of these languages, but the one you choose will be influenced by your past experience. In my case, I was looking for a class-based, object-oriented solution, which made it between Haxe and Dart, and Dart was clearly the victor in terms of features, tooling, and support.

Best Interactive UI using JavaScript frameworks or simply html5 + pure javascript? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I will be working on a web application project that will be demanding a rich UI interactive & high performance website.
Interactive in every possible sense that could be shown. That includes various types of interaction in terms of keyboard events, animations, simple yet effective usability, drag and drop, lightweight (while loading and rendering) etc.
I know a bit of ExtJS (Sencha JavaScript Library), javascript and some html5 coding.
My question is
Do I need to mix up all possible available JavaScript UI framework (ExtJS, jQuery, MooTools, Prototype, Angular JS etc ... ) libraries to make rich interactive UI ? If yes, are there any sample demo for the same ?
If not, is my goal achievable by using only pure html5 and pure javascript ?
Jquery UI, CSS and HTML5 would be enough...if you are really an expert in javascript and enjoy playing with objects, json, events, then it shoudn't be that difficult...otherwise, you have to import loads of libraries which will end up in performance issue, scalability and manageability.
A good approach is to have one single JS file, and one single image on webpage for icons...that you adjust its x, y positions...you can play with animations, no need to use flash objects. ExtJS is no doubt a great library...Use one library, and chose the best which can fulfill all your requirements.
I hope this helps.
MooTools and Prototype actually do DOM alterations whereas jQuery works in its own namespace. I've been only projects that mixed both jQuery and Prototype. You just have to set jQuery to no conflict mode and it should they should fine together although I'd highly suggest using only one.
I'm partial to jQuery since it has a large userbase and jQuery UI has a lot of stock widgets to use as a base, but it really comes down to your own coding style and project needs.
Good luck!
Without knowing about your application, there is no way to know if it can be built using only client-side technologies. Most applications of any significant complexity require at least some server-side logic. Of course you could use node.js to handle this to only require use of javascript.
I would not recommend mixing multiple frameworks if you don't have to. If you do see a framework that you think meets most all of your needs (i.e,. jQuery UI, etc.) then go for it. I would probably recommend jQuery as your main framework however, as there is simply a lot more plug-ins, libraries, etc. that use it than there are for competing frameworks, and a much larger user base to get help from through places like StackOverflow.
I would not expect to find the magic bullet framework that exactly meets all your needs, but with some investment in learning jQuery, you will find it is VERY flexible and VERY powerful to meet most UI needs.
For very complex thick client apps (which it sounds like you are shooting for), I would be remiss not to point out the excellent Backbone.js and Underscore.js libraries. They make building complex javascript applications much easier and play nicely with jQuery.

RIA liblaries/framework in day-to-day development [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I need to develop quite simple web application with some Ajax functionality and GUI components with Java as a server-side language. The main purpose for me is to learn sth about designing web app that I can make use of when I start looking for a job ... .I ran into lots of framework (RAP, Nice JSF implementations etc.) and there are also GWT and JQuery . I started reading about GWT and it seems to be great at the beginning, but there are limited number of visual components. When You missed one it seems to be much harder to write it with GWT than in JavaScript/JQuery (e.g sortable components).
Also:
If JavaScript is is easy why to learn API to just make translation?
The main argument seems to be that GWT is for developers who don't
know Java Script very well, but is JS harder than GWT API and
configuration to work with?
GWT offers also very nice Remote Procedure Call and translating
objects to JS, but there are lots of libraries like DWR.
You need also to use standard servlet to e.g send file stream to a
user, so You need also to save it to a Database or as a hidden XHTML files to make them available to servlet.
So should I start to learn GWT? It is really wide spread? Or maybe JSF implementations with Ajax support outperforms GWT in usability? The biggest problem I have that I cannot imagine how to solve simple problems in GWT while they are almost complete solutions with JQuery. Mixing JavaScript native code with GWT don't seems to be a good option also.
When working with GWT, its always better to now whats going on behind. So you have to learn HTML, CSS and JavaScript as anyway. Maybe you can start with less knowledge on browser frontend technologies. But you will come to the point where you need to know whats going on.
So ask yourself. Is your app large enough that its worth to start with complex GWT app. Also if you're on a large team and familiar with JAVA, Maven and Junit it makes senses.
On the other hand there are a bunch of small (backbone.js with jquery), middle (mootools) or large (extjs) JavaScript frameworks to build RIA.
I've never work with JSF, but all people a meet that used it, wasn't really satisfied.
After all I dont think its a good idea to select a framework by the current feature set of your app. As this can change of the time, you will have to implement it later with a technologie you not familiar with.
Note there is a table sort library for GWT as well: http://code.google.com/p/gwt-advanced-table/
GWT contains several unique features which make it difficult to be compared with other frameworks. The key point is that GWT isn't just a framework or library -- it's a toolkit. Consider:
Ability to use Java IDE's and debugger during development
Automatic generation of compiled scripts optimized for different browsers
Benefits of java for organization of code-base: OOP, package system, checked exceptions, compile-time type-checking etc.
These features make GWT suitable for big projects built by large teams that should be enhanced and maintained over a large time-frame. Off course, many projects do not have such requirements and therefore developers should give more weight to other consideration like widget library and learning curve.

Categories