28

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-

  1. MV* philosophy of building applications
  2. building single-page applications
  3. 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.

ROMANIA_engineer
  • 54,432
  • 29
  • 203
  • 199
subh
  • 327
  • 1
  • 3
  • 6
  • @dparnas, there is already a tag for SAP UI5. This question, and *all* the other questions you've been adding it to, already have that tag. Please stop adding your new tag, as it will do nothing but cause confusion. – Charles Feb 04 '14 at 20:59
  • 3
    @charles I see your concern, but the situation is a bit more complex than it appears. You see sapui5 is an enterprise licensed framework which has been forked into openui5 which is an open-source licensed framework. The common denominator for them both is ui5. We're a group of people that want to help make it easier for people to pick up openui5 and to do we believe it's important to have a better separation between the two. sapui5 questions are typically handled at SAP's own community scn.sap.com, but openui5 questions will best handled at stackoverflow. – dparnas Feb 05 '14 at 06:19
  • @charles was not my intention to change many questions, just need a couple to inform other that this tag now existed (which it now no longer does). Perhaps the best is to use the tag openui5 and let developers tag based on the name they know the best. For sure there will be people that only know the openui5 name and not sapui5. Any more input? – dparnas Feb 05 '14 at 06:20
  • 1
    Using both sapui5 and openui5 tags will lead to dilution; with UI5 being both proprietary and open, with some going for one and others (eg open source developers) going for the other, but both of them sharing 95% of the technology), it makes sense to have a single tag. – qmacro Feb 05 '14 at 06:28
  • To prevent dilution, it's probably best to maintain a single tag for now. And when changes appear between the two, it will make sense to tag questions *specifically about* openui5 with a new tag for that product. But only when it actually applies. – Charles Feb 05 '14 at 07:07
  • Perhaps. And I understand the "single tag for now" approach (and I've edited the tag wiki to this effect). I suspect there will be a lot of crossover questions between sapui5 and openui5, and openui5 specific questions will be non-programming questions (more like licence-related or whatever), as the tech core is the same. That's where the idea of "ui5" as a single umbrella came from. – qmacro Feb 05 '14 at 08:19
  • @charles found another duplicate tag sapui http://stackoverflow.com/questions/tagged/sapui Could you delete it or make it a synonym to sapui5? – dparnas Feb 05 '14 at 18:11
  • @dparnas, I can *help* to retag, but synonyms require reputation in the source tag. There are currently *zero* users with enough rep to synonymize. I hate that. Once retagging is complete, the old tag will be automatically deleted. – Charles Feb 05 '14 at 18:20
  • 1
    @Charles: As qmacro already pointed out SAP UI5 and Open UI5 are almost identical. Therefore I would strongly prefer to use the single tag. Since the framework is most often refered to simply as UI5 this should imho be the common tag to use. – cschuff Feb 07 '14 at 10:40

1 Answers1

25

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.

qmacro
  • 3,025
  • 23
  • 33
  • Thanks DJ :) Actually that helped a lot. What i had intended to know was whats the fundamental difference between developing applications in SAPUI5 & say Backbone/Angular(with jQuery). Which is the most efficient way to approach for development (i know it depends on requirements-but some general pointers would be great!). I'm currently learning to build Backbone applications. Also i have to develop in SAPUI5. So wanted to get a heads up on which approach is better. I know SAPUI5 is used to build apps in SAP applications. But i don't want to get trapped in a single way of doing things. – subh Feb 04 '14 at 17:08
  • Hope that clarifies some part of it. – subh Feb 04 '14 at 17:09
  • 2
    It's going to be difficult to cover an answer to this in the remaining comments. In principle though the experience is going to be similar; perhaps it's fair to say that with Angular, Backbone etc you're closer to the metal (HTML) from the get-go, whereas with UI5 you have a choice of being close or staying away, using the abstract layer of controls. I'm no HTML5 guru but get along fine because I use UI5. And debugging is pretty pleasant (introspection, etc). My suggestion would be to have a go, look at TodoMVC (UI5 is on there) and compare. HTH. – qmacro Feb 04 '14 at 19:10